mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge pull request #33598 from aaronlehmann/remove-dumpdaemon
daemon: Remove daemon datastructure dump functionality
This commit is contained in:
commit
252e610103
3 changed files with 0 additions and 74 deletions
|
@ -1,62 +0,0 @@
|
||||||
package daemon
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"os"
|
|
||||||
"path/filepath"
|
|
||||||
"strings"
|
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/davecgh/go-spew/spew"
|
|
||||||
"github.com/pkg/errors"
|
|
||||||
)
|
|
||||||
|
|
||||||
const dataStructuresLogNameTemplate = "daemon-data-%s.log"
|
|
||||||
|
|
||||||
// dumpDaemon appends the daemon datastructures into file in dir and returns full path
|
|
||||||
// to that file.
|
|
||||||
func (d *Daemon) dumpDaemon(dir string) (string, error) {
|
|
||||||
// Ensure we recover from a panic as we are doing this without any locking
|
|
||||||
defer func() {
|
|
||||||
recover()
|
|
||||||
}()
|
|
||||||
|
|
||||||
path := filepath.Join(dir, fmt.Sprintf(dataStructuresLogNameTemplate, strings.Replace(time.Now().Format(time.RFC3339), ":", "", -1)))
|
|
||||||
f, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY, 0666)
|
|
||||||
if err != nil {
|
|
||||||
return "", errors.Wrap(err, "failed to open file to write the daemon datastructure dump")
|
|
||||||
}
|
|
||||||
defer f.Close()
|
|
||||||
|
|
||||||
dump := struct {
|
|
||||||
containers interface{}
|
|
||||||
names interface{}
|
|
||||||
links interface{}
|
|
||||||
execs interface{}
|
|
||||||
volumes interface{}
|
|
||||||
images interface{}
|
|
||||||
layers interface{}
|
|
||||||
imageReferences interface{}
|
|
||||||
downloads interface{}
|
|
||||||
uploads interface{}
|
|
||||||
registry interface{}
|
|
||||||
plugins interface{}
|
|
||||||
}{
|
|
||||||
containers: d.containers,
|
|
||||||
execs: d.execCommands,
|
|
||||||
volumes: d.volumes,
|
|
||||||
images: d.imageStore,
|
|
||||||
layers: d.layerStore,
|
|
||||||
imageReferences: d.referenceStore,
|
|
||||||
downloads: d.downloadManager,
|
|
||||||
uploads: d.uploadManager,
|
|
||||||
registry: d.RegistryService,
|
|
||||||
plugins: d.PluginStore,
|
|
||||||
names: d.nameIndex,
|
|
||||||
links: d.linkIndex,
|
|
||||||
}
|
|
||||||
|
|
||||||
spew.Fdump(f, dump) // Does not return an error
|
|
||||||
f.Sync()
|
|
||||||
return path, nil
|
|
||||||
}
|
|
|
@ -22,12 +22,6 @@ func (d *Daemon) setupDumpStackTrap(root string) {
|
||||||
} else {
|
} else {
|
||||||
logrus.Infof("goroutine stacks written to %s", path)
|
logrus.Infof("goroutine stacks written to %s", path)
|
||||||
}
|
}
|
||||||
path, err = d.dumpDaemon(root)
|
|
||||||
if err != nil {
|
|
||||||
logrus.WithError(err).Error("failed to write daemon datastructure dump")
|
|
||||||
} else {
|
|
||||||
logrus.Infof("daemon datastructure dump written to %s", path)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,12 +41,6 @@ func (d *Daemon) setupDumpStackTrap(root string) {
|
||||||
} else {
|
} else {
|
||||||
logrus.Infof("goroutine stacks written to %s", path)
|
logrus.Infof("goroutine stacks written to %s", path)
|
||||||
}
|
}
|
||||||
path, err = d.dumpDaemon(root)
|
|
||||||
if err != nil {
|
|
||||||
logrus.WithError(err).Error("failed to write daemon datastructure dump")
|
|
||||||
} else {
|
|
||||||
logrus.Infof("daemon datastructure dump written to %s", path)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue