9 Replies Latest reply on Feb 19, 2016 2:49 PM by Bill Robinson

    Using wildcards in compliance jobs

    Abdallah Humaid

      I am trying to run a compliance job against multiple oracle databases listener.ora settings on multiple hosts. The issue I have is that the file location is variable between the hosts in the form /oracle/INSTANCE_NAME/VERNO/network/admin/ and I have multiple oracle instances on the same server (i.e. symbolic link is not an option). One parameter I am running compliancde against is the port number. I want to validtate that the listener is not set to value X. 


      Has anyone done something similar?

        • 1. Using wildcards in compliance jobs

          Per your first question re the the file location, in case you know the specific location for each target host you can add a property to the server calss with name INSTANCE_NAME and use the part with next format: /oracle/??INSTANCE_NAME??/VERNO/network/admin/. The compliance job will evaluate the rule with the specific value of ??INSTANCE_NAME?? for the relevant target which is evaluated.


          For the port number question, in case it is a specific field recognized by BladeLogic (like name), than you can use wildcard i - see next example in case you want to check all the instances which a configuration file has. The rule as of next format:

          "Configuration File Entry:/C/Windows/system32/drivers/etc/hosts//*".Name = "df"

          and the results will check the compliance on allthe instances inside the configuration file. In the specicif case there were only two instances:

          "Configuration File Entry:/C/Windows/system32/drivers/etc/hosts//".Name [""] = "df"

          "Configuration File Entry:/C/Windows/system32/drivers/etc/hosts//".Name [""] = "df"


          It is a general answer, if it is in the right direction and you can adda specific rule, I can try to help you create the rule you need.





          1 of 1 people found this helpful
          • 2. Using wildcards in compliance jobs
            Abdallah Humaid

            Thanks, this could be helpful in other cases but there is an issue in this scenario;

            The instance name is variable on a single server. I have one server that has 5 oracle instances and two versions. 

            • 3. Using wildcards in compliance jobs

              If you'll send and example, I can try to help with generating the rule (I don't know how you define the oracle instance asset).

              • 4. Re: Using wildcards in compliance jobs
                Gerardo Bartoccini

                Provided that istance names and ports are known in advance,

                you can create property instances.

                When you discover the template, a new component will be created for each instance and you will be able to evaluate compliance rules for each instance.


                Let me give you an example:



                ORAINST1, PORTX

                ORAINST2, PORTY

                ORAINST3, PORTZ


                ORAINST4, PORTW


                You need to create 4 property instances, say ORA1, ORA2, ORA3, ORA4.

                First instance will have INSTANCE_NAME=ORAINST1 and LISTENER_PORT=PORTX and so on.


                When you discover the template the following components will be created:


                Server1 – Template_Name [ORA1]

                Server1 – Template_Name [ORA2]

                Server1 – Template_Name [ORA3]

                Server2 – Template_Name [ORA4]


                When you run the compliance job against your 4 components, the properties will be evaluated against corresponding components with correct Oracle instance name and listener port.


                The only issue is that in order to automate this, you need to include the oracle instance name in the template discovery rule.

                Discovery rule will create a component for a specific property instance if the rule matches.

                Not sure how to achieve this. For instance, you could create an empty text file for each Oracle instance which the discovery job could use.

                • 5. Using wildcards in compliance jobs

                  Hi torches,


                  as you can find on the "BMCBladeLogicUserGuide.pdf" there are multiple wildcards:


                  * Match multiple characters including zero-length strings. This pattern does not match a separator character in a path, such as /.


                  ** Match multiple characters, including path separator characters. Using this wild card allows a path to recurse through lower directories.


                  ? Match any single character.


                  [character sequence] Match any single character if it is included in the bracketed characters. A range of characters can be specified using a hyphen between the start and end of the range, such as [a-z].


                  You can also combine multiple wildcards like this: [Ww]?? which could be: "Web" or "win" but not "windows" or stuff like this. In your case, I would try: /oracle/*/*/network/admin/




                  1 of 1 people found this helpful
                  • 6. Using wildcards in compliance jobs

                    Can wildcards work with registry paths? I'm trying to check on the screensaver values of

                    HKEY_USERS\.DEFAULT\Control Panel\Desktop\ScreenSaveActive=1

                    but want it to check the following:

                    HKEY_USERS\**\Control Panel\Desktop\ScreenSaveActive=1


                    I've tried * and ** and both produce a rule failure, but they only check for the existence of the entry



                    "Registry Value:HKEY_USERS\*\Control Panel\Desktop\ScreenSaveActive"."Integer Value (Windows)" = 1

                    and I get failure:

                    "Registry Value:HKEY_USERS\*\Control Panel\Desktop\ScreenSaveActive" exists


                    There are several settings within HKEY_USERS where this setting exists and has the value 1.


                    Pls, what am i not seeing?

                    • 7. Using wildcards in compliance jobs

                      NM - found the EO suggestion from "How to wildcard a Registry Value Part?" - PERFECT!

                      • 8. Re: Using wildcards in compliance jobs
                        S Crawford

                        What does the '@' wildcard mean?  Such as the ones that can be chosen in the compliance rules:


                        @"Value2 as String (All OS)"@

                        • 9. Re: Using wildcards in compliance jobs
                          Bill Robinson

                          it indicates a dynamic value.  so for example you could have a rule like:


                          @value1 as string@ equals @value2 as string@


                          in the evaluation of an eo or cfo.  prior to 8.6 the right hand side could not handle that.