Skip Headers
Oracle® Identity Management User Reference
10g Release 2 (10.1.2)
B15883-01
  Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index

Previous
Previous
Next
Next
 

2.4 oiddiag

The Oracle Internet Directory Server Diagnostic command-line tool (oiddiag) collects diagnostic information that helps triage issues reported on Oracle Internet Directory. The tool connects to the database used as the directory store (also called Metadata Repository) of Oracle Internet Directory and reads the information. The tool makes no recommendations on potential fixes to issues. Rather, it collects information to help Support and Development understand a problem and determine its solution. The tool can collect four types of diagnostic information:

If you use either the collect_all=true or the collect_sub=true arguments, you will be prompted to supply the following information:

You can find the hostname, port number and service name in the file tnsnames.ora. For example, in the following tnsnames.ora file, the hostname, port number and service names are, respectively, sun16.us.oracle.com, 1521, and orcl.us.oracle.com:

 ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = sun16.us.oracle.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.us.oracle.com)
    )
  )


Note:

You must set the ORACLE_HOME environment variable before executing the OIDDIAG tool.

2.4.1 Syntax for oiddiag

oiddiag {listdiags=true [targetfile=filename]} | {collect_all=true [outfile=filename]} | {collect_sub=true [infile=filename] [outfile=filename]} 

2.4.2 Arguments for oiddiag

listdiags=true

Writes a list of available diagnostics that can be collected. The list is written to an output file, which is $ORACLE_HOME/ldap/log/oiddiag.txt by default. You should run a listdiags command before running a collect_sub command. The collect_sub command uses the file that is output by listdiags. You can edit this file as needed to contain only the diagnostic items you want.

targetfile=filename

This is the location of the output file where the diagnostic tool writes the list of available diagnostics when listdiags=true is given. If not specified, the tool writes the list to $ORACLE_HOME/ldap/log/oiddiag.txt.

collect_all=true

Collect all of the diagnostic information available and writes it to an output file. You will be prompted to provide the Oracle Internet Directory database host name, listener port, net service name, and password.

outfile=filename

The name of the output file that the diagnostic information is written to. If not specified, the default output file is written to $ORACLE_HOME/ldap/log/oiddiagtimestamp.log. The timestamp format is YYYYMMDDHHmmss.

collect_sub=true

Collects a subset of diagnostic information (based on the diagnostics specified in the input file) and writes it to an output file. You will be prompted to provide the Oracle Internet Directory database host name, listener port, net service name, and password.

You should run a listdiags command before running a collect_sub command. The collect_sub command uses the file that is output by listdiags. You can edit this file as needed to contain only the diagnostic items you want.

infile=filename

A file that contains the list of diagnostic items for which you want to output information. By default, the diagnostic tool looks for this file in $ORACLE_HOME/ldap/log/oiddiag.txt, which is the default target file location of the listdiags command. You can edit this file as needed to contain only the diagnostic items you want.

2.4.3 Tasks and Examples for oiddiag

Using the Oracle Internet Directory diagnostic tool, you can perform the following tasks:

2.4.3.1 Collecting All Diagnostic Information

The following example shows how to collect all available diagnostic information and write it to the specified output file.

Example:

oiddiag collect_all=true output=~/myfiles/oid.log

2.4.3.2 Collecting Selected Diagnostic Information

To collect a subset of diagnostic data, you must first run the oiddiag tool with the listdiags argument. This outputs a list of available diagnostics, which you can then edit. This list is then passed in to the collect_sub command to determine the diagnostics for which to collect output. The following example uses the default file locations of $ORACLE_HOME/ldap/log/oiddiag.txt (for the list) and $ORACLE_HOME/ldap/log/oiddiagtimestamp.log (for the output file).

Example:

oiddiag listdiags
oiddiag collect_sub

2.4.3.3 Collecting Stack Trace Information

An important type of information that the oiddiag tool collects is the stack trace data for Oracle Internet Directory processes. Examining the stack trace is useful if you are experiencing slow response times or if your system stops responding. Because Oracle Internet Directory is usually started as a setuid-root program, you must log in as the root user before you can use the oiddiag tool to trace the stack for any Oracle Internet Directory processes. The root user must belong to the same operating system group that the Oracle operating system user belongs to. The following example logs in as the root user and changes to the dba group before executing the oiddiag tool:

su
newgrp dba
oiddiag collect_all=true