I’m studying Oracle 11g. Gots to keep up on the latest…

The venerable oracle alert log, long housed in the bdump directory, has undergone a major facelift and is now part of Automatic Diagnostic Repository (ADR). Oracle now has wayyy too many 3 and 4 letter abbreviations. ADR imposes a unified set of directories across all Oracle products, not just database. The xml file format is consistent across products, and so is the tool set needed to parse the xml file. A new init.ora parameter called diagnostic_dest controls the location of these directories. Then a whole mess of directories get created beneath that according to the pattern: ADR_base/diag/product_type/product_id/instance_id — so if you had installed the Oracle database software and had a RAC database with two instances, and the ADR_base was /u01/app/oracle, you would get

/u01/app/oracle/diag/rdbms/racname/node1 AND /u01/app/oracle/diag/rdbms//racname/node2.

And beneath each node directory you would find:

alert cdump hm incident incpkg ir lck metadata stage sweep trace

There’s new stuff getting tracked: incidents and problems. A critical error is a problem and each time it occurs is an incident.

You view all this stuff with a new command line tool, adrci. This command was made to be scripted, so probably most DBAs will end up making a few helper shell scripts to reduce typing long adrci commands. Or maybe not. Viewing the alert log was a matter of doing the following:

$ adrci

ADRCI: Release – Beta on Mon Jun 2 22:38:36 2008

Copyright (c) 1982, 2007, Oracle. All rights reserved.

ADR base = “/u01/app/oracle”
adrci> show alert
Choose the alert log from the following homes to view:

1: diag/clients/user_unknown/host_411310321_11
2: diag/clients/user_oracle/host_61728193_11
3: diag/rdbms/orcl/orcl
4: diag/tnslsnr/localhost/listener
Q: to quit

Then you type 3…of course you need to know that 3 is rdbms is your database alert log…

Oddly, the text-only alert log is still around, but it’s now in the trace directory within the diag sub-directory tree.

Lastly, adrci has a set of commands starting with “ips” which incident packaging. From the adrci prompt, you can issue ips commands to create zip files stuffed with trace data to ship off to Oracle support when bad things happen. This promises to streamline the information gathering process many a DBA has suffered through.