mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-07-02 18:23:12 +00:00
shimv2: discard log before shim init log output
containerd would like to get the shim's socket address from shimv2's stdout, thus it's better to discard the log's output before shimv2 init it's logger and at the same time add a hook to log into syslog. Fixes: #1035 Signed-off-by: Fupan Li <lifupan@gmail.com>
This commit is contained in:
parent
bcf995bfe1
commit
05be5bf1f9
@ -8,6 +8,7 @@ package containerdshim
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
sysexec "os/exec"
|
||||
"path/filepath"
|
||||
@ -56,9 +57,13 @@ var vci vc.VC = &vc.VCImpl{}
|
||||
// New returns a new shim service that can be used via GRPC
|
||||
func New(ctx context.Context, id string, publisher events.Publisher) (cdshim.Shim, error) {
|
||||
logger := logrus.WithField("ID", id)
|
||||
// Discard the log before shim init its log output. Otherwise
|
||||
// it will output into stdio, from which containerd would like
|
||||
// to get the shim's socket address.
|
||||
logrus.SetOutput(ioutil.Discard)
|
||||
vci.SetLogger(ctx, logger)
|
||||
katautils.SetLogger(ctx, logger, logger.Logger.Level)
|
||||
_, runtimeConfig, err := katautils.LoadConfiguration("", true, true)
|
||||
_, runtimeConfig, err := katautils.LoadConfiguration("", false, true)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user