diff options
author | W. Trevor King <wking@tremily.us> | 2018-11-19 13:36:31 -0800 |
---|---|---|
committer | W. Trevor King <wking@tremily.us> | 2019-01-08 21:06:17 -0800 |
commit | c441d51e058e4a0c531f48f7d7269339e6b2d6a1 (patch) | |
tree | 68d3a087faf67403d8b1e2c75a21ae4c8474abe7 /pkg/hooks/exec/exec_test.go | |
parent | f6a2b6bf2b923a148792cc141ec4c27b5889c077 (diff) | |
download | podman-c441d51e058e4a0c531f48f7d7269339e6b2d6a1.tar.gz podman-c441d51e058e4a0c531f48f7d7269339e6b2d6a1.tar.bz2 podman-c441d51e058e4a0c531f48f7d7269339e6b2d6a1.zip |
hooks/exec/runtimeconfigfilter: Log config changes
To make it easier to notice and track down errors (or other surprising
behavior) due to precreate hooks. With this commit, the logged
messages look like:
time="2018-11-19T13:35:18-08:00" level=debug msg="precreate hook 0 made configuration changes:
--- Old
+++ New
@@ -18,3 +18,3 @@
Namespaces: ([]specs.LinuxNamespace) <nil>,
- Devices: ([]specs.LinuxDevice) (len=1) {
+ Devices: ([]specs.LinuxDevice) (len=2) {
(specs.LinuxDevice) {
@@ -24,2 +24,11 @@
Minor: (int64) 229,
+ FileMode: (*os.FileMode)(-rw-------),
+ UID: (*uint32)(0),
+ GID: (*uint32)(0)
+ },
+ (specs.LinuxDevice) {
+ Path: (string) (len=8) "/dev/sda",
+ Type: (string) (len=1) "b",
+ Major: (int64) 8,
+ Minor: (int64) 0,
FileMode: (*os.FileMode)(-rw-------),
"
time="2018-11-19T13:35:18-08:00" level=debug msg="precreate hook 1 made configuration changes:
--- Old
+++ New
@@ -29,3 +29,3 @@
(specs.LinuxDevice) {
- Path: (string) (len=8) "/dev/sda",
+ Path: (string) (len=8) "/dev/sdb",
Type: (string) (len=1) "b",
"
Ideally those logs would include the container ID, but we don't have
access to that down at this level. I'm not sure if it's worth
teaching RuntimeConfigFilter to accept a *logrus.Entry (so the caller
could use WithFields [1]) or to use a generic logging interface (like
go-log [2]). For now, I've left the container ID unlogged here.
The spew/difflib implementation is based on stretchr/testify/assert,
but I think the ~10 lines I'm borrowing are probably small enough to
stay under the "all copies or substantial portions" condition in its
MIT license.
[1]: https://godoc.org/github.com/sirupsen/logrus#WithFields
[2]: https://github.com/go-log/log
Signed-off-by: W. Trevor King <wking@tremily.us>
Diffstat (limited to 'pkg/hooks/exec/exec_test.go')
0 files changed, 0 insertions, 0 deletions