Support Data Collector

The Support Data Collector (SDC) is a system feature that allows scheduled collection of process state, counter, event and attribute data that may be useful when troubleshooting problems at an installation site.

This chapter includes the following sections:

Overview

The task of collecting the support data is performed by a background CLI task called the record collector. The administrator configures the SDC via the CLI with the commands to be executed on a periodic basis. The record collector always runs in the background and checks if there are records to be collected.

When it is time to collect support data, the scheduler executes the configured sequence of CLI commands and stores the results in a gunzipped (.gz) file on the hard-disk. This file is called an SDR (Support Data Record), and represents a snapshot of the overall state of the system at that time.

Technical Assistance Center (TAC) personnel and local administrators can review the SDRs on-line or by transferring them off the system. They may also wish to investigate the collector state information. The figure below shows system tasks that contain state and counter information. Arrows between tasks and processes represent messenger requests and indicate the predominant flow of data.

Figure 1. SDC Tasks and Processes<

Configuring SDR Collection

The Support Data Record (SDR) is an ordered set of the CLI support commands' display output that is stored in a stand-alone compressed file. Each CLI support command output is stored in its own record section. The record section is identified by a record section name and its ASCII command syntax. For example, the record section show_version would have a CLI command string of "show version".

The order in which the record section commands appear in the configuration is significant. All of the support record section commands must be configured together as an ordered set. In other words, just specifying one command by itself will result in just that one command output constituting the contents of the entire SDR.

The user may configure a specific set of record sections for the SDR which may or may not include some or all of the default SDR record sections. This configuration is stored in the Global Configuration section of the configuration file. Refer to Configuration Commands (Global Configuration Mode) for more detail on the support record section command.

Displaying the SDR Collection Configuration

The show configuration verbose command displays the default support record sections, if the user has not specified any support record sections. If the user has configured support record sections, then the show configuration command displays user-configured support record sections. The support collection schedule configuration also appears in the show configuration output under the Global Configuration section.

Collecting and Storing the SDR Information

At the scheduled time, the Support Data Collector (SDC), if active, runs in the background to collect all the record section commands that have been specified. This information is concatenated as one contiguous output. The output is compressed and stored as a file on disk in the /hd-raid/support/record/ directory.

The periodicity of the SDC is configured by the support collection schedule command under Global Configuration Mode. Once the SDR is stored, the SDC waits the sleep-duration interval specified via the support collection command before collecting another SDR.


Important

The period between SDRs is equal to the configured sleep-duration interval + the time taken to collect the previous record.


Managing Record Collection

The SDRs are stored together in a self-relative set. This self-relative set is called a Support Record Collection. Each individual SDR is identified with a record-id. The record-id of the most recent SDR is always 0 (zero). The next older SDR is record-id 1, and so on, for the number of records in the stored collection. For example, if there are five SDRs, they are identified as SDR-0 through SDR-4.

Figure 2. Support Data Collection Hierarchy

When a new SDR is created, the numbers all increment by one and the newest SDR is given the value of 0. If the total number of records exceeds a configured maximum, then the oldest SDR is deleted.

Using the example above, when the maximum SDR count of 5 is reached, the SDRs continue to be SDR-0 through SDR-4, with the file timestamps indicating that the files are changing over time.

The time interval between collections may vary by several minutes in relation to the specified sleep-duration. This is because the interval specifies the idle time between scheduled collection runs. Since the actual overhead of the collecting process is not included in the scheduled intervals, the time differences between collections includes this non-deterministic amount of time.


Important

Using a shorter interval to compensate for this behavior is not recommended, since it will only add to the overhead incurred by the collection process and will ultimately impact the overall system performance. The sleep-duration (idle-time) between scheduled collections is an important component of the "self-throttling" mechanism that should not be circumvented by the user.


The Exec Mode show support collection command displays useful information about the Support Data Collector. The output includes information about when the collector last ran, how long it took to run, when it is scheduled to run again, as well as the number of SDRs currently stored, where they are stored, and how much storage space is being used. Refer to Exec Mode Commands for more detail about this command.

Using SDRs to Diagnose Problems

The user can compare the SDRs by examining two or more in sequence. These SDRs are dumped out in their CLI-formatted output display. Comparing the display outputs reveals trends and performance or configuration differences that indicate problem areas.

Once specific record sections have been identified as having problematic characteristics, only the CLI show commands associated with those sections need be monitored and compared to further isolate the problem areas. In addition, individual SDRs may be transferred via system-supported protocols to remote system, or the current collection may be transferred as a set for later analysis.

SDR CLI Commands

You may use the collected support data records to view support data chronologically. If the default list and sequence of sections is inadequate for system monitoring, you can configure your own set of record section commands that make up a particular support record.


Important

Refer to the SDR CLI Command Strings appendix for a listing of supported CLI strings (show commands) for record sections. The listing also identifies the CLI strings supported as default record sections. You can obtain the same listing by running the show support collection definitions command.



Important

You may enter up to 200 SDR CLI strings in a single record section command. If you attempt to add more than 200 CLI strings, an error message appears. You may also receive an error message if the system is unable to parse all of the requested CLI strings because they are too complicated to parse.


After configuring the SDR you then configure the sleep-duration interval between record collections and the number of historical records to be retained before being overwritten. By default, configuring this collection information makes the collector mechanism active (if not already active).

After one or more collection intervals have passed, the SDR data becomes available for analysis. The administrator can then use CLI commands to examine the SDR information to perform root cause analysis and trend analysis based on how the data has changed over time. The administrator may decide to transfer the SDRs off the system to be analyzed remotely, for example, by Cisco TAC.

For complete descriptions of the CLI commands discussed below, refer to the Command Line Interface Reference.

Configuration Commands (Global Configuration Mode)

support record

support record section section-name command "command-string" [ section section-name command "command-string" ] ... 
no support record [ all | section section_name ] 
default support record [ all | section section_name ] 

The support record section command configures a specific record section or set of record sections for a support information output command. The order in which record sections are saved is fixed, regardless of the sequence in which the CLI commands were entered.

For example:

[local]host_name(config)# support record section show_context command "show context" 

If the support record section command is not explicitly configured by the user, a default set of record section commands are used. These default record section commands are displayed when you run the show configuration verbose command. If support record section commands are explicitly configured, they replace the default commands.


Important

Refer to the SDR CLI Command Strings appendix for a listing of supported CLI strings (show commands) for record sections. The listing also identifies the CLI strings included in default record sections.


The no support record command removes either a specific section of the record definition or all of the sections. If you specify the default support record command, the default record section definition of that specified record section is used. If neither the keyword all or section is specified, all the record section definitions are removed.

support collection

support collection [ sleep-duration [ hours h | minutes m ] ] [ max-records n ]  
no support collection 
default support collection 

The support collection command modifies and/or enables the support collection process. If support collection has been previously disabled, this command enables the collection activity. If the support collection is currently enabled, this command may be used to modify the sleep-duration interval and/or the maximum number of SDRs that can be collected and stored.

The sleep duration keyword specifies the time interval between the collection of support data. It can be specified in hours or minutes with a default of one hour (60 minutes).

The max-records keyword specifies the number of SDRs to store as an integer from 1 to 65535. When this value is exceeded, the new SDR overwrites the oldest SDR. The default value is 168.


Important

SDR files will be stored in the /hd-raid/support/records/ directory.


For example:

[local]host_name(config)# support collection sleep-duration minute 30 max-records 50 

Use the no support collection command to explicitly disable the collection of the SDRs. If no record section commands are defined, the support data collector mechanism is also effectively disabled.

Use the default support collection command to enable the support data collector using the default record sections.

Exec Mode Commands

show support record

show support record record-id [ to record-id ] [ section section_name ] 

The show support record command displays a collection of SDRs. The SDRs are displayed in order from lowest record-id to highest record-id.

Each SDR is identified by a time index called the record-id. For example, the most recent record is always record-id 0 (filename = sdr.0.gz). The next older record is record-id 1 (filename = sdr.1.gz), and so on.

When a new record is collected it is given a record-id of 0. The previously most recent record is renamed to record-id 1, and so on. The display includes the record-id along with the collection time-stamp.

The record-id variable identifies a single SDR. The to keyword specifies the endpoint record-id when displaying a range of SDRs.

The section keyword displays a particular section of the record.

delete support record

delete support record  record-id [ to record-id ] 

The delete support records command removes an SDR with a specified record-id or all SDRs in the specified range of record-ids.

show support collection

show support collection [ definitions ] 

The show support collection command displays information on SDC activity. It display informations such as the start time of the last scheduled collection, the duration of the last scheduled collection, whether the collection is still in progress, etc. In addition this command lists the currently stored set of SDR record-ids, their respective timestamps, and size of each SDR.

[local]host_name# show support collection 
  Record Collection Enabled  : yes 
  Last Collection Start Time : Monday October 21 06:29:05 PDT 2013 
  Last Collection End Time   : Monday October 21 06:29:09 PDT 2013 
  Est. Collection Next Start : Monday October 21 07:29:13 PDT 2013 (40 minutes) 
   
Support Data Records at /var/tmp/support-records/ 
  ID        Name      Size       Date/Time 
 167  sdr.167.gz     42863       Monday October 21 04:40:00 PDT 2013 
 166  sdr.166.gz    170425       Monday October 21 05:40:08 PDT 2013 
total SDRs 2, total bytes 2132880, time span is last 1 day(s) 1 hour(s) 

The optional definitions keyword displays the list of default support record section definitions. This is the list of all valid record section definitions. The display also indicates whether the record section is enabled or disabled by default.

[local]host_name# show support collection definitions 

The output of this command reflects the sequence in which record sections will be output, regardless of the sequence in which they may have been entered by the user. Refer to the SDR CLI Command Strings appendix for additional information.