Using Trace to Examine IS-IS Control Packets

Use trace as a debug tool to examine the code flow and Intermediate-System-to-Intermediate-System (IS-IS) control packets. When you enable IS-IS trace flags, the system displays only trace information about the set flag.

Before you begin

  • You must know what you want to trace before you enable trace.

Procedure

  1. Enter Privileged EXEC mode:

    enable

  2. Enable the Intermediate-System-to-Intermediate-System trace flags:

    trace flags isis set { none | tx-hello | rx-hello | tx-pkt | rx-pkt | adj | opt | tx-lsack | rx-lsack | tx-lsp | rx-lsp | pkt-err | nbr-mismatch | flood | prefix | nbr-change | intf-change | decide | fdb | dr | dd-masterslave | auth-fail | config | purge | policy | redist | tx-snp | rx-snp | timer | global | perf | ucast-fib | node | mcast-fib | isid | ip-shortcut }

  3. Identify the module ID for which you want to use the trace tool:

    show trace modid-list

  4. Clear the trace:

    clear trace

  5. Begin the trace operation:

    trace level [<Module_ID>] [<0-4>]

    OR

    trace spbm isis level [<0-4>]

    OR

    trace cfm level [<0-4>]

    Note

    Note

    • Module ID 119 represents the IS-IS module.

  6. Wait approximately 30 seconds.

    The default trace settings for CPU utilization are:

    • High CPU Utilization: 90%

    • High Track Duration: 5 seconds

    • Low CPU Utilization: 75%

    • Low Track Duration: 5 seconds

  7. Stop tracing:

    trace shutdown

  8. View the trace results:

    trace screen enable

    Important

    Important

    If you use trace level 3 (verbose) or trace level 4 (very verbose), do not use the screen to view commands due to the volume of information the system generates and the effect on the system.

  9. Save the trace file.

    save trace [file WORD<1–99>]

    If you do not specify a file name, the file name is systrace.txt.

  10. Display trace lines saved to a file:

    show trace file [tail]

  11. Search trace results for a specific string value:

    trace grep [WORD<0-128>]

    If you use this command and do not specify a string value, you clear the results of a previous search.

  12. Stop tracing:

    trace shutdown

  13. Disable the Intermediate-System-to-Intermediate-System trace flags:

    trace flags isis remove { none | tx-hello | rx-hello | tx-pkt | rx-pkt | adj | opt | tx-lsack | rx-lsack | tx-lsp | rx-lsp | pkt-err | nbr-mismatch | flood | spf-intra | spf-inter | spf-extern | prefix | nbr-change | intf-change | decide | fdb | dr | dd-masterslave | auth-fail | config | purge | policy | redist | tx-snp | rx-snp | timer | spbm-decide | global | perf | ucast-fib | node | mcast-fib | isid | ip-shortcut }

Example

Switch:1> enable

Clear prior trace information:

Switch:1# clear trace

Enable IS-IS trace flags for received IS-IS hello packets:

Switch:1# trace flags isis set rx-hello

Enable IS-IS trace flags for transmitted IS-IS hello packets:

Switch:1# trace flags isis set tx-hello

Configure the module ID to 119 (IS-IS module) and the trace to 4 (very verbose):

Switch:1# trace level 119 4

Enable the display of trace output to the screen:

Switch:1# trace screen enable

Switch:1# Screen tracing is on

Disable the display of trace output to the screen:

Switch:1# trace screen disable

Switch:1# Screen tracing is off

Variable Definitions

The following table defines parameters for the trace flags isis command.

Variable

Value

remove { none | tx-hello | rx-hello | tx-pkt | rx-pkt | adj | opt | tx-lsack | rx-lsack | tx-lsp | rx-lsp | pkt-err | nbr-mismatch | flood | prefix | nbr-change | intf-change | decide | fdb | dr | auth-fail | config | purge | policy | redist | tx-snp | rx-snp | timer | global | perf | ucast-fib | node | isid | ip-shortcut }

Removes the Intermediate-System-to-Intermediate-System (IS-IS) trace flags for the specified option.

set { none | tx-hello | rx-hello | tx-pkt | rx-pkt | adj | opt | tx-lsack | rx-lsack | tx-lsp | rx-lsp | pkt-err | nbr-mismatch | flood | prefix | nbr-change | intf-change | decide | fdb | dr | auth-fail | config | purge | policy | redist | tx-snp | rx-snp | timer | global | perf | ucast-fib | node | isid | ip-shortcut }

Enables the Intermediate-System-to-Intermediate-System (IS-IS) trace flags for the specified option.

  • none — none

  • tx-hello — Transmitted IS-IS hello packet

  • rx-hello — Received IS-IS hello packet

  • tx-pkt — Transmitted packet

  • rx-pkt — Received packet

  • adj — Adjacencies

  • opt — IS-IS TLVs

  • tx-lsack — Transmitted LSP acknowledgement

  • rx-lsack — Received LSP acknowledgement

  • tx-lsp — Transmitted Link State Packet

  • rx-lsp — Received Link State Packet

  • pkt-err — Packet Error

  • nbr-mismatch — Neighbor mismatch

  • flood — Flood

  • prefix — Prefix

  • nbr-change — Neighbor change

  • intf-change — IS-IS circuit (interface) events

  • decide — Shortest Path First computation

  • fdb — Filtering Database

  • dr — Designated Router

  • auth-fail — Authorization failed

  • config — Configuration

  • purge — Link State Packet purge

  • redist — Redistribute

  • tx-snp — Transmitted Sequence Number PDU (CSNP and PSNP)

  • rx-snp — Received Sequence Number Packet (CSNP and PSNP)

  • timer — Timer

  • perf — SPBM performance

  • ucast-fib — Unicast Forwarding Information Base

  • node — Node

  • isid — I-SID

  • ip-shortcut — IP Shortcut

The following table defines parameters for the show trace command.

Variable

Value

auto

Displays the current configuration for the automatic trace function.

file [tail]

Displays the trace results saved to a file.

level

Displays the current trace level for all modules.

modid-list

Specifies the module ID list.

The following table defines parameters for the trace command.

Variable

Value

grep [WORD<0-128>]

Specifies the search keyword. You can use a specific MAC address. You can search for errors, using the command, trace grep error.

cfm level [<0-4>]

Starts tracing by CFM.

  • <0-4> specifies the trace level from 0–4, where 0 is disabled; 1 is very terse; 2 is terse; 3 is verbose, 4 is very verbose.

spbm isis level [<0-4>]

Specifies exactly which IS-IS component to display. 

  • <0-4> specifies the trace level from 0–4, where 0 is disabled; 1 is very terse; 2 is terse; 3 is verbose, 4 is very verbose.

level [<Module_ID>] [<0-4>]

Starts the trace by specifying the module ID and level.

<Module_ID> specifies the module for the trace. Different hardware platforms support different ID ranges because of feature support differences. To see which module IDs are available on the switch, use the show trace modid-list command or CLI command completion Help.

0–4 specifies the trace level:

  • 0 — Disabled

  • 1 — Very terse

  • 2 — Terse

  • 3 — Verbose

  • 4 — Very verbose

shutdown

Stops the trace operation.

screen {disable|enable}

Enables or disables the display of trace output to the screen.

Important:

Avoid using the screen to view commands if you use trace level 3 (verbose) or trace level 4 (very verbose) due to the volume of information generated and the effect on the system.

The following table defines parameters for the save trace command.

Variable

Value

file WORD<1–99>

Specifies the file name in one of the following formats:

  • a.b.c.d: <file>

WORD<1–99> is a string of 1–99 characters.

Note:

If you do not specify a file name, the file name is systrace.txt.