opaextracterror(8)

πŸ’– NAME πŸ’–

opaextracterror β€” okay bestie, this one is SO handy. It produces a CSV file listing all or some of the errors in the current fabric. It's a front end to the opareport tool, and the output from this tool can be imported into a spreadsheet or parsed by other scripts. ✨

(Yes, that's opaextracterror, from section 8 of the manual, part of the IFSFFCLIRG man pages. Iykyk. 🫢)


✨ Syntax ✨

opaextracterror [opareport  options]

No cap, that's literally the whole synopsis. πŸ’…


🌸 Options 🌸

  • --help β€” Produces full help text. The classic. πŸ™Œ
  • opareport options β€” The following options are passed to opareport. This subset is considered typical and useful for this command. By design, the tool ignores the -o/--output report option. (Not me ignoring your output flag... it's intentional, bestie. 😭)
    • -h/--hfi hfi β€” Specifies the HFI, numbered 1..n. Using 0 specifies that the -p port port is a system-wide port number. Default is 0.
    • -p/--port port β€” Specifies the port, numbered 1..n. Using 0 specifies the first active port. Default is 0.
    • -X/--infile snapshot_input β€” Generates a report using the data in the snapshot_input file. snapshot_input must have been generated during a previous -o snapshot run. When used, the -s, -i, -C, and -a options are ignored. - may be used as the snapshot_input to specify stdin.
    • -T/--topology topology_input β€” Uses topology_input file to augment and verify fabric information. When used, various reports can be augmented with information not available electronically (such as cable labels). - may be used to specify stdin.
    • -i/--interval seconds β€” Obtains performance statistics over interval seconds. Clears all statistics, waits interval seconds, then generates report. Implies the -s option.
    • -b / --begin date_time β€” Obtains past performance stats over an interval beginning at date_time. Implies the -s option. date_time may be a time entered as HH:MM[:SS] or date as mm/dd/YYYY, dd.mm.YYYY, YYYY-mm-dd or date followed by time; for example, "2016-07-04 14:40". Relative times are taken as "x [second|minute|hour|day](s) ago.
    • -e / --end date_time β€” Obtains past performance stats over an interval ending at date_time. Implies the -s option.

date_time may be a time entered as HH:MM[:SS] or date as mm/dd/YYYY, dd.mm.YYYY, YYYY-mm-dd or date followed by time; for example, "2016-07-04 14:40". Relative times are taken as "x [second|minute|hour|day](s) ago.

  • -C/--clear β€” Clears performance statistics for all ports. Only statistics with error thresholds are cleared. A clear occurs after generating the report.
  • -a/--clearall β€” Clears all performance statistics for all ports.
  • -M/--pmadirect β€” Accesses performance statistics using direct PMA.
  • -A/--allports β€” Gets PortInfo for down switch ports. Uses direct SMA to get this data. If used with -M, also gets PMA stats for down switch ports.
  • -F/--focus point β€” Specifies the focus area for report. Used for all reports except route to limit scope of report. Refer to Point Syntax for details. πŸ‘€ (it's down below, don't worry)

πŸŽ€ -h and -p options permit a variety of selections: πŸŽ€

  • -h 0 β€” First active port in system (Default).
  • -h 0 -p 0 β€” First active port in system.
  • -h x β€” First active port on HFI x.
  • -h x -p 0 β€” First active port on HFI x.
  • -h 0 -p y β€” Port y within system (no matter which ports are active).
  • -h x -p y β€” HFI x, port y.

πŸ¦‹ Point Syntax πŸ¦‹

Okay so this is the part where you point at stuff and the tool goes "say less." πŸ’…

  • gid:value β€” value is numeric port GID of form: subnet:guid.
  • lid:value β€” value is numeric LID.
  • lid:value:node β€” value is numeric LID, selects entire node with given LID.
  • lid:value:port:value2 β€” value is numeric LID of node, value2 is port number.
  • portguid:value β€” value is numeric port GUID.
  • nodeguid:value β€” value is numeric node GUID.
  • nodeguid:value1:port:value2 β€” value1 is numeric node GUID, value2 is port number.
  • iocguid:value β€” value is numeric IOC GUID.
  • iocguid:value1:port:value2 β€” value1 is numeric IOC GUID, value2 is port number.
  • systemguid:value β€” value is numeric system image GUID.
  • systemguid:value1:port:value2 β€” value1 is the numeric system image GUID, value2 is port number.
  • ioc:value β€” value is IOC Profile ID String (IOC Name).
  • ioc:value1:port:value2 β€” value1 is IOC Profile ID String (IOC Name), value2 is port number.
  • iocpat:value β€” value is glob pattern for IOC Profile ID String (IOC Name).
  • iocpat:value1:port:value2 β€” value1 is glob pattern for IOC Profile ID String (IOC Name), value2 is port number.
  • ioctype:value β€” value is IOC type (SRP or OTHER).
  • ioctype:value1:port:value2 β€” value1 is IOC type (SRP or OTHER); value2 is port number.
  • node:value β€” value is node description (node name).
  • node:value1:port:value2 β€” value1 is node description (node name), value2 is port number.
  • nodepat:value β€” value is glob pattern for node description (node name).
  • nodepat:value1:port:value2 β€” value1 is the glob pattern for the node description (node name), value2 is port number.
  • nodedetpat:value β€” value is glob pattern for node details.
  • nodedetpat:value1:port:value2 β€” value1 is the glob pattern for the node details, value2 is port number.
  • nodetype:value β€” value is node type (SW or FI).
  • nodetype:value1:port:value2 β€” value1 is node type (SW or FI), value2 is port number.
  • rate:value β€” value is string for rate (25g, 50g, 75g, 100g), omits switch mgmt port 0.
  • portstate:value β€” value is a string for state (down, init, armed, active, notactive, initarmed).
  • portphysstate:value β€” value is a string for PHYs state (polling, disabled, training, linkup, recovery, offline, test)
  • mtucap:value β€” value is MTU size (2048, 4096, 8192, 10240), omits switch mgmt port 0.
  • labelpat:value β€” value is glob pattern for cable label.
  • lengthpat:value β€” value is glob pattern for cable length.
  • cabledetpat:value β€” value is glob pattern for cable details.
  • cabinflenpat:value β€” value is glob pattern for cable info length.
  • cabinfvendnamepat:value β€” value is glob pattern for cable info vendor name.
  • cabinfvendpnpat:value β€” value is glob pattern for cable info vendor part number.
  • cabinfvendrevpat:value β€” value is glob pattern for cable info vendor revision.
  • cabinfvendsnpat:value β€” value is glob pattern for cable info vendor serial number.
  • cabinftype:value β€” value is either optical, passive_copper, active_copper, or unknown.
  • linkdetpat:value β€” value is glob pattern for link details.
  • portdetpat:value β€” value is glob pattern for port details.
  • sm β€” Specifies the master subnet manager (SM). πŸ‘‘
  • smdetpat:value β€” value is glob pattern for SM details.
  • route:point1:point2 β€” Specifies all ports along the routes between the two given points.
  • led:value β€” value is either on or off for LED port beacon.
  • linkqual:value β€” Specifies the ports with a link quality equal to value.
  • linkqualLE:value β€” Specifies the ports with a link quality less than or equal to value.
  • linkqualGE:value β€” Specifies the ports with a link quality greater than or equal to value.
  • nodepatfile:FILENAME β€” Specifies the name of file with the list of nodepats or node descriptions.
  • nodepairpatfile:FILENAME β€” Specifies the name of file with the list of node pairs, separated by a colon.
  • ldr β€” Specifies the ports with a non-zero link down reason or neighbor link down reason.
  • ldr:value β€” Specifies the ports with a link down reason or neighbor link down reason equal to value.

🌈 Examples 🌈

List all the link errors in the fabric:

# List all the link errors in the fabric:

opaextracterror

List all the link errors related to a switch named "coresw1":

# List all the link errors related to a switch named "coresw1":

opaextracterror -F "node:coresw1"

List all the link errors for end-nodes:

# List all the link errors for end-nodes:

opaextracterror -F "nodetype:FI"

List all the link errors on the 2nd HFI's fabric of a multi-plane fabric:

# List all the link errors on the 2nd HFI's fabric of a multi-plane fabric:

opaextracterror -h 2

Bestie note: that -F "node:coresw1" vibe? That's the focus flag doing main character energy. Use it, don't abuse it. 🫢

Copyright(C) 2015-2019 Intel Corporation β€” yep, that's the official credit line, and this whole page is opaextracterror(8) from the IFSFFCLIRG man pages. Slay, go extract some errors, and don't forget to hydrate. πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’