News, How-to's, and More SolarisCAT

Friday Aug 28, 2009

Though the Solaris Crash Analysis Tool (CAT) script scat_explore has existed in prior releases of the Solaris CAT, release 5.1and now 5.2 includes a stand-alone mode that allows users to extract crash data without having to run Solaris CAT first as well as a send_scat_explore feature which automates the process of data collection and transmits that data to Sun.  The following is a description of how to use send_scat_explore usage and how to run scat_explore in "stand-alone" mode.

send_scat_explore

Sending crash data to Sun requires an open Sun Service Request (SR). Once a valid SR is open, the customer can then run /opt/SUNWscat/bin/send_scat_explore to send the crash data.

send_scat_explore usage is as follows:

send_scat_explore [-n sr_number] [-e email] [unix.x] vmcore.x

    Where:

        * -n sr_number - sets the Sun Service Request number
        * -e email          - sets the reply-to email address that Sun
                                   should use to acknowledge the receipt of the
                                   data.
        * [unix.x] vmcore.x - the crash dump from which crash data should
                                   be gathered. Please note that unix.X need not
                                   be supplied and the core number, X, can be
                                   specified with or without the vmcore. prefix.

If the above -n and -e options are not specified, the user is prompted for Sun SR number and reply-to address.

Note that if the reply-to address is not specified on the command line, send_scat_explore looks to see if a reply-to address has been saved in the Sun Explorer configuration and it will offer that address as a response, see the example below.

Example 1: Using send_scat_explore without options:

#/opt/SUNWscat/bin/send_scat_explore vmcore.0
   Found a reply address in Sun Explorer settings...
   Email address for replies? [someone@a.com]: me@a.com
   Sun Service Request number: XXXXXXXX
   Collecting scat_explore from core file instance 0...
   #Extracting crash data...
   #Successful extraction
   Sending scat_explorer data file ./oomph_1775b1b7_0xf93_vmcore.0 for SR 51234567 to dreap@sun.com...


Example 2: Using send_scat_explore with command line options:

# /opt/SUNWscat/bin/send_scat_explore -n XXXXXXXX -e me@a.com vmcore.0
  Collecting scat_explore from core file instance 0...
  #Extracting crash data...
  #Successful extraction
  Sending scat_explorer data file ./oomph_1775b1b7_0xf93_vmcore.0 for SR XXXXXXXX to dreap@sun.com...


scat_explore

scat_explore is a script included with Solaris CAT which extracts crash data from a crash dump.  When the --scat_explore option is issued to Solaris CAT, the crash dump is opened and scat_explore is run. The collected crash data is saved in a directory with the crash dump and the  directory name is displayed. scat_explore also saves a compressed tar archive of the crash data in this directory.
The scat_explores usage is:
scat --scat_explore [-v] [-a] [-d dest] [unix.N] [vmcore.]N
Where:


-v Verbose Mode: The command will print messages highlighting what it's doing.
-a Auto Mode: The command does not prompt for input from the user as it runs.
-d dest Instructs scat_explore to save it's output in the directory dest instead of the present working directory.
N The number of the crash dump. Specifying unix.N vmcore.N is optional and not required.

Example:

$ scat --scat_explore -a -v 0
#Output directory: ./scat_explore_ebsmro2_808cc87b_0xde2d09d_vmcore.0
#Tar filename:     scat_explore_ebsmro2_808cc87b_0xde2d09d_vmcore.0.tar
#Extracting crash data...
#Gathering standard crash data collections...
#Panic string indicates a possible hang...
#Gathering Hang Related data...
#Creating tar file...
#Compressing tar file...
#Successful extraction
SCAT_EXPLORE_DATA_DIR=./scat_explore_ebsmro2_808cc87b_0xde2d09d_vmcore.0


We're happy to announce the release of Solaris CAT 5.2.  It can be downloaded from the Sun Download Center.  Here's the release notes:

General

Solaris 2.6 Support

This version of Solaris CAT is the last release to support Solaris 2.6. If you have systems running Solaris 2.6, please note that that release reached it's end-of-service-life in July 2006. You should plan an upgrade soon.

New Commands

ctf

When a type is specified on the command line, it can include an optional module to retrieve the type information from. If no module is specified, the modules in the core are searched in order for the specified type.

This new command allows specifying a list of modules to be searched prior to scanning the module. Modules are specified using a colon-separated list.

It can also be used to display the current list, or to clear it.

qlcfc fplog|ssfcplog

This new command dumps the qlc logs. If the fplog subcommand is specified, the fp_logq is displayed. If the ssfcplog subcommand is specified, the ssfcp_logq is displayed.
scat_version

scat_version has been added so that the release/version of the currently running Solaris CAT instance can be easily retrieved.

Interface Changes

dev id

This new subcommand was added to simplify decoding ddi_devid_t (impl_devid_t) structures in the kernel and display the string representation of the devid.

refclock

On a live system, the default is now to use the (possibly scaled) results of gethrtime(). Additionally, under some circumstances, lbolt, and lbolt64 are now inappropriate, and under those conditions, will be disallowed. Using curtime is also now disallowed where the ct_curtime field is not available in the callout_table structure.

tlist affinitiy <cpu>

This new subcommand of the tlist displays the threads that have an affinity set for a CPU. If <cpu> is specified, then only thread with affinity for the specified <cpu> are displayed.

scat_explore options

The scat_explore sub-command now accepts new options. Usage is:

scat --scat_explore [-v] [-a] [-d dest] [unix.N] [vmcore.]N
Where:


-v Verbose Mode: The command will print messages highlighting what it's doing.
-a Auto Mode: The command does not prompt for input from the user as it runs.
-d dest Instructs scat_explore to save it's output in the directory dest instead of the present working directory.
N The number of the crash dump. Specifying unix.N vmcore.N is optional and not required.