moby--moby/daemon/logger/jsonfilelog
Sebastiaan van Stijn df650a1aeb
panic() instead of logrus.Fatal() in init funcs
Some packages were using `logrus.Fatal()` in init functions (which logs the error,
and (by default) calls `os.Exit(1)` after logging).

Given that logrus formatting and outputs have not yet been configured during the
initialization stage, it does not provide much benefits over a plain `panic()`.

This patch replaces some instances of `logrus.Fatal()` with `panic()`, which has
the added benefits of not introducing logrus as a dependency in some of these
packages, and also produces a stacktrace, which could help locating the problem
in the unlikely event an `init()` fails.

Before this change, an error would look like:

    $ dockerd
    FATA[0000] something bad happened

After this change, the same error looks like:

    $ dockerd
    panic: something bad happened

    goroutine 1 [running]:
      github.com/docker/docker/daemon/logger/awslogs.init.0()
        /go/src/github.com/docker/docker/daemon/logger/awslogs/cloudwatchlogs.go:128 +0x89

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-04-21 12:15:20 +02:00
..
jsonlog Reduce allocations for logfile reader 2020-04-08 12:24:31 -07:00
jsonfilelog.go panic() instead of logrus.Fatal() in init funcs 2022-04-21 12:15:20 +02:00
jsonfilelog_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
read.go jsonfile: more defensive reader implementation 2021-03-18 18:44:46 +00:00
read_test.go Fix handling for json-file io.UnexpectedEOF 2021-03-11 20:01:03 +00:00