DB2 Version 9.7 for Linux, UNIX, and Windows

Collecting diagnostic information based on common outage problems

Diagnostic information can be gathered automatically in a first occurrence data collection (FODC) package as the problem that affects an instance, host, or member is occurring. The information in the FODC package can also be collected manually.

Automatic collection of diagnostic information

The database manager invokes the db2fodc command for automatic First Occurrence Data Capture (FODC), which in turn invokes one of the DB2® call-out scripts (COS).

To correlate the outage with the DB2 diagnostic logs and the other troubleshooting files, a diagnostic message is written to both the administration notification and the db2diag log files. The FODC package directory name includes the FODC_ prefix, the outage type, the timestamp when the FODC directory was created, and the member or partition number where the problem occurred. The FODC package description file is placed in the new FODC package directory.

Table 1. Automatic FODC types and packages
Package Description Invocation type Script executed
FODC_Trap_timestamp_memberNumber An instance wide trap has occurred Automatic db2cos_trap (.bat)
FODC_Panic_timestamp_memberNumber Engine detected an incoherence and decided not to continue Automatic db2cos_trap (.bat)
FODC_BadPage_timestamp_memberNumber A Bad Page has been detected Automatic db2cos_datacorruption (.bat)
FODC_DBMarkedBad_timestamp_memberNumber A database has been marked bad due to an error Automatic db2cos (.bat)
FODC_IndexError_timestamp_PID_EDUID_memberNumber An EDU wide index error occurred. Automatic db2cos_indexerror_short (.bat) or db2cos_indexerror_long (.bat)

Manual collection of diagnostic information

You use the db2fodc command manually when you suspect a problem is occurring. Problem scenarios that you can collect diagnostic data for include apparent system hangs, performance issues, or when an upgrade operation or instance creation did not complete as expected. When the db2fodc command is run manually, a new FODC package directory is created. The FODC package directory name includes the FODC_ prefix, the problem scenario, the timestamp when the FODC directory was created, and the member(s) or partition number(s) where FODC was performed.

Table 2. Manual FODC types and packages
Package Description Invocation type Script executed
FODC_Clp_timestamp_member User invoked db2fodc -clp to collect environment and configuration related information, used to troubleshoot problems related to instance creation. Manual db2cos_clp script(.bat)
FODC_Connections_timestamp_member User invoked db2fodc -connections to collect connection-related diagnostic data, used to diagnose problems such as sudden spikes in the number of applications in the executing or compiling state or new database connections being denied. Manual db2cos_threshold script(.bat)
FODC_Cpu_timestamp_member User invoked db2fodc -cpu to collect processor-related performance and diagnostic data, used to diagnose problems such as high processor utilization rates, a high number of running processes, or high processor wait times. Manual db2cos_threshold script(.bat)
FODC_Hang_timestamp_memberList User invoked db2fodc -hang to collect data for hang troubleshooting (or severe performance) Manual db2cos_hang (.bat)
FODC_Memory_timestamp_member User invoked db2fodc -memory to collect memory-related diagnostic data, used to diagnose problems such as no free memory available, swap space being used at a high rate, excessive paging or a suspected a memory leak. Manual db2cos_threshold script(.bat)
FODC_Perf_timestamp_memberList User invoked db2fodc -perf to collect data for performance troubleshooting Manual db2cos_perf (.bat)
FODC_Preupgrade_timestamp_member User invoked db2fodc -preupgrade to collect performance related information before a critical upgrade or update such as upgrading an instance or updating to the next fix pack Manual db2cos_preupgrade(.bat)
Scripts located in FODC_IndexError_timestamp_PID_EDUID_memberList

User could issue db2fodc -indexerror FODC_IndexError_directory [basic | full] (default is basic) to invoke the db2dart commands in the script(s).

On partitioned database environment, use db2_all "<<+node#< db2fodc -indexerror FODC_IndexError_directory [basic | full]". The node# is the last number in the FODC_IndexError_directory directory name. An absolute path is required when using db2fodc -indexerror with the db2_all command.

Manual db2cos_indexerror_long (.bat) or db2cos_indexerror_short (.bat)