User Defined Metric for default ALERT log directory

On our system we have moved the alert log to a non-default location. If we use the wrong initialization file or something else goes haywire then trace files and alert logs get placed in the $ORACLE_HOME/rdbms/log directory.
I want to create a user defined metric for each machine that will look in all the $ORACLE_HOME/rdbms/log directories for each ORACLE_HOME on the server checking for any alert*.log or *.trc files. Creating an alert if it encounters any of these files.
I don't know if I should do it as a host UDM or an instance UDM. And more to the point how do I get it to see the multiple homes if the server has more than one.
Any ideas would be appreciated.
Thanks
Tim

Well I did it with a host UDM calling a local script (which will be installed on shared drives for the development/test and production systems).
The local script cats the /var/opt/oracle/oratab file eliminating lines beginning with # or $ then takes the second argument of each line and loops through all entries using a checkit procedure. The checkit procedure determines if the appropriate log directores exist for the oracle home and does a find on the diretory looking for alert*.log and *.trc. If there are any then global variables get updated with the count and directory name.
There is an if statement before exit that checks of the count of files is greater than zero and write an appropriate em_result and em_message depending on the results.
I then created the UDM in EM to call this script and check for critical/warning thresholds.
Regards
Tim

Similar Messages

  • Problem creating user-defined metric for Database

    I am logged in to EM/Grid Control as SYSMAN, any user with superadmin privileges or a 'normal' user with operator/full privileges for my database target. When I go to set up user-defined metrics for the target db I get the following warning "You will only be able to view User Defined metrics because you do not have Operator Privileges on host <db target name>". The Create button is disabled.
    Can anyone offer any advise on where to identify the privilege problem?
    Thanks

    Well I did it with a host UDM calling a local script (which will be installed on shared drives for the development/test and production systems).
    The local script cats the /var/opt/oracle/oratab file eliminating lines beginning with # or $ then takes the second argument of each line and loops through all entries using a checkit procedure. The checkit procedure determines if the appropriate log directores exist for the oracle home and does a find on the diretory looking for alert*.log and *.trc. If there are any then global variables get updated with the count and directory name.
    There is an if statement before exit that checks of the count of files is greater than zero and write an appropriate em_result and em_message depending on the results.
    I then created the UDM in EM to call this script and check for critical/warning thresholds.
    Regards
    Tim

  • How to create user defined metrics for SQL Server target?

    The customer is not able to create a user defined metrics for SQL Server target.
    This is very important for him to use this product.
    He is asking how to create user defined metrics?
    I sent him Note 304952.1 How to Create a User-Defined SQL Metric in EM 10g Grid Control
    But it would work for an Oracle DB, but his target is SQL Server DB
    Not able to find the "User-Defined Metrics" link from Database home page.
    How to create user defined metrics for SQL Server target?

    http://download-uk.oracle.com/docs/cd/B14099_19/manage.1012/b16241/Monitoring.htm

  • User defined metrics for alert log errors

    I want to create UDM for getting the full description of alert log ORA -  error to be reported via E-mail.  Can somebody guide me or help me withe script which can be used to create this alert.  Currently, We get the only the message of  that error is generated; which request us to manually check the alert to log to figure out the error.

    Hi,
    what metric did you use and what is the database version.
    There are metrics related to alert log errors but those which have status at the end of a name return number of errors
    and w/o status provide error description:
    11g
    Generic Incident - error message
    Generic Incident Status - number of errors
    10g
    Generic Alert Log Error - error message
    Generic Alert Log Error Status - number of errors
    Did you set Generic Incident or Generic Alert Log Error? If description is not enough
    you might use UDM but it would be easier for 11g since there are internal views which
    have access to ADR, for 10g it will be required to build additional procedure (to open and read alert log)

  • Calling a user defined function as default value for a column

    Hi All
    Can we call a user defined function as default value for a column ??
    for example:
    create or replace  function test1  return number is
    begin
    return 10;
    end;
    create table testt
    (id  as test1,
      name varchar2(20));
    getting error:
    Error at line 1
    ORA-02000: missing ( keywordThanks
    Ashwani
    Edited by: Ashwani on Jan 16, 2012 1:19 AM

    Hi;
    For your issue i suggest close your thread here as changing thread status to answered and move it to Forum Home » Database » SQL and PL/SQL which you can get more quick response
    Regard
    Helios

  • Settinggs for Generic Alert Log Metric, OEM GC 10204

    OS: AIX Grid Control Version: 10204
    Agent:10204, Repository DB:10204
    This is the setting on a 9208 DB I was testing for Generic Alert Log Error Metric (I had to change [ (square bracket with { curly brackets on the post).
    Warning Metric: ORA-*
    Critical Metric: ORA-0*(60{0-9}|1157|1562|1628|1650|1653|1654|1655|1656|4031|7445|16014|29740){^0-9}
    The Warning metric (ORA-*) is set to a catch all else if not found in the critical metric. Not sure if there's an order the warning vs critical is read, but so far this has worked for our purposes.
    In GC 10204, we can add an ORA- error to the 'Alert Log Filter Expresion' and this would prevent a metric from being sent out if matched, so if there's a particular ORA-0600 error we do not want to be sent out as critical, we could add it to to the filter to be ignored. In the Advance Setting GC example , we want to ignore "ORA-00600: internal error code, arguments {qerfxFetch_01}, {}, {}, {}, {}, {}, {}" , so we would added it to the filter as ".*ORA-00600:.*\{qerfxFetch{^\}}*\}.*"
    My question - Instead of ignoring the error "ORA-00600: internal error code, arguments {qerfxFetch_01}, {}, {}, {}, {}, {}, {}", I want to move it to be a Warning, can anyone suggest any way of doing this? I've tried adding to the Warning metric {.*ORA-00600:.*\{qerfxFetch{^\}}*\}.*}|ORA-*, but this does not work, as the alert still comes out as a critical.
    All suggestions are welcome.

    Hi,
    You did not mention database version. in 11g, the generic alert log metric will not work. For 10g, you can set this from metrics and policy settings page bu setting warning and critical thresholds for this metric to "ORA-*". And then create a notification rule for this metric.
    For 11g, you need to check MOS note 949858.1
    Salman

  • SQL Statement Works In sqlplus, Not Grid Ctl For User Defined Metric

    I'm trying these queries:
    Query 1:
    select '0', '0' from dual
    union
    SELECT
    to_char(d.sid),
    to_char(d.serial#)
    FROM v$sql a,
    dba_Users c,
    v$session d
    WHERE
    c.Username = 'SYSADM'
    AND (a.Elapsed_Time * 0.000001 > 5
    OR a.Executions > 1000)
    AND a.Executions > 0
    AND c.User_Id = a.ParSing_User_Id
    AND (Round(a.Elapsed_Time * 0.000001 / a.Executions)) > 10
    AND a.last_active_time > (sysdate - 1)
    and a.sql_id = d.sql_id
    Query 2:
    select 0, 0 from dual
    union
    SELECT
    d.sid,
    d.serial#
    FROM v$sql a,
    dba_Users c,
    v$session d
    WHERE
    c.Username = 'SYSADM'
    AND (a.Elapsed_Time * 0.000001 > 5
    OR a.Executions > 1000)
    AND a.Executions > 0
    AND c.User_Id = a.ParSing_User_Id
    AND (Round(a.Elapsed_Time * 0.000001 / a.Executions)) > 10
    AND a.last_active_time > (sysdate - 1)
    and a.sql_id = d.sql_id
    As you can see, Query 1 is selecting character results, Query 2 is selecting numerical results. Both work from sqlplus on the host. Trying to run either of them in a user defined metric in Grid Control returns: ORA-00918: column ambiguously defined
    1. Why is the error returned in Grid Control?
    2. Is there a way to see exactly which column Grid Control has the issue with?

    Never mind, I got it.

  • User Defined Metric and Notification rules

    I've created a user defined metric to list the age of my backups. My warning is set to 24 hours and my critical threshold is set to 48 hours. The metric is working fine.
    I want to be alerted if the metric goes critical for e.g.. When I go to Notification rules, under metric i don't see my user defined metric. This is GC 10g R2 10.2.0.2.
    Anyone has seen this?
    Thanks.

    You have to create notification template according to your requirements and define respective metrice with required threshold values.

  • 10g EM Creating User-Defined Metrics

    I am trying to create some user-defined metrics to get a threshold for our ASM disk group used space percentage, archiving used space percentage, and so on.
    I have read the article 'System Monitoring Using Oracle Enterprise Manager 10g Release 2' on link of http://www.oracle.com/technology/obe/obe10gemgc/monitoring/monitoring.html. It has a screen shot for Related Link of User-Defined Metrics, but I don't have it on my 10g EM (which is version 10.2.0.2).
    I would like to know if any one have any idea telling where I can find it?

    You create User Defined Metrics (UDM) by selecting the User Defined Metrics link on the Database page. The type of UDM you create will dpend on what result you are expecting. For instnace, you want to be alerted when the balance on an account falls below zero (overdraft). So you can use an SQL query that returns a number which is checked against the threshold you set.

  • Environment variables in a OS User-Defined Metric Page

    I'm creating an OS-based User-Defined Metric in a Grid Control through a perl script
    How can I pass my own environment variables in the script setting the User-Interface Element- Environment, where for example i can specify var1=%perlBin% var2=%scriptsDir% etc ?
    The description in the User-Defined Metric Page says:
    Environment
    See Available Properties box for values you can assign to environment variables. Enter as space-separated list: var1=prop1 var2=prop2
    -r
    Josh

    That's exactly correct, you can specify them in the Environment field as defined here:
    Table 15-3 Create User-Defined Metric Page: Definition
    User-Interface Element      Description
    Metric Name
    Metric name identifying the user-defined metric in the Enterprise Manager user interface. This name must be unique for all User-Defined Metrics created on that host.
    Metric Type
    Type of the value returned by the user-defined script. Choose "NUMBER" if your script returns a number. Choose "STRING" if your script returns an alphanumeric text string.
    Command Line
    Enter the complete command line entry required to execute the user-defined script. You must enter the full command path as well as full path to the script location. For example, to run a Perl script, you might enter something like the following in the Command Line entry field:
    /u1/bin/perl /u1/scripts/myScript.pl
    The content of the Command Line is passed as a literal string, so you may use any syntax, special characters, or parameters allowed by your operating system.
    Environment
    Optional. Enter any environmental variable(s) required to run the user-defined script. A list of predefined properties that can be passed to your script as variables is listed in the Available Properties box. You may also specify your own environment variables. Multiple variables can be defined as a space-separated list.
    Example: If your script uses three variables (var1, var2, var3) where var1 is the location of the Perl directory (predefined), var2 is the directory where your Perl scripts are stored (predefined), and var3 is an Oracle home, your entry in the Environment text entry field would appear as follows:
    var1=%perlBin% var2=%scriptsDir% var3=/u1/orahome10
    For example, simply set var1=/this/is/the/directory/i/want/to/have/set/in/var1
    then var1 will be /this/is/the/directory/i/want/to/have/set/in/var1

  • Does SQL Server agent/IIS plugin support User-Defined metrics?

    Hi,
    Does anyone know if there is a way to add a user-defined metric that connects to a SQL Server database?
    Thanks

    Recently, I released a full MySQL plug-in, for example - http://www.pythian.com/blogs/mysql-plug-in-for-oracle-grid-control
    For me it's not very difficult but it takes some time to get used to.
    I did presentations on creating Management plug-ins and couple articles in IOUG SELECT Magazine. The latest presentation and whitepaper is here - http://www.pythian.com/blogs/466/ioug-collaborate-07-oracle-10g-grid-control
    Official extensibility guide has much more details and is priceless reference but, still, not everything is documented there.

  • User-Defined Metric: Number Format

    Hi,
    I created an User-Defined Metric, but the result of my SQl command is a little bit strange.
    select sid,min
      from (select username,
                   osuser,
                   machine,
                   sid,
                   serial#,
                   round(last_call_et/60) min,
                   module
              from v$session s
             where username is not null
               and machine like (select machine || '_%' from v$session where sid = 1)
               and last_call_et>(120*60)
               and status='ACTIVE'
               and lockwait is null
             union
            select username,
                   osuser,
                   machine,
                   sid,
                   serial#,
                   round(last_call_et/60) min,
                   module
              from v$session s
             where username is not null
               and machine not like (select machine || '_%' from v$session where sid = 1)
               and last_call_et>(480*60)
               and status='ACTIVE'
               and lockwait is null) sess
    where nvl(sess.module,'any') not in ('XDP_Q_EVENT_SVC','XDP_Q_IN_MSG_SVC')
    ;and my result:
    Key             Value
    32.000000     1,222
    40.000000     1,186
    73.000000     1,194
    410.000000     1,190
    2115.000000     2,178
    400.000000     1,224
    1766.000000     1,220How can I modify my SELECT statement that the Key values don't contain the 0 and the point?
    So I would like this format:
    Key     Value
    32     1,222
    40     1,186
    73     1,194
    4100     1,190
    2115     2,178
    400     1,224
    1766     1,220

    In case anyone else is looking for this answer - at least what worked for us.
    It seems Oracle is parsing the "select TO_CHAR(SID,'99999'), other_column from ...." by comma instead of by what the output is coming back with. So in this case it thinks the output has three columns because of the two commas in the select clause. So we just went with an inline view similar to select a.sid, a.other_column from (select TO_CHAR(SID,'99999'), other_column from .... ) a and that worked for us. Assuming its a version thing since the non-inline view worked for someone else. We're on 11.1 of the oms.

  • Is it possible to create user defined metrics in Grid Control 10.2.0.1 ?

    Hi,
    Is it possible to create user defined metrics(my SQL statement) in Grid Control 10.2.0.1
    (not 10.2.0.3) Linux/AIX ?
    Łukasz

    I am not sure if I am correct, but for reasons best known to them, Oracle replaced rather than add.
    Even if you want to do a smart search using the part# (e.g B16242-03) in oracle.com, you get a whole list of results, but when you click on them, you get http://www.oracle.com/errors/404.html
    I found this copy http://www.oracle.polcreate.pl/em.102/b16242/toc.htm

  • User Defined metric getting deleted

    Hi,
    We are running Oracle 10.2.0.5 Enterprise Manager and we have one of the database running Oracle 11.2.0.3. I created a User defined metric and every time I create it gets deleted and the rule fails. Can someone please let me know where to check which process is deleting the user defined metric?

    What you are trying to di is certainly possible.
    You need however to create a Plugin for this. By creating a Plugin you will be able to create a "Custom" target type, which allows you to display and use it in the OEM Console just like all other targets.
    Check http://www.oracle.com/technetwork/oem/extensions/index.html for more information on how to do this.
    Regards
    Rob
    http://oemgc.wordpress.com

  • Prevented from creating User Defined Metric

    I am using Oracle Enterprise Manager 10g Database Control.
    When I try to create a User Defined Metric I get a screen that says:
    Information:
    You cannot create a User Defined Metric because host <my_host> is currently unavailable. Try again later when it becomes available.
    I cannot find any information on how to resolve this.

    In case anyone else is looking for this answer - at least what worked for us.
    It seems Oracle is parsing the "select TO_CHAR(SID,'99999'), other_column from ...." by comma instead of by what the output is coming back with. So in this case it thinks the output has three columns because of the two commas in the select clause. So we just went with an inline view similar to select a.sid, a.other_column from (select TO_CHAR(SID,'99999'), other_column from .... ) a and that worked for us. Assuming its a version thing since the non-inline view worked for someone else. We're on 11.1 of the oms.

Maybe you are looking for