pcie_errors plugin¶
| Plugin name | pcie_errors |
| Type | read |
| Callbacks | init, config, read, shutdown |
| Status | supported |
| Since | 5.10 |
| Copyright | 2019 Intel Corporation |
| Configuration | collectd.conf(5) |
The purpose of this feature is to monitor and report PCI Express errors. There are two mechanisms for error handling. First is base line which is mandatory for every PCIe device, but provides only limited information as there are only four error types. It resides in Device Status register of PCI Express capability. The second is extended capability with Advance Error Reporting. It can provide detailed information about errors set on device. Its occurrence is optional, and not every device provides this extended information.
Synopsis¶
see PCIe Errors High Level Design
<Plugin pcie_errors>
Source "sysfs"
AccessDir "/sys/bus/pci"
ReportMasked false
PersistentNotifications false
FirstFullRead false
LogFile "/var/log/syslog"
<MsgPattern "AER">
<Match>
Name "aer error"
Regex "AER:.*error received"
SubmatchIdx -1
</Match>
<Match>
Name "incident time"
Regex "(... .. ..:..:..) .* pcieport.*AER"
IsMandatory false
</Match>
<Match>
Name "root port"
Regex "pcieport (.*): AER:"
</Match>
<Match>
Name "device"
Regex " ([0-9a-fA-F:\\.]*): PCIe Bus Error"
</Match>
<Match>
Name "severity"
Regex "severity=([^,]*)"
</Match>
<Match>
Name "error type"
Regex "type=(.*),"
IsMandatory false
</Match>
<Match>
Name "id"
Regex ", id=(.*)"
</Match>
</MsgPattern>
</Plugin>
Parameters¶
needs to be added
Metrics¶
|
|
|
|
|
|
|
|
|---|---|---|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example Graph¶
None yet. Add one now!
Dependencies¶
Depends on sysfs and proc file systems
Caveats¶
History¶
See also¶
Configuration¶
Configuration options · from collectd.conf(5)
See this section in the full configuration reference
The pcie_errors plugin collects PCI Express errors from Device Status in Capability structure and from Advanced Error Reporting Extended Capability where available. At every read it polls config space of PCI Express devices and dispatches notification for every error that is set. It checks for new errors at every read. The device is indicated in plugin_instance according to format "domain:bus:dev.fn". Errors are divided into categories indicated by type_instance: "correctable", and for uncorrectable errors "non_fatal" or "fatal". Fatal errors are reported as NOTIF_FAILURE and all others as NOTIF_WARNING.
Synopsis:
<Plugin "pcie_errors">
Source "sysfs"
AccessDir "/sys/bus/pci"
ReportMasked false
PersistentNotifications false
</Plugin>
Options:
- Source sysfs|proc
- Use sysfs or proc to read data from /sysfs or /proc. The default value is sysfs.
- AccessDir dir
- Directory used to access device config space. It is optional and defaults to /sys/bus/pci for sysfs and to /proc/bus/pci for proc.
- ReportMasked false|true
- If true plugin will notify about errors that are set to masked in Error Mask register. Such errors are not reported to the PCI Express Root Complex. Defaults to false.
- PersistentNotifications false|true
- If false plugin will dispatch notification only on set/clear of error. The ones already reported will be ignored. Defaults to false.