Home / Notes / Fault Information Collection Checklist
NOTES · MAINTENANCE / FAULT INFO COLLECTION

Fault Information to Collect Before You Escalate: Router and Switch Cheat Sheet

The moment a Huawei router or switch starts misbehaving, what you collect in the first few minutes decides whether the next step is a fix or a second round-trip. This is the collection order taken straight from Huawei's own AR router maintenance handbook and the Sx3 switch handbook: one command that grabs almost everything, a baseline checklist, log and counter collection done right, and a cheat sheet of exactly what to pull once you already suspect a specific fault type.

By the AtlasCommTech engineering team — 13 years of carrier & enterprise network deployments · Updated July 2026

Why "Collect Everything" Isn't the Answer

The goal isn't more data — it's the specific data that lets someone else locate the fault without a second phone call.

Huawei's own switch maintenance handbook opens its diagnostics chapter with a blunt instruction: when you can't pin down the cause yourself, collect the relevant fault information and hand it to the reseller or to Huawei's own support for localization. What that means in practice is three things every time — the time and topology the fault happened in, the device's own identity and state (name, version, current configuration, interface information), and whatever logs and alarms were generated when it happened.

What follows is that collection work in order: the one command that grabs almost all of it in one pass, a baseline checklist of the display commands worth knowing by name, how to collect logs and reset counters without lying to yourself about what's actually live, and a cheat sheet of what to pull once you already have a working theory about which subsystem is at fault — IPSec, OSPF, BGP, DHCP, an unexpected reboot, or ARP.

The One Command That Grabs Almost Everything First

One command, bundling the output of dozens of others — worth running before anything fault-specific.

display diagnostic-information collects the device's boot configuration, current configuration, interface information, clock, software version and more in a single pass — effectively a batch run of the display commands most people would think to run one at a time anyway.

<HUAWEI> display diagnostic-information dia-info.txt
 This operation will take several minutes, please wait.........................
 ................................................................................
 ...
 Info: The diagnostic information was saved to the device successfully.

On an AR router, the same command can write straight to a .tar archive, and on a chassis with two main-control boards, the master and the standby each need their diagnostic information pulled separately.

<Huawei> display diagnostic-information xxx.tar
<Huawei> diagnose
[Huawei-diagnose] local-telnet slave
<Huawei> display diagnostic-information xxx.tar

Skip the direct-to-terminal display and give it a file name — the output is long, and a saved file is what a support engineer actually wants attached to the ticket.

Baseline Information Checklist

The display commands worth knowing by name, independent of what the fault turns out to be.

InformationCommandWhy it matters
Basic informationdisplay diagnostic-informationThe one-shot bundle above — provide this on any support request regardless of fault type.
Device informationdisplay deviceFlags a board in Abnormal status — the first thing to check when a specific board is suspect.
Interface informationdisplay interfacePhysical state, configuration and packet counters for an interface — the standard first stop for interconnect faults or packet loss.
Version informationdisplay versionSoftware, BootROM, main-control, interface-board and fan-module versions, plus memory sizes — often the first thing a support engineer will ask for.
Patch informationdisplay patch-informationCurrent patch package version and name — matters because behaviour can differ meaningfully between patch levels.
Electronic labeldisplay elabelHardware identity and manufacture information — needed for an RMA or hardware return.
Device healthdisplay healthTemperature, power, fan, power draw, CPU/memory usage and storage usage in one view.
Current configurationdisplay current-configurationWhat the device is actually running right now — supports regular-expression filtering to narrow it down.
Saved configurationdisplay saved-configurationWhat the device will load on its next boot — useful when the device came up but isn't behaving as configured.
Clockdisplay clockPins down exactly when the fault happened — essential for correlating with logs and alarms.
User logdisplay logfile bufferRun from the diagnose view; shows the buffered user-facing log.
Diagnostic logdisplay diag-logfile bufferAlso from the diagnose view; the lower-level diagnostic log, distinct from the user log.
Alarm informationdisplay trapbufferThe information center's Trap buffer — the fastest way to see what alarms actually fired.
Memory usagedisplay memory-usageAdd slot slot-id for an interface board's memory; omit it for the main-control board's.
CPU usagedisplay cpu-usageSame slot logic as memory usage — main-control by default, interface board with slot slot-id.

Collecting Logs and Resetting Counters the Right Way

A log you forgot to save and a counter you forgot to clear both tell the wrong story.

Pulling the actual log files

save logfile and save diag-logfile write the buffered log content to files under flash:/logfile/, which can then be pulled off the device over FTP/TFTP.

<HUAWEI> save logfile
<HUAWEI> system-view
[HUAWEI] diagnose
[HUAWEI-diagnose] save diag-logfile

Resetting counters before you trust them

display interface and display ip interface show statistics accumulated since the device booted or since the counters were last cleared — not since the problem started. Clear them first, generate fresh traffic, then read again.

  1. Clear the counters with reset counters interface or reset ip statistics.
  2. Generate traffic across the link with ping.
  3. Re-read the same statistics with display interface or display ip interface — only what accumulated during this window is live.
Input: 736 packets, 344842 bytes
  Unicast:           0, Multicast:             714
  Broadcast:         22, Jumbo:                   0
  Discard:           0, Total Error:             0

Output: 2911 packets, 514228 bytes
  Unicast:          0, Multicast:               2910
  Broadcast:          1, Jumbo:                    0
  Discard:          0, Total Error:               0

A nonzero Total Error here only tells you something happened at some point since the last clear — reset the counter, re-test, and re-read before treating it as a live problem.

What to Collect, by Fault Category

Once you already have a working theory about which subsystem is at fault, this narrows it down fast.

Fault categoryCommands to runWhat you're looking for
IPSecdisplay ike error-info verbose [ peer remote-address ]
display ike proposal number
display ipsec sa
display ike peer name peer-name
display ipsec statistics
display ipsec global config
debugging ikev1 all / debugging ikev2 all / debugging ipsec all
display ike error-info verbose gives the actual IKE negotiation failure reason directly, instead of making you infer it from a bare "down" state.
OSPFdisplay ospf routing ipv4-address verbose
display ospf peer verbose
debugging ospf event
debugging ospf packet hello
display ospf peer verbose shows per-neighbor state detail well beyond a plain up/down.
BGPdisplay bgp peer ipv4-address log-info
display bgp routing-table ipv4-address
debugging bgp [ peer ipv4-address ] all
display bgp peer log-info surfaces the neighbor Down error code directly — the fastest read on why a session flapped.
L2TP / PPPdisplay l2tp session-down-reason
display l2tp tunnel-down-reason
display ppp state all
debugging l2tp all / debugging ppp all
The two down-reason commands exist specifically because an L2TP tunnel or session doesn't just report "down" — it logs why.
DHCPdisplay dhcp configuration
display dhcp client / display dhcp client statistics
display dhcp relay configuration / statistics
display dhcp server configuration / statistics
display ip pool interface interface-type interface-number
debugging dhcp client / relay / server all
DHCP has three distinct roles — client, relay, server — and the collection commands are role-specific; pulling relay statistics from a box acting as server won't show you anything useful.
Unexpected restartdisplay reset-reason
display inspect black-box record 6/8/10/11/12/13 0 0 0
display lastwords all
display kernel-logbuf last
All of these are built to survive the reboot itself, specifically to answer "why did it restart" after the fact.
ARPdisplay arp history
debugging arp packet
display arp history shows how an entry actually changed over time, not just its current snapshot.

The same handbook covers further categories in the same format — SNMP, BFD, voice, 3G/LTE/5G modem faults and NQA among them — following the identical pattern: a display command for state, a debugging command for the live trace.

5 Gotchas in the Collection Process Itself

The collection commands themselves have sharp edges — these are the ones that catch engineers off guard.

1. The One-Shot Capture Can Make a Loaded Box Worse

SYMPTOMCPU usage spikes right when display diagnostic-information is run on a device that's already under load or mid-incident.

CAUSEThe command batches many display commands together and is explicitly documented as something that can raise CPU usage while it runs — and running it from several terminal sessions on the same device at once can push CPU noticeably higher still.

FIXDon't run it redundantly from multiple sessions at once, and don't make it routine housekeeping on a healthy device — save it for when the information is actually needed for a handoff.

<HUAWEI> display diagnostic-information dia-info.txt

2. Debugging Output Needs Three Commands First — and Two to Turn It Back Off

SYMPTOMA debugging xxx command is entered and nothing shows on screen — or, the opposite problem, debugging is left running well after the incident and starts competing for CPU with everything else.

CAUSEDebugging information isn't printed to a terminal session unless terminal debugging and terminal monitor are both explicitly turned on, with debug timeout 0 set so it doesn't time out unexpectedly mid-collection — and it stays on until someone explicitly turns it back off.

FIXRun the three-line preamble before any debugging command, collect for a bounded window, then explicitly undo both settings afterward.

terminal debugging
terminal monitor
debug timeout 0
...
undo terminal debugging
undo terminal monitor

3. Interface Counters Lie If You Don't Reset Them First

SYMPTOMdisplay interface shows Total Error greater than zero, and it's tempting to conclude the port is actively broken right now.

CAUSEThose counters accumulate from device boot, or from whenever they were last manually cleared — a nonzero Total Error might be leftover from something that happened days or weeks ago, not what's happening right now.

FIXClear the counters, generate fresh traffic with ping, then re-read the same display command — only the delta during that window tells you whether the problem is live.

reset counters interface ethernet 1/0/0
ping ...
display interface ethernet 1/0/0

4. Packet-Header Mirroring Has a Privacy Line, Not Just a Technical One

SYMPTOMMirroring a port's traffic to Wireshark on a laptop to chase a packet-level fault feels like a purely technical step.

CAUSEThe vendor's own documentation flags this feature as something that may involve capturing or storing the content of someone's actual communications, and states it should only be enabled within whatever scope local law actually allows — not something to reach for automatically.

FIXConfirm scope and authorization before configuring an observe-port and mirroring live traffic to it, especially before pointing a capture tool at the mirrored feed.

[Router] observe-port interface ethernet 5/0/0
[Router] interface gigabitethernet 0/0/0
[Router-GigabitEthernet0/0/0] mirror to observe-port inbound

5. On a Dual-Main-Control Chassis, the Standby Board Has Its Own Story

SYMPTOMA chassis with two main-control boards fails over or misbehaves, and the diagnostic information collected only tells half the story.

CAUSEdisplay diagnostic-information run on the active main-control board only captures that board's state — the standby board keeps its own state and has to be reached separately to pull its own diagnostic file.

FIXFrom the diagnose view, use local-telnet slave to reach the standby board and run display diagnostic-information there too, so both boards' information reaches whoever is troubleshooting.

<Huawei> diagnose
[Huawei-diagnose] local-telnet slave
<Huawei> display diagnostic-information xxx.tar

The Collection Flow, End to End

In order — from "something's wrong" to "attached to the ticket".

1. Note the time, topology and symptomdisplay clock + what triggered it + what's actually failing 2. Run the one-shot capturedisplay diagnostic-information (both MPUs if dual main-control) 3. Pull the baseline checklistdevice / version / interface / current-config / logs / alarms 4. Match to the fault-category tableIPSec / OSPF / BGP / L2TP-PPP / DHCP / reboot / ARP 5. Reset counters, retest, re-readonly needed when reading live interface/IP statistics 6. Attach the files, escalatediagnostic-information file + logfile + the fault-category output

Diagram labels are kept in English for engineering clarity.

Related solution designs

FAQ

The questions that come up first once someone actually opens a support ticket.

I don't even know what's broken yet — where do I start?

Start with display diagnostic-information (or the switch's dia-info.txt form) plus display clock for an exact timestamp, and write down the topology, what triggered the fault, and what's actually failing — before touching any fault-specific command.

Do I need to turn debugging on every time?

No — debugging is invasive and should stay scoped to one category you already suspect, for example debugging ospf packet hello only once OSPF is the working theory, wrapped in terminal debugging / terminal monitor / debug timeout 0, run for a bounded window, then explicitly turned back off.

What's the difference between save logfile and save diag-logfile?

save logfile, run from the user view, saves the operational user-facing log; save diag-logfile, run from the diagnose view, saves the lower-level diagnostic log. Support engineers may ask for either one depending on what they're chasing, and sometimes both.

The device already crashed and reloaded — is there anything left to collect?

Yes — display reset-reason, the several display inspect black-box record variants, display lastwords all and display kernel-logbuf last are all built specifically to survive the reboot and answer "why did it restart" after the fact.

Is there one universal checklist, or does every fault need its own commands?

Both. The baseline checklist — one-shot capture plus device, version, interface, configuration and log information — applies to almost anything and is worth collecting first regardless of the fault. The by-fault-category table narrows it down further once a working theory already exists: IPSec, OSPF, BGP, DHCP, an unexpected reboot, or ARP.

Honest Limits of This Note

This is a collection guide, not a root-cause guide. It's built from the AR router maintenance handbook's own appendix on information collection and diagnostic commands, cross-checked against the equivalent chapter in the Sx3 switch maintenance handbook. Once a specific fault type is already confirmed — an IPSec tunnel or an OSPF neighbor that won't come up, for instance — the deeper root-cause walkthrough for that one fault type is its own separate note, not this one.

Already collected the information and still stuck?

Send us the diagnostic-information file and whatever fault-category output you pulled — we'll help you read it.

WhatsApp an engineer →