|
Oracle® Identity Management User Reference
10g Release 2 (10.1.2) B15883-01 |
|
![]() Previous |
![]() Next |
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:
Directory information tree (DIT)
Data consistency
Server manageability statistics
System and process information
If you use either the collect_all=true or the collect_sub=true arguments, you will be prompted to supply the following information:
The fully domain-qualified database host name
The database listener port number
The database service name
The ODS database user password
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 theORACLE_HOME environment variable before executing the OIDDIAG tool.
|
oiddiag {listdiags=true [targetfile=filename]} | {collect_all=true [outfile=filename]} | {collect_sub=true [infile=filename] [outfile=filename]}
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.
Using the Oracle Internet Directory diagnostic tool, you can perform the following tasks:
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
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
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