diff --git a/tools/go-agent/instrument/logger/context.go b/tools/go-agent/instrument/logger/context.go index 10072acc..debdf4b5 100644 --- a/tools/go-agent/instrument/logger/context.go +++ b/tools/go-agent/instrument/logger/context.go @@ -79,11 +79,14 @@ func (span *NoopSpan) GetEndPointName() string { } func GetLogContext(withEndpoint bool) interface{} { - report, ok := GetOperator().LogReporter().(LogReporter) + operator := GetOperator() + if operator == nil { + return nil + } + report, ok := operator.LogReporter().(LogReporter) if !ok || report == nil { return nil } - return report.GetLogContext(withEndpoint) } diff --git a/tools/go-agent/instrument/logger/frameworks/logrus_adapt.go b/tools/go-agent/instrument/logger/frameworks/logrus_adapt.go index f57b0b3a..da473c5a 100644 --- a/tools/go-agent/instrument/logger/frameworks/logrus_adapt.go +++ b/tools/go-agent/instrument/logger/frameworks/logrus_adapt.go @@ -22,12 +22,18 @@ import ( ) func UpdateLogrusLogger(l *logrus.Logger) { + if l == nil { + return + } + if LogTracingContextEnable { if _, wrapperd := l.Formatter.(*WrapFormat); !wrapperd { l.Formatter = Wrap(l.Formatter, LogTracingContextKey) } } - ChangeLogger(NewLogrusAdapter(l)) + if ChangeLogger != nil { + ChangeLogger(NewLogrusAdapter(l)) + } } type LogrusAdapter struct {