Update text formatting for trap OIDs#911
Conversation
ec: split SNMP trap varbinds across visual lines in event message Trap events created from incoming SNMP traps concatenate all OID/value pairs into a single long line, which makes the Event Console message column hard to read when a trap carries many varbinds (typical for hardware traps from Dell iDRAC, HP iLO, Microsoft, VMware, etc.). Use the existing "\x01" line-break marker convention instead of ", " as the separator between varbinds. The GUI painter for the event_text column already converts "\x01" into "<br>" at render time (see cmk/gui/mkeventd/views.py), so this produces a visual line break per varbind in the Event Console without changing the on-disk format in any incompatible way. scrub_string() is applied per varbind rather than to the joined string, because it strips "\x01" (along with other control characters) to keep the line-oriented history files safe. Applying it before the join preserves the separator while still sanitising each individual OID/value pair. Note for rule authors: rules matching the previous ", " separator in trap message text need to be updated, as varbinds are now separated by "\x01" internally.
|
I have read the CLA Document and I hereby sign the CLA or my organization already has a signed CLA. You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot. |
|
Thank you for your contribution. This pull request has been marked as stale as it has not passed the automated tests and there was no activity for the last 14 days. This pull request will be closed due to inactivity after 60 days, if no action is taken. |
ec: split SNMP trap varbinds across visual lines in event message
Trap events created from incoming SNMP traps concatenate all OID/value pairs into a single long line, which makes the Event Console message column hard to read when a trap carries many varbinds (typical for hardware traps from Dell iDRAC, HP iLO, Microsoft, VMware, etc.).
Use the existing "\x01" line-break marker convention instead of ", " as the separator between varbinds. The GUI painter for the event_text column already converts "\x01" into "
" at render time (see cmk/gui/mkeventd/views.py), so this produces a visual line break per varbind in the Event Console without changing the on-disk format in any incompatible way.
scrub_string() is applied per varbind rather than to the joined string, because it strips "\x01" (along with other control characters) to keep the line-oriented history files safe. Applying it before the join preserves the separator while still sanitising each individual OID/value pair.
Note for rule authors: rules matching the previous ", " separator in trap message text need to be updated, as varbinds are now separated by "\x01" internally.
Thank you for your interest in contributing to Checkmk!
Consider looking into Readme regarding process details.
General information
Please give a brief summary of the affected device, software or appliance.
Keep in mind that we are experts in monitoring, but we cannot be experts on all supported devices.
A little context will help us assess your proposed change.
Bug reports
Please include:
Proposed changes
Sometimes it is hard for us to assess the quality of a fix.
While it may work for you, it is our job to ensure that it works for everybody.
These are some ways to help us: