prometheus / prometheus/node_exporter
[feature request] append the name of a pci device to node_pcidevice_info
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 13.8k
- Forks
- 2.7k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 8
Description
We can use /sys/class/{nvme,net,infiniband}to find out the name of a devcie, e.g.
# readlink /sys/class/net/eth0/device
../../../0001:90:00.0
# readlink /sys/class/nvme/nvme0/device
../../../0001:8f:00.0
User story:
Monitoring detected a sustained increase in node_ethtool_received_crc_errors_phy on interface eth0 on node <node-name>. Suspected physical NIC or cable failure. Use node_pcidevice_info to map eth0 → PCI BDF. Find out the physical location of the BDF via the BMC, and produce a location report for hardware replacement.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the node_pcidevice_info collector and review the /sys/class/{nvme,net,infiniband} device links described in the issue. Done means the metric exposes the PCI device name alongside the interface-to-PCI mapping needed to identify the physical hardware location.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, linux
- Domain
- observability, operating-systems
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100