ethextractmissinglinks(8)

πŸ“¦ version 12.1.0.1, in centos-stream 9, fedora 43, fedora 44, opensuse-leap 16.0

πŸ’– NAME πŸ’–

ethextractmissinglinks

okay so bestie, this one is a whole vibe: it produces a CSV file listing all or some of the links in the fabric 🌸

Real talk: ethextractmissinglinks is a front end to the ethreport tool. What it does is generate a report listing all or some of the links that are present in the topology file you hand it, but are missing in the actual fabric 😭. Like, the topology says this link should exist and the fabric is out here ghosting it.

The output? It can be imported into a spreadsheet or parsed by other scripts. Very demure, very machine-readable. πŸ’…


✨ Syntax ✨

ethextractmissinglinks [-T topology_input] [-o report]
[ethreport  options]

πŸŽ€ Options πŸŽ€

  • --help β€” Produces full help text. The classic. When in doubt, ask for help, it's giving self-care πŸ’–
  • -T/--topology topology_input β€” Specifies the topology file to verify against. Default is /etc/eth-tools/topology.xml πŸ—‚οΈ
  • -o/--output report β€” Specifies the report type for output. Default is the verifylinks report. Refer to Report Types for details, bestie, don't skip it πŸ‘€

🌈 ethreport options 🌈

The following options are passed to ethreport. This subset is considered typical and useful for this command. So like, these are the ones you'll actually reach for ✨

  • -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. '-' may be used as the snapshot_input to specify stdin. Yes, a literal dash, stdin girlies rise 🫢
  • -E/--eth config_file β€” Specifies the Ethernet Mgt configuration file. Default is the /etc/eth-tools/mgt_config.xml file. πŸ“„
  • -p plane β€” Name of the enabled plane defined in Mgt config file, default is the first enabled plane. πŸ‘‘
  • -F/--focus point β€” Specifies the focus area for report. Used to limit scope of report. Refer to Point Syntax for details. This is how you narrow it down to just your fave πŸ’…

πŸ”₯ Report Types πŸ”₯

  • verifylinks β€” Compares fabric (or snapshot) links to supplied topology and identifies differences and omissions. The default, the moment, the main character. πŸ‘‘
  • verifyextlinks β€” Compares fabric (or snapshot) links to supplied topology and identifies differences and omissions. Limits analysis to links external to systems. πŸ¦‹
  • verifyniclinks β€” Compares fabric (or snapshot) links to supplied topology and identify differences and omissions. Limits analysis to links to NICs. πŸ”Œ
  • verifyislinks β€” Compares fabric (or snapshot) links to supplied topology and identify differences and omissions. Limits analysis to inter-switch links. 🧚
  • verifyextislinks β€” Compares fabric (or snapshot) links to supplied topology and identify differences and omissions. Limits analysis to inter-switch links external to systems. 🌈

πŸ‘‘ Point Syntax πŸ‘‘

the way that there are SO many ways to point at a thing. here's the whole menu, no skips, no edits πŸ“

  • ifid:value β€” value is numeric ifid.
  • ifid:value:node β€” value is numeric ifid, selects node with given ifid.
  • ifid:value:port:value2 β€” value is numeric ifid of node, value2 is port number.
  • ifid:value:portid:value2 β€” value is numeric ifid of node, value2 is port id.
  • mgmtifaddr:value β€” value is numeric port mgmtifaddr.
  • ifaddr:value β€” value is numeric node ifaddr.
  • ifaddr:value1:port:value2 β€” value1 is numeric node ifaddr, value2 is port number.
  • ifaddr:value1:portid:value2 β€” value1 is numeric node ifaddr, value2 is port id.
  • chassisid:value β€” value is numeric chassisid.
  • chassisid:value1:port:value2 β€” value1 is numeric chassisid, value2 is port number.
  • chassisid:value1:portid:value2 β€” value1 is numeric chassisid, value2 is port id.
  • node:value β€” value is node description (node name).
  • node:value1:port:value2 β€” value1 is node description (node name), value2 is port number.
  • node:value1:portid:value2 β€” value1 is node description (node name), value2 is port id.
  • 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.
  • nodepat:value1:portid:value2 β€” value1 is the glob pattern for the node description (node name), value2 is port id.
  • 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.
  • nodedetpat:value1:portid:value2 β€” value1 is the glob pattern for the node details, value2 is port id.
  • nodetype:value β€” value is node type (SW or NIC).
  • nodetype:value1:port:value2 β€” value1 is node type (SW or NIC), value2 is port number.
  • nodetype:value1:portid:value2 β€” value1 is node type (SW or NIC), value2 is port id.
  • rate:value β€” value is string for rate (25g, 50g, 75g, 100g), omits switch mgmt port 0.
  • portstate:value β€” value is a string for state (up, down, testing, unknown, dormant, notactive).
  • portphysstate:value β€” value is a string for PHYs state (other, unknown, operational, standby, shutdown, reset).
  • mtucap:value β€” value is MTU size (maximum size 65535), omits switch mgmt port 0.
  • linkdetpat:value β€” value is glob pattern for link details.
  • portdetpat:value β€” value is glob pattern for port details.
  • 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 missing links in the fabric:

ethextractmissinglinks

List all the missing links to a switch named "coresw1":

ethextractmissinglinks -T topology.plane.xml -F "node:coresw1"

List all the missing connections to end-nodes:

ethextractmissinglinks -o verifyniclinks

List all the missing links between two switches:

ethextractmissinglinks -o verifyislinks -T topology.plane.xml

okay that's the whole page, you ate it, no crumbs 🫢</purl> this lil gem comes to you from EFSFFCLIRG (Man Page), and the copyright situation is Copyright(C) 2020-2024 Intel Corporation β€” big ups, no cap. go find those missing links bestie, iykyk πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from