diff --git a/container/common/fsHandler.go b/container/common/fsHandler.go index 451395f6..cae0bc4b 100644 --- a/container/common/fsHandler.go +++ b/container/common/fsHandler.go @@ -51,7 +51,6 @@ type realFsHandler struct { } const ( - longOp = time.Second timeout = 2 * time.Minute maxBackoffFactor = 20 ) @@ -111,6 +110,7 @@ func (fh *realFsHandler) update() error { func (fh *realFsHandler) trackUsage() { fh.update() + longOp := time.Second for { select { case <-fh.stopChan: @@ -128,7 +128,11 @@ func (fh *realFsHandler) trackUsage() { } duration := time.Since(start) if duration > longOp { - glog.V(2).Infof("du and find on following dirs took %v: %v", duration, []string{fh.rootfs, fh.extraDir}) + // adapt longOp time so that message doesn't continue to print + // if the long duration is persistent either because of slow + // disk or lots of containers. + longOp = longOp + time.Second + glog.V(2).Infof("du and find on following dirs took %v: %v; will not log again for this container unless duration exceeds %d seconds.", duration, []string{fh.rootfs, fh.extraDir}, longOp) } } }