-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
zed syslog entries drop important info #10967
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm all for this. It just looks like there are a couple of existing testing which need to be updated to expect the new defaults.
Tests with results other than PASS that are unexpected:
FAIL events/events_001_pos (expected PASS)
FAIL events/zed_rc_filter (expected PASS)
@mattmacy @freqlabs What do we think of moving /etc/devd/zfs.conf into the openzfs repo, so we can track more closely changes like these? |
Fine with me, especially if we can add some tests with that. I don't think anything currently tests the devd events for ZFS. |
Looks like there are still some intermittent failures for ZTS |
Before my config change, the steady stream of history events had a side effect of pushing out the time to settle the log. When those history events were removed, the log was copied sooner and missed the tail event the test was expecting. |
Codecov Report
@@ Coverage Diff @@
## master #10967 +/- ##
==========================================
- Coverage 79.69% 79.52% -0.17%
==========================================
Files 396 396
Lines 125402 125402
==========================================
- Hits 99936 99732 -204
- Misses 25466 25670 +204
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
Signed-off-by: Don Brady <[email protected]>
Added This make the test less flaky and shortens the actual test turnover time. |
# wait for 'event' to show up in the log 'file' | ||
function file_wait_event # file event timeout | ||
{ | ||
file=$1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be unused. Perhaps have it default to $ZED_DEBUG_LOG?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are still some external callers to file_wait
that can possibly be converted to file_wait_event
so I left the file input available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think having an unused variable invites confusion. Even in my initial comment I didn't clearly understand what its purpose was intended to be.
Signed-off-by: Don Brady <[email protected]>
Signed-off-by: Don Brady <[email protected]>
Signed-off-by: Don Brady <[email protected]>
ZED will log zevents summaries to the syslog, however the log entries tend to drop event details that can be useful for diagnosis. This is especially true for ereport events, like io, checksum, and delay. Update the all-syslog.sh script to log additional event information. Add an optional config option, ZED_SYSLOG_DISPLAY_GUIDS, to zed.rc for choosing GUIDs over names for pool and vdev. Change the default ZED_SYSLOG_SUBCLASS_EXCLUDE to exclude history_event events. These events tend to be frequent, convey no meaningful info, and are already logged in the zpool history. Reviewed-by: John Kennedy <[email protected]> Reviewed-by: Pavel Zakharov <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Don Brady <[email protected]> Closes #10967
ZED will log zevents summaries to the syslog, however the log entries tend to drop event details that can be useful for diagnosis. This is especially true for ereport events, like io, checksum, and delay. Update the all-syslog.sh script to log additional event information. Add an optional config option, ZED_SYSLOG_DISPLAY_GUIDS, to zed.rc for choosing GUIDs over names for pool and vdev. Change the default ZED_SYSLOG_SUBCLASS_EXCLUDE to exclude history_event events. These events tend to be frequent, convey no meaningful info, and are already logged in the zpool history. Reviewed-by: John Kennedy <[email protected]> Reviewed-by: Pavel Zakharov <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Don Brady <[email protected]> Closes openzfs#10967
ZED will log zevents summaries to the syslog, however the log entries tend to drop event details that can be useful for diagnosis. This is especially true for ereport events, like io, checksum, and delay. Update the all-syslog.sh script to log additional event information. Add an optional config option, ZED_SYSLOG_DISPLAY_GUIDS, to zed.rc for choosing GUIDs over names for pool and vdev. Change the default ZED_SYSLOG_SUBCLASS_EXCLUDE to exclude history_event events. These events tend to be frequent, convey no meaningful info, and are already logged in the zpool history. Reviewed-by: John Kennedy <[email protected]> Reviewed-by: Pavel Zakharov <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Don Brady <[email protected]> Closes openzfs#10967
Motivation and Context
ZED will log zevents summaries to the syslog, however the log entries tend to drop event details that can be useful for diagnosis. This is especially true for ereport events, like
io
,checksum
, anddelay
.A typical ereport zevent entry looked like:
I propose that we add additional event information, like:
So that the above entries become:
Description
Updated the
all-syslog.sh
script to log additional event information.Added an optional config option,
ZED_SYSLOG_DISPLAY_GUIDS
, tozed.rc
for choosing GUIDs over names for pool and vdev.Changed the default
ZED_SYSLOG_SUBCLASS_EXCLUDE
to excludehistory_event
events. These events tend to be frequent, convey no meaningful info, and are already logged in the zpool history.How Has This Been Tested?
Used ZTS zpool_events suite to generate events and confirmed that new information is now logged to the syslog.
Every new pair that was added was accounted for.
Checked script with shellcheck
Types of changes
Checklist:
Signed-off-by
.