mirror of
https://github.com/opencontainers/runc.git
synced 2025-11-02 11:54:04 +08:00
runc init: pass _LIBCONTAINER_LOGLEVEL as int
Instead of passing _LIBCONTAINER_LOGLEVEL as a string (like "debug" or "info"), use a numeric value. Also, simplify the init log level passing code -- since we actually use the same level as the runc binary, just get it from logrus. This is a preparation for the next commit. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This commit is contained in:
6
exec.go
6
exec.go
@@ -132,11 +132,6 @@ func execProcess(context *cli.Context) (int, error) {
|
||||
return -1, err
|
||||
}
|
||||
|
||||
logLevel := "info"
|
||||
if context.GlobalBool("debug") {
|
||||
logLevel = "debug"
|
||||
}
|
||||
|
||||
r := &runner{
|
||||
enableSubreaper: false,
|
||||
shouldDestroy: false,
|
||||
@@ -147,7 +142,6 @@ func execProcess(context *cli.Context) (int, error) {
|
||||
action: CT_ACT_RUN,
|
||||
init: false,
|
||||
preserveFDs: context.Int("preserve-fds"),
|
||||
logLevel: logLevel,
|
||||
}
|
||||
return r.run(p)
|
||||
}
|
||||
|
||||
4
init.go
4
init.go
@@ -17,7 +17,7 @@ func init() {
|
||||
runtime.GOMAXPROCS(1)
|
||||
runtime.LockOSThread()
|
||||
|
||||
logLevel, err := logrus.ParseLevel(os.Getenv("_LIBCONTAINER_LOGLEVEL"))
|
||||
level, err := strconv.Atoi(os.Getenv("_LIBCONTAINER_LOGLEVEL"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
@@ -27,7 +27,7 @@ func init() {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
logrus.SetLevel(logLevel)
|
||||
logrus.SetLevel(logrus.Level(level))
|
||||
logrus.SetOutput(os.NewFile(uintptr(logPipeFd), "logpipe"))
|
||||
logrus.SetFormatter(new(logrus.JSONFormatter))
|
||||
logrus.Debug("child process in init()")
|
||||
|
||||
@@ -255,7 +255,6 @@ type runner struct {
|
||||
action CtAct
|
||||
notifySocket *notifySocket
|
||||
criuOpts *libcontainer.CriuOpts
|
||||
logLevel string
|
||||
}
|
||||
|
||||
func (r *runner) run(config *specs.Process) (int, error) {
|
||||
@@ -272,9 +271,9 @@ func (r *runner) run(config *specs.Process) (int, error) {
|
||||
if err != nil {
|
||||
return -1, err
|
||||
}
|
||||
process.LogLevel = strconv.Itoa(int(logrus.GetLevel()))
|
||||
// Populate the fields that come from runner.
|
||||
process.Init = r.init
|
||||
process.LogLevel = r.logLevel
|
||||
if len(r.listenFDs) > 0 {
|
||||
process.Env = append(process.Env, "LISTEN_FDS="+strconv.Itoa(len(r.listenFDs)), "LISTEN_PID=1")
|
||||
process.ExtraFiles = append(process.ExtraFiles, r.listenFDs...)
|
||||
@@ -431,11 +430,6 @@ func startContainer(context *cli.Context, spec *specs.Spec, action CtAct, criuOp
|
||||
listenFDs = activation.Files(false)
|
||||
}
|
||||
|
||||
logLevel := "info"
|
||||
if context.GlobalBool("debug") {
|
||||
logLevel = "debug"
|
||||
}
|
||||
|
||||
r := &runner{
|
||||
enableSubreaper: !context.Bool("no-subreaper"),
|
||||
shouldDestroy: !context.Bool("keep"),
|
||||
@@ -449,7 +443,6 @@ func startContainer(context *cli.Context, spec *specs.Spec, action CtAct, criuOp
|
||||
action: action,
|
||||
criuOpts: criuOpts,
|
||||
init: true,
|
||||
logLevel: logLevel,
|
||||
}
|
||||
return r.run(spec.Process)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user