This fix tries to fix logrus formatting by removing `f` from
`logrus.[Error|Warn|Debug|Fatal|Panic|Info]f` when formatting string
is not present.
This fix fixes #23459.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
... | ... |
@@ -46,7 +46,7 @@ func (cli *DockerCli) HoldHijackedConnection(ctx context.Context, tty bool, inpu |
46 | 46 |
_, err = stdcopy.StdCopy(outputStream, errorStream, resp.Reader) |
47 | 47 |
} |
48 | 48 |
|
49 |
- logrus.Debugf("[hijack] End of stdout") |
|
49 |
+ logrus.Debug("[hijack] End of stdout") |
|
50 | 50 |
receiveStdout <- err |
51 | 51 |
}() |
52 | 52 |
} |
... | ... |
@@ -62,7 +62,7 @@ func (cli *DockerCli) HoldHijackedConnection(ctx context.Context, tty bool, inpu |
62 | 62 |
cli.restoreTerminal(inputStream) |
63 | 63 |
}) |
64 | 64 |
} |
65 |
- logrus.Debugf("[hijack] End of stdin") |
|
65 |
+ logrus.Debug("[hijack] End of stdin") |
|
66 | 66 |
} |
67 | 67 |
|
68 | 68 |
if err := resp.CloseWrite(); err != nil { |
... | ... |
@@ -163,7 +163,7 @@ func (s *Server) InitRouter(enableProfiler bool, routers ...router.Router) { |
163 | 163 |
func (s *Server) createMux() *mux.Router { |
164 | 164 |
m := mux.NewRouter() |
165 | 165 |
|
166 |
- logrus.Debugf("Registering routers") |
|
166 |
+ logrus.Debug("Registering routers") |
|
167 | 167 |
for _, apiRouter := range s.routers { |
168 | 168 |
for _, r := range apiRouter.Routes() { |
169 | 169 |
f := s.makeHTTPHandler(r.Handler()) |
... | ... |
@@ -284,12 +284,12 @@ func (h *handler) Execute(_ []string, r <-chan svc.ChangeRequest, s chan<- svc.S |
284 | 284 |
// Wait for initialization to complete. |
285 | 285 |
failed := <-h.tosvc |
286 | 286 |
if failed { |
287 |
- logrus.Debugf("Aborting service start due to failure during initializtion") |
|
287 |
+ logrus.Debug("Aborting service start due to failure during initializtion") |
|
288 | 288 |
return true, 1 |
289 | 289 |
} |
290 | 290 |
|
291 | 291 |
s <- svc.Status{State: svc.Running, Accepts: svc.AcceptStop | svc.AcceptShutdown | svc.Accepted(windows.SERVICE_ACCEPT_PARAMCHANGE)} |
292 |
- logrus.Debugf("Service running") |
|
292 |
+ logrus.Debug("Service running") |
|
293 | 293 |
Loop: |
294 | 294 |
for { |
295 | 295 |
select { |
... | ... |
@@ -393,7 +393,7 @@ func AttachStreams(ctx context.Context, streamConfig *runconfig.StreamConfig, op |
393 | 393 |
if stdin == nil || !openStdin { |
394 | 394 |
return |
395 | 395 |
} |
396 |
- logrus.Debugf("attach: stdin: begin") |
|
396 |
+ logrus.Debug("attach: stdin: begin") |
|
397 | 397 |
|
398 | 398 |
var err error |
399 | 399 |
if tty { |
... | ... |
@@ -419,7 +419,7 @@ func AttachStreams(ctx context.Context, streamConfig *runconfig.StreamConfig, op |
419 | 419 |
cStderr.Close() |
420 | 420 |
} |
421 | 421 |
} |
422 |
- logrus.Debugf("attach: stdin: end") |
|
422 |
+ logrus.Debug("attach: stdin: end") |
|
423 | 423 |
wg.Done() |
424 | 424 |
}() |
425 | 425 |
|
... | ... |
@@ -28,7 +28,7 @@ func (s *Health) String() string { |
28 | 28 |
// it returns nil. |
29 | 29 |
func (s *Health) OpenMonitorChannel() chan struct{} { |
30 | 30 |
if s.stop == nil { |
31 |
- logrus.Debugf("OpenMonitorChannel") |
|
31 |
+ logrus.Debug("OpenMonitorChannel") |
|
32 | 32 |
s.stop = make(chan struct{}) |
33 | 33 |
return s.stop |
34 | 34 |
} |
... | ... |
@@ -38,12 +38,12 @@ func (s *Health) OpenMonitorChannel() chan struct{} { |
38 | 38 |
// CloseMonitorChannel closes any existing monitor channel. |
39 | 39 |
func (s *Health) CloseMonitorChannel() { |
40 | 40 |
if s.stop != nil { |
41 |
- logrus.Debugf("CloseMonitorChannel: waiting for probe to stop") |
|
41 |
+ logrus.Debug("CloseMonitorChannel: waiting for probe to stop") |
|
42 | 42 |
// This channel does not buffer. Once the write succeeds, the monitor |
43 | 43 |
// has read the stop request and will not make any further updates |
44 | 44 |
// to c.State.Health. |
45 | 45 |
s.stop <- struct{}{} |
46 | 46 |
s.stop = nil |
47 |
- logrus.Debugf("CloseMonitorChannel done") |
|
47 |
+ logrus.Debug("CloseMonitorChannel done") |
|
48 | 48 |
} |
49 | 49 |
} |
... | ... |
@@ -114,7 +114,7 @@ func (daemon *Daemon) containerAttach(c *container.Container, stdin io.ReadClose |
114 | 114 |
r, w := io.Pipe() |
115 | 115 |
go func() { |
116 | 116 |
defer w.Close() |
117 |
- defer logrus.Debugf("Closing buffered stdin pipe") |
|
117 |
+ defer logrus.Debug("Closing buffered stdin pipe") |
|
118 | 118 |
io.Copy(w, stdin) |
119 | 119 |
}() |
120 | 120 |
stdinPipe = r |
... | ... |
@@ -175,7 +175,7 @@ func (d *Daemon) ContainerExecStart(ctx context.Context, name string, stdin io.R |
175 | 175 |
r, w := io.Pipe() |
176 | 176 |
go func() { |
177 | 177 |
defer w.Close() |
178 |
- defer logrus.Debugf("Closing buffered stdin pipe") |
|
178 |
+ defer logrus.Debug("Closing buffered stdin pipe") |
|
179 | 179 |
pools.Copy(w, stdin) |
180 | 180 |
}() |
181 | 181 |
cStdin = r |
... | ... |
@@ -699,7 +699,7 @@ func (devices *DeviceSet) startDeviceDeletionWorker() { |
699 | 699 |
return |
700 | 700 |
} |
701 | 701 |
|
702 |
- logrus.Debugf("devmapper: Worker to cleanup deleted devices started") |
|
702 |
+ logrus.Debug("devmapper: Worker to cleanup deleted devices started") |
|
703 | 703 |
for range devices.deletionWorkerTicker.C { |
704 | 704 |
devices.cleanupDeletedDevices() |
705 | 705 |
} |
... | ... |
@@ -1002,7 +1002,7 @@ func (devices *DeviceSet) saveBaseDeviceUUID(baseInfo *devInfo) error { |
1002 | 1002 |
} |
1003 | 1003 |
|
1004 | 1004 |
func (devices *DeviceSet) createBaseImage() error { |
1005 |
- logrus.Debugf("devmapper: Initializing base device-mapper thin volume") |
|
1005 |
+ logrus.Debug("devmapper: Initializing base device-mapper thin volume") |
|
1006 | 1006 |
|
1007 | 1007 |
// Create initial device |
1008 | 1008 |
info, err := devices.createRegisterDevice("") |
... | ... |
@@ -1010,7 +1010,7 @@ func (devices *DeviceSet) createBaseImage() error { |
1010 | 1010 |
return err |
1011 | 1011 |
} |
1012 | 1012 |
|
1013 |
- logrus.Debugf("devmapper: Creating filesystem on base device-mapper thin volume") |
|
1013 |
+ logrus.Debug("devmapper: Creating filesystem on base device-mapper thin volume") |
|
1014 | 1014 |
|
1015 | 1015 |
if err := devices.activateDeviceIfNeeded(info, false); err != nil { |
1016 | 1016 |
return err |
... | ... |
@@ -1188,7 +1188,7 @@ func (devices *DeviceSet) setupBaseImage() error { |
1188 | 1188 |
return nil |
1189 | 1189 |
} |
1190 | 1190 |
|
1191 |
- logrus.Debugf("devmapper: Removing uninitialized base image") |
|
1191 |
+ logrus.Debug("devmapper: Removing uninitialized base image") |
|
1192 | 1192 |
// If previous base device is in deferred delete state, |
1193 | 1193 |
// that needs to be cleaned up first. So don't try |
1194 | 1194 |
// deferred deletion. |
... | ... |
@@ -1455,7 +1455,7 @@ func (devices *DeviceSet) refreshTransaction(DeviceID int) error { |
1455 | 1455 |
|
1456 | 1456 |
func (devices *DeviceSet) closeTransaction() error { |
1457 | 1457 |
if err := devices.updatePoolTransactionID(); err != nil { |
1458 |
- logrus.Debugf("devmapper: Failed to close Transaction") |
|
1458 |
+ logrus.Debug("devmapper: Failed to close Transaction") |
|
1459 | 1459 |
return err |
1460 | 1460 |
} |
1461 | 1461 |
return nil |
... | ... |
@@ -1644,7 +1644,7 @@ func (devices *DeviceSet) initDevmapper(doInit bool) error { |
1644 | 1644 |
if !devicemapper.LibraryDeferredRemovalSupport { |
1645 | 1645 |
return fmt.Errorf("devmapper: Deferred removal can not be enabled as libdm does not support it") |
1646 | 1646 |
} |
1647 |
- logrus.Debugf("devmapper: Deferred removal support enabled.") |
|
1647 |
+ logrus.Debug("devmapper: Deferred removal support enabled.") |
|
1648 | 1648 |
devices.deferredRemove = true |
1649 | 1649 |
} |
1650 | 1650 |
|
... | ... |
@@ -1652,7 +1652,7 @@ func (devices *DeviceSet) initDevmapper(doInit bool) error { |
1652 | 1652 |
if !devices.deferredRemove { |
1653 | 1653 |
return fmt.Errorf("devmapper: Deferred deletion can not be enabled as deferred removal is not enabled. Enable deferred removal using --storage-opt dm.use_deferred_removal=true parameter") |
1654 | 1654 |
} |
1655 |
- logrus.Debugf("devmapper: Deferred deletion support enabled.") |
|
1655 |
+ logrus.Debug("devmapper: Deferred deletion support enabled.") |
|
1656 | 1656 |
devices.deferredDelete = true |
1657 | 1657 |
} |
1658 | 1658 |
|
... | ... |
@@ -1716,7 +1716,7 @@ func (devices *DeviceSet) initDevmapper(doInit bool) error { |
1716 | 1716 |
|
1717 | 1717 |
// If the pool doesn't exist, create it |
1718 | 1718 |
if !poolExists && devices.thinPoolDevice == "" { |
1719 |
- logrus.Debugf("devmapper: Pool doesn't exist. Creating it.") |
|
1719 |
+ logrus.Debug("devmapper: Pool doesn't exist. Creating it.") |
|
1720 | 1720 |
|
1721 | 1721 |
var ( |
1722 | 1722 |
dataFile *os.File |
... | ... |
@@ -2044,8 +2044,8 @@ func (devices *DeviceSet) DeleteDevice(hash string, syncDelete bool) error { |
2044 | 2044 |
} |
2045 | 2045 |
|
2046 | 2046 |
func (devices *DeviceSet) deactivatePool() error { |
2047 |
- logrus.Debugf("devmapper: deactivatePool()") |
|
2048 |
- defer logrus.Debugf("devmapper: deactivatePool END") |
|
2047 |
+ logrus.Debug("devmapper: deactivatePool()") |
|
2048 |
+ defer logrus.Debug("devmapper: deactivatePool END") |
|
2049 | 2049 |
devname := devices.getPoolDevName() |
2050 | 2050 |
|
2051 | 2051 |
devinfo, err := devicemapper.GetInfo(devname) |
... | ... |
@@ -2304,7 +2304,7 @@ func (devices *DeviceSet) UnmountDevice(hash, mountPath string) error { |
2304 | 2304 |
if err := syscall.Unmount(mountPath, syscall.MNT_DETACH); err != nil { |
2305 | 2305 |
return err |
2306 | 2306 |
} |
2307 |
- logrus.Debugf("devmapper: Unmount done") |
|
2307 |
+ logrus.Debug("devmapper: Unmount done") |
|
2308 | 2308 |
|
2309 | 2309 |
if err := devices.deactivateDevice(info); err != nil { |
2310 | 2310 |
return err |
... | ... |
@@ -132,7 +132,7 @@ func (gdw *NaiveDiffDriver) ApplyDiff(id, parent string, diff archive.Reader) (s |
132 | 132 |
options := &archive.TarOptions{UIDMaps: gdw.uidMaps, |
133 | 133 |
GIDMaps: gdw.gidMaps} |
134 | 134 |
start := time.Now().UTC() |
135 |
- logrus.Debugf("Start untar layer") |
|
135 |
+ logrus.Debug("Start untar layer") |
|
136 | 136 |
if size, err = ApplyUncompressedLayer(layerFs, diff, options); err != nil { |
137 | 137 |
return |
138 | 138 |
} |
... | ... |
@@ -154,10 +154,10 @@ func monitor(d *Daemon, c *container.Container, stop chan struct{}, probe probe) |
154 | 154 |
for { |
155 | 155 |
select { |
156 | 156 |
case <-stop: |
157 |
- logrus.Debugf("Stop healthcheck monitoring (received while idle)") |
|
157 |
+ logrus.Debug("Stop healthcheck monitoring (received while idle)") |
|
158 | 158 |
return |
159 | 159 |
case <-time.After(probeInterval): |
160 |
- logrus.Debugf("Running health check...") |
|
160 |
+ logrus.Debug("Running health check...") |
|
161 | 161 |
startTime := time.Now() |
162 | 162 |
ctx, cancelProbe := context.WithTimeout(context.Background(), probeTimeout) |
163 | 163 |
results := make(chan *types.HealthcheckResult) |
... | ... |
@@ -180,7 +180,7 @@ func monitor(d *Daemon, c *container.Container, stop chan struct{}, probe probe) |
180 | 180 |
}() |
181 | 181 |
select { |
182 | 182 |
case <-stop: |
183 |
- logrus.Debugf("Stop healthcheck monitoring (received while probing)") |
|
183 |
+ logrus.Debug("Stop healthcheck monitoring (received while probing)") |
|
184 | 184 |
// Stop timeout and kill probe, but don't wait for probe to exit. |
185 | 185 |
cancelProbe() |
186 | 186 |
return |
... | ... |
@@ -189,7 +189,7 @@ func monitor(d *Daemon, c *container.Container, stop chan struct{}, probe probe) |
189 | 189 |
// Stop timeout |
190 | 190 |
cancelProbe() |
191 | 191 |
case <-ctx.Done(): |
192 |
- logrus.Debugf("Health check taking too long") |
|
192 |
+ logrus.Debug("Health check taking too long") |
|
193 | 193 |
handleProbeResult(d, c, &types.HealthcheckResult{ |
194 | 194 |
ExitCode: -1, |
195 | 195 |
Output: fmt.Sprintf("Health check exceeded timeout (%v)", probeTimeout), |
... | ... |
@@ -89,7 +89,7 @@ func (p *v1Puller) pullRepository(ctx context.Context, ref reference.Named) erro |
89 | 89 |
return err |
90 | 90 |
} |
91 | 91 |
|
92 |
- logrus.Debugf("Retrieving the tag list") |
|
92 |
+ logrus.Debug("Retrieving the tag list") |
|
93 | 93 |
var tagsList map[string]string |
94 | 94 |
if !isTagged { |
95 | 95 |
tagsList, err = p.session.GetRemoteTags(repoData.Endpoints, p.repoInfo) |
... | ... |
@@ -208,7 +208,7 @@ func (ld *v2LayerDescriptor) Download(ctx context.Context, progressOutput progre |
208 | 208 |
size = 0 |
209 | 209 |
} else { |
210 | 210 |
if size != 0 && offset > size { |
211 |
- logrus.Debugf("Partial download is larger than full blob. Starting over") |
|
211 |
+ logrus.Debug("Partial download is larger than full blob. Starting over") |
|
212 | 212 |
offset = 0 |
213 | 213 |
if err := ld.truncateDownloadFile(); err != nil { |
214 | 214 |
return nil, 0, xfer.DoNotRetry{Err: err} |
... | ... |
@@ -130,7 +130,7 @@ func DetectCompression(source []byte) Compression { |
130 | 130 |
Xz: {0xFD, 0x37, 0x7A, 0x58, 0x5A, 0x00}, |
131 | 131 |
} { |
132 | 132 |
if len(source) < len(m) { |
133 |
- logrus.Debugf("Len too short") |
|
133 |
+ logrus.Debug("Len too short") |
|
134 | 134 |
continue |
135 | 135 |
} |
136 | 136 |
if bytes.Compare(m, source[:len(m)]) == 0 { |
... | ... |
@@ -408,7 +408,7 @@ func createTarFile(path, extractDir string, hdr *tar.Header, reader io.Reader, L |
408 | 408 |
} |
409 | 409 |
|
410 | 410 |
case tar.TypeXGlobalHeader: |
411 |
- logrus.Debugf("PAX Global Extended Headers found and ignored") |
|
411 |
+ logrus.Debug("PAX Global Extended Headers found and ignored") |
|
412 | 412 |
return nil |
413 | 413 |
|
414 | 414 |
default: |
... | ... |
@@ -155,7 +155,7 @@ func (rm *responseModifier) Hijack() (net.Conn, *bufio.ReadWriter, error) { |
155 | 155 |
func (rm *responseModifier) CloseNotify() <-chan bool { |
156 | 156 |
closeNotifier, ok := rm.rw.(http.CloseNotifier) |
157 | 157 |
if !ok { |
158 |
- logrus.Errorf("Internal response writer doesn't support the CloseNotifier interface") |
|
158 |
+ logrus.Error("Internal response writer doesn't support the CloseNotifier interface") |
|
159 | 159 |
return nil |
160 | 160 |
} |
161 | 161 |
return closeNotifier.CloseNotify() |
... | ... |
@@ -165,7 +165,7 @@ func (rm *responseModifier) CloseNotify() <-chan bool { |
165 | 165 |
func (rm *responseModifier) Flush() { |
166 | 166 |
flusher, ok := rm.rw.(http.Flusher) |
167 | 167 |
if !ok { |
168 |
- logrus.Errorf("Internal response writer doesn't support the Flusher interface") |
|
168 |
+ logrus.Error("Internal response writer doesn't support the Flusher interface") |
|
169 | 169 |
return |
170 | 170 |
} |
171 | 171 |
|
... | ... |
@@ -279,7 +279,7 @@ func LogInit(logger DevmapperLogger) { |
279 | 279 |
// SetDevDir sets the dev folder for the device mapper library (usually /dev). |
280 | 280 |
func SetDevDir(dir string) error { |
281 | 281 |
if res := DmSetDevDir(dir); res != 1 { |
282 |
- logrus.Debugf("devicemapper: Error dm_set_dev_dir") |
|
282 |
+ logrus.Debug("devicemapper: Error dm_set_dev_dir") |
|
283 | 283 |
return ErrSetDevDir |
284 | 284 |
} |
285 | 285 |
return nil |
... | ... |
@@ -47,7 +47,7 @@ func openNextAvailableLoopback(index int, sparseFile *os.File) (loopFile *os.Fil |
47 | 47 |
fi, err := os.Stat(target) |
48 | 48 |
if err != nil { |
49 | 49 |
if os.IsNotExist(err) { |
50 |
- logrus.Errorf("There are no more loopback devices available.") |
|
50 |
+ logrus.Error("There are no more loopback devices available.") |
|
51 | 51 |
} |
52 | 52 |
return nil, ErrAttachLoopbackDevice |
53 | 53 |
} |
... | ... |
@@ -127,7 +127,7 @@ func AttachLoopDevice(sparseName string) (loop *os.File, err error) { |
127 | 127 |
|
128 | 128 |
// If the call failed, then free the loopback device |
129 | 129 |
if err := ioctlLoopClrFd(loopFile.Fd()); err != nil { |
130 |
- logrus.Errorf("Error while cleaning up the loopback device") |
|
130 |
+ logrus.Error("Error while cleaning up the loopback device") |
|
131 | 131 |
} |
132 | 132 |
loopFile.Close() |
133 | 133 |
return nil, ErrAttachLoopbackDevice |
... | ... |
@@ -49,11 +49,11 @@ func Trap(cleanup func()) { |
49 | 49 |
} |
50 | 50 |
} else { |
51 | 51 |
// 3 SIGTERM/INT signals received; force exit without cleanup |
52 |
- logrus.Infof("Forcing docker daemon shutdown without cleanup; 3 interrupts received") |
|
52 |
+ logrus.Info("Forcing docker daemon shutdown without cleanup; 3 interrupts received") |
|
53 | 53 |
} |
54 | 54 |
case syscall.SIGQUIT: |
55 | 55 |
DumpStacks() |
56 |
- logrus.Infof("Forcing docker daemon shutdown without cleanup on SIGQUIT") |
|
56 |
+ logrus.Info("Forcing docker daemon shutdown without cleanup on SIGQUIT") |
|
57 | 57 |
} |
58 | 58 |
//for the SIGINT/TERM, and SIGQUIT non-clean shutdown case, exit with 128 + signal # |
59 | 59 |
os.Exit(128 + int(sig.(syscall.Signal))) |
... | ... |
@@ -302,10 +302,10 @@ func (r *Session) GetRemoteImageLayer(imgID, registry string, imgSize int64) (io |
302 | 302 |
} |
303 | 303 |
|
304 | 304 |
if res.Header.Get("Accept-Ranges") == "bytes" && imgSize > 0 { |
305 |
- logrus.Debugf("server supports resume") |
|
305 |
+ logrus.Debug("server supports resume") |
|
306 | 306 |
return httputils.ResumableRequestReaderWithInitialResponse(r.client, req, 5, imgSize, res), nil |
307 | 307 |
} |
308 |
- logrus.Debugf("server doesn't support resume") |
|
308 |
+ logrus.Debug("server doesn't support resume") |
|
309 | 309 |
return res.Body, nil |
310 | 310 |
} |
311 | 311 |
|