Configuring Online Diagnostics

This chapter describes how to configure the online diagnostics on the Cisco Industrial Ethernet 2000U Series (IE 2000U) and Connected Grid Switches, hereafter referred to as switch .


NoteFor complete syntax and usage information for the commands used in this chapter, see the documents listed in the“Related Documents” section.


Information About Online Diagnostics

With online diagnostics, you can test and verify the hardware functionality of the switch while the switch is connected to a live network. The online diagnostics contain packet switching tests that monitor different hardware components and verify the data path and the control signals.

The online diagnostics detect problems in these areas:

  • Hardware components
  • Interfaces (Ethernet ports and so forth)
  • Solder joints

Table 18-1 lists the diagnostic test IDs and names. For information about test attributes, see the output from the show diagnostic content privileged EXEC command.

 

Table 18-1 Diagnostic Tests

Test ID Number
Test Name

1

TestPortAsicStackPortLoopback

2

TestPortAsicLoopback

3

TestPortAsicCam

4

TestPortAsicRingLoopback

5

TestMicRingLoopback

6

TestPortAsicMem

Online diagnostics are categorized as on-demand, scheduled, or health-monitoring diagnostics.

  • On-demand diagnostics run from the CLI.
  • Scheduled diagnostics run at user-designated intervals or at specified times when the switch is connected to a live network.
  • Health-monitoring runs in the background.

Prerequisites

Before you enable any online diagnostics tests, enable console logging to see all warning messages. See Chapter13, “Configuring System Message Logging”

Guidelines and Limitations

  • We recommend that when you are running disruptive tests that you only run the tests when connected through console. When disruptive tests are complete a warning message on the console recommends that you reload the system to return to normal operation: strictly follow this warning.
  • While tests are running, all ports are shut down as a stress test is being performed with looping ports internally and external traffic might affect the test results. The switch must be rebooted to bring the switch to normal operation. When you issue the command to reload the switch, the system will ask you if the configuration should be saved. Do not save the configuration.
  • If you are running the tests on other modules, after the test is initiated and complete, you must reset the module.
  • After starting the tests, you cannot stop the testing process.

Default Settings

By default, health monitoring is disabled. When enabled, the switch generates a syslog message when a test fails.

Configuring Online Diagnostics

You must configure the failure threshold and the interval between tests before enabling diagnostic monitoring.

Scheduling Online Diagnostics

You can schedule online diagnostics to run at a designated time of day or on a daily, weekly, or monthly basis. Use the no form of this command to remove the scheduling. For detailed information about this command, see the Cisco IOS Configuration Fundamentals Command Reference, Release 15.2M&T .

BEFORE YOU BEGIN

Review the “Information About Online Diagnostics” section and “Guidelines and Limitations” section.

DETAILED STEPS

 

Command
Purpose

Step 1

configure terminal

Enter global configuration mode.

Step 2

diagnostic schedule test { name | test-id | test-id-range | all | basic | non-disruptive } { daily hh : mm | on mm dd yyyy hh : mm | weekly day-of-week hh : mm }

Schedule on-demand diagnostic tests for a specific day and time.

When specifying the tests to be scheduled, use these options:

  • name —Name of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id —ID number of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id-range —A range of test ID numbers separated by a hyphen or commas.
  • all —All of the diagnostic tests.
  • basic —Basic on-demand diagnostic tests.
  • non-disruptive —Nondisruptive health-monitoring tests.

You can schedule the tests for these time periods:

  • Daily—Use the daily hh : mm parameter.
  • Specific day and time—Use the on mm dd yyyy hh : mm parameter.
  • Weekly—Use the weekly day-of-week hh : mm parameter.

Step 3

show diagnostic { content | schedule }

Verify the configured online diagnostic tests and schedule.

  • Enter show diagnostic content to display the configured online diagnostics.
  • Enter show diagnostic schedule to display the online diagnostics test schedule.

Step 4

copy running-config startup-config

(Optional) Save your entries in the configuration file.

Use the no diagnostic schedule test { name | test-id | test-id-range | all | basic | non-disruptive } { daily hh : mm | on mm dd yyyy hh : mm | weekly day-of-week hh : mm } global configuration command to remove the scheduled tests.

EXAMPLE

This example shows how to schedule diagnostic testing for a specific day and time and verify the schedule:

Switch(config)# diagnostic schedule test 1 on Dec 4 2013 10:22
Switch(config)# end
Switch# show diagnostic schedule
Current Time = 10:21:24 UTC Thu Dec 4 2013
 
Diagnostic:
 
Schedule #1:
To be run on December 4 2013 10:22
Test ID(s) to be executed: 1.
 

At the scheduled time, the switch runs the test:

Switch# #
Dec 4 10:21:59.492: %DIAG-6-SCHED_RUNNING: : Performing Scheduled Online Diagnostic...
Dec 4 10:21:59.492: %DIAG-6-TEST_RUNNING: : Running TestPortAsicStackPortLoopback{ID=1} ..
Dec 4 10:22:00.498: %DIAG-6-TEST_OK: : TestPortAsicStackPortLoopback{ID=1} has completed successfully
Dec 4 10:22:00.498: %DIAG-6-SCHED_COMPLETE: : Scheduled Online Diagnostic is completed
 

Configuring Health-Monitoring Diagnostics

You can configure health-monitoring diagnostic testing while a switch is connected to a live network. You can configure the execution interval for each health-monitoring test, enable the switch to generate a syslog message because of a test failure, and enable a specific test.

By default, health monitoring is disabled. When enabled, the switch generates a syslog message when a test fails.

BEFORE YOU BEGIN

Review the “Information About Online Diagnostics” section and “Guidelines and Limitations” section.

DETAILED STEPS

 

Command
Purpose

Step 1

configure terminal

Enter global configuration mode.

Step 2

diagnostic monitor interval test { name | test-id | test-id-range | all } hh:mm:ss milliseconds day

Configure the health-monitoring interval of the specified tests.

Specify the tests by using one of these parameters:

  • name —Name of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id —ID number of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id-range —A range of test ID numbers separated by a hyphen or commas.
  • all —All of the diagnostic tests.

When specifying the interval, set these parameters:

  • hh:mm:ss —Monitoring interval in hours, minutes, and seconds. The range for hh is 0 to 24, and the range for mm and ss is 0 to 60.
  • milliseconds —Monitoring interval in milliseconds (ms). The range is from 0 to 999.
  • day —Monitoring interval in number of days. The range is from 0 to 20.

Step 3

diagnostic monitor syslog

(Optional) Configure the switch to generate a syslog message when a health-monitoring test fails.

Step 4

diagnostic monitor threshold test { name | test-id | test-id-range | all } failure count count

(Optional) Set the failure threshold for the health-monitoring tests.

Specify the tests by using one of these parameters:

  • name —Name of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id —ID number of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id-range —A range of test ID numbers separated by a hyphen or commas.
  • all —All of the diagnostic tests.

The range for the failure threshold count is 0 to 99.

Step 5

diagnostic monitor test { name | test-id | test-id-range | all }

Enable the specified health-monitoring tests.

Specify the tests by using one of these parameters:

  • name —Name of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id —ID number of the test that appears in the show diagnostic content command output. See Table 18-1 .
  • test-id-range —ID numbers of the tests that appear in the show diagnostic content command output.
  • all —All of the diagnostic tests.

Step 6

end

Return to privileged EXEC mode.

Step 7

show diagnostic { content | post | result | schedule | status | switch }

Display the online diagnostic test results and the supported test suites. See the “Displaying Online Diagnostic Tests and Results” section for more information.

Step 8

show running-config

Verify your entries.

Step 9

copy running-config startup-config

(Optional) Save your entries in the configuration file.

To disable diagnostic testing and return to the default settings, use these commands:

  • To disable online diagnostic testing, use the no diagnostic monitor test { name | test-id | test-id-range | all } global configuration command.
  • To return to the default health-monitoring interval, use the no diagnostic monitor interval test { name | test-id | test-id-range | all } global configuration command.
  • To configure the switch to not generate a syslog message when the health-monitoring test fails, use the no diagnostic monitor syslog global configuration command.
  • To return to the default failure threshold, use the no diagnostic monitor threshold test { name | test-id | test-id-range | all } failure count count global configuration command.

EXAMPLE

This example shows how to configure a health-monitoring test:

Switch(config)# diagnostic monitor threshold test 1 failure count 50
Switch(config)# diagnostic monitor interval test TestPortAsicRingLoopback

Running Online Diagnostic Tests

After you configure online diagnostics, you can manually start diagnostic tests or display the test results. You can also see the tests configured for the switch and the tests that have already run.

Starting Online Diagnostic Tests


NoteAfter starting the tests, you cannot stop the testing process.


BEFORE YOU BEGIN

DETAILED STEPS

 

Command
Purpose

diagnostic start test { name | test-id | test-id-range | all | basic | non-disruptive }

Start the diagnostic tests.

Specify the tests by using one of these parameters:

  • name —Enter the name of the test. Use the show diagnostic content privileged EXEC command to display the test ID list. See Table 18-1 .
  • test-id —Enter the ID number of the test. Use the show diagnostic content privileged EXEC command to display the test ID list. See Table 18-1 .
  • test-id-range —Enter the range of test IDs by using integers separated by a comma and a hyphen. For more information, see the diagnostic start command in the Cisco IOS Configuration Fundamentals Command Reference, Release 15.2M&T .
  • all —Use this keyword when you want to run all of the tests.
  • basic —Use this keyword when you want to run the basic test suite.
  • non-disruptive —Use this keyword when you want to run the nondisruptive test suite.

EXAMPLE

This example shows how to start a diagnostic test by using the test name:

Switch# diagnostic start test TestPortAsicRingLoopback
 

This example shows how to start a non-disruptive diagnostic test:

Switch# diagnostic start test non-disruptive
Switch#
*Mar 3 19:34:02.680: %DIAG-6-TEST_RUNNING: : Running TestPortAsicStackPortLoopback{ID=1} ..
*Mar 3 19:34:03.687: %DIAG-6-TEST_OK: : TestPortAsicStackPortLoopback{ID=1} has completed successfully
 

This example shows how to start all of the basic diagnostic tests:

Switch# diagnostic start test all

Displaying Online Diagnostic Tests and Results

 

Command
Purpose

show diagnostic content

Displays the online diagnostics configured for a switch.

show diagnostic status

Displays the running diagnostic tests.

show diagnostic result [ detail | test { name | test-id | test-id-range | all [ detail ]}]

Displays the specified online diagnostics test results.

show diagnostic switch [ detail ]

Displays the online diagnostics test results.

show diagnostic schedule

Displays the online diagnostics test schedule.

show diagnostic post

Displays the POST results. (The output is the same as the show post command output.)

EXAMPLE

This is an example of the output from the show diagnostic result command:

Switch# show diagnostic result
 
: SerialNo : FOC1225U4CY
 
Overall diagnostic result: PASS
 
Test results: (. = Pass, F = Fail, U = Untested)
 
1) TestPortAsicStackPortLoopback ---> .
2) TestPortAsicLoopback ------------> U
3) TestPortAsicCam -----------------> U
4) TestPortAsicRingLoopback --------> U
5) TestMicRingLoopback -------------> U
6) TestPortAsicMem -----------------> U
 

This is an example of the output from the show diagnostic post command:

Switch# show diagnostic post
Stored system POST messages:
 
Switch
---------
 
POST: CPU MIC register Tests : Begin
POST: CPU MIC register Tests : End, Status Passed
 
POST: PortASIC Memory Tests : Begin
POST: PortASIC Memory Tests : End, Status Passed
 
POST: CPU MIC interface Loopback Tests : Begin
POST: CPU MIC interface Loopback Tests : End, Status Passed
 
POST: PortASIC RingLoopback Tests : Begin
POST: PortASIC RingLoopback Tests : End, Status Passed
 
POST: Thermal Tests : Begin
POST: Thermal Tests : End, Status Passed
 
POST: PortASIC CAM Subsystem Tests : Begin
POST: PortASIC CAM Subsystem Tests : End, Status Passed
 
POST: PortASIC Port Loopback Tests : Begin
POST: PortASIC Port Loopback Tests : End, Status Passed
 

For more examples of other show diagnostic command outputs, see the “Examples” section of the show diagnostic command in the Cisco IOS Configuration Fundamentals Command Reference, Release 15.2M&T .

Configuration Example

This example shows how to schedule diagnostic testing for a specific day and time and verify the schedule:

Switch(config)# diagnostic schedule test 1 on Dec 4 2013 10:22
Switch(config)# end
Switch# show diagnostic schedule
Current Time = 10:21:24 UTC Thu Dec 4 2013
 
Diagnostic:
 
Schedule #1:
To be run on December 4 2013 10:22
Test ID(s) to be executed: 1.
 

At the scheduled time, the switch runs the test:

Switch# #
Dec 4 10:21:59.492: %DIAG-6-SCHED_RUNNING: : Performing Scheduled Online Diagnostic...
Dec 4 10:21:59.492: %DIAG-6-TEST_RUNNING: : Running TestPortAsicStackPortLoopback{ID=1} ..
Dec 4 10:22:00.498: %DIAG-6-TEST_OK: : TestPortAsicStackPortLoopback{ID=1} has completed successfully
Dec 4 10:22:00.498: %DIAG-6-SCHED_COMPLETE: : Scheduled Online Diagnostic is completed
 

This example shows how to configure a health-monitoring test:

Switch(config)# diagnostic monitor threshold test 1 failure count 50
Switch(config)# diagnostic monitor interval test TestPortAsicRingLoopback
 

Related Documents

Feature History

Platform
First Supported Release

IE 2000U

Cisco IOS Release 15.0(2)EH

CGS 2520

Cisco IOS Release 12.2(53)EX

Ethernet Switch Module (ESM) for CGR 2010

Cisco IOS Release 12.2(53)EX