In early version of oracle, When ever critical error such as code bug , data corruption occur end user need to collect diagnostic data such as process dump , data structure dump etc. In oracle 11g database end user need to worry about what kind of dump need to collect , need not to search trace file which need to send to Oracle Support Oracle 11g Databaseproactively collect ,tagged and store diagnostic data in file based repository known as ADR. 11g used file based repository because even your database is down, you have diagnostic data to send to oracle support.

Note : ADR_HOME is user define variable , I have define this variable make life easier

if ORACLE_BASE is set in environment then DIAGNOSTIC_DEST is set to $ORACLE_BASE

In 11galert file is saved in 2 location, one is in alertdirectory ( in XML format) and old style alert file in trace directory. Within ADR base, there can be many ADR homes, where each ADR home is the root directory for all diagnostic data for a particular instance. The location of an ADR home for a database is shown on the above graphic.

Note :- I have created on environment variable ADR_HOME= . I am using same in all my this document

Change Retention

adrci> set control (SHORTP_POLICY = 360 )adrci> set control (LONGP_POLICY = 4380 )

Automatic Diagnostic Repository (ADRCI)

Oracle 11g introduce new tool/utility called ADRCIknown as ADR command line tool. This toolallow user to interact with ADR ,check alert log, check health monitor(HM) status , create reporton HM, Package incident and problem information into a zip file for send to Oracle Support. etc.No username/password need to log in to ADRCI, ADRCI interact with file system and ADR datais secured only by operating system permissions on the ADR directories.[Click Here for Oracle Documenation on adrci]

Incident

Incident is single occurrence ofproblem , each incident is identified by unique number called incident id ,which is unique in ADR home, all incident data stored in ADR. Each incident has a problem key and ismapped to a single problem. When error occurred backup ground process make entry in alert.log andcollect data about incident (like process dump, data structure dump etc)

If similar incident happen more frequently , oracle will not collect data for all incidentBy default only five dumps per hour for a given problem are allowed for single given problem andthis call flood control in 11g , some time you see "flood control" messages in alert.log / log.xml.Incident can be created as manual as well, if needed.

IPS ( Incident package service )

DBA need not search trace , dump etc relatedparticular error, to sent it to oracle support. In ADRdiagnostic data are tagged with incident id and IPS identified trace and dump for particular incidentand allow end user to create package from ADR to send to Oracle Support. Using IPS end user canadd some more file to package if needed.

Health Monitor (HM)

Health Monitor run diagnostic checks on various components of the database. Health Monitor checksexamine various components of the database, including files, memory, transaction integrity, metadata,and process usage. In order to collect more data after critical error (incident) , oracle invoke healthmonitoring implicitly. If need end-user can also run health monitoring procedure manually

Create HM Report

adrci>>CREATE REPORT HM_RUN HM_RUN_21

You can create and view Health Monitor checker reports using the ADRCI utility. Makesure that Oracle environment variables are set properly, The ADRCI utility starts and displays its prompt as shown above.You then enter the SHOW HM_RUN command to list all the checker runs registered in the ADR repository. Locate the checker run for which you want to create a report and note the checker run name using the corresponding RUN_NAME field. you can generate the report using the CREATE REPORT HM_RUN command. You view the report using the SHOW REPORT HM_RUN command or by running dbms_hm.get_run_report on sql prompt

View HM generated reports on SQL prompt

SQL> set long 1000000SQL> select dbms_hm.get_run_report('HM_RUN_21') from dual;

Disclaimer

DisclaimerIt is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

The views expressed are my own and not necessarily those of my current or past employer. The views and opinions expressed by visitors to this blog are theirs and do not necessarily reflect mine