mirror of
https://github.com/livekit/livekit.git
synced 2026-10-23 19:32:41 +00:00
Adopt pion logging initialization moving to protocol (#1667)
This commit is contained in:
1 parent
1148d38978
commit
a08cd23b6d
11 files changed
+25
-201
No files matched your search
@@ -14,6 +14,7 @@ import (
|
||||
"gopkg.in/yaml.v3"
|
||||
|
||||
"github.com/livekit/protocol/logger"
|
||||
"github.com/livekit/protocol/logger/pionlogger"
|
||||
redisLiveKit "github.com/livekit/protocol/redis"
|
||||
)
|
||||
|
||||
@@ -744,3 +745,13 @@ func (conf *Config) unmarshalKeys(keys string) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// Note: only pass in logr.Logger with default depth
|
||||
func SetLogger(l logger.Logger) {
|
||||
logger.SetLogger(l, "livekit")
|
||||
}
|
||||
|
||||
func InitLoggerFromConfig(config LoggingConfig) {
|
||||
pionlogger.SetLogLevel(config.PionLevel)
|
||||
logger.InitFromConfig(config.Config, "livekit")
|
||||
}
|
||||
@@ -1,118 +0,0 @@
|
||||
package serverlogger
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"go.uber.org/zap/zapcore"
|
||||
|
||||
"github.com/livekit/protocol/logger"
|
||||
)
|
||||
|
||||
// implements webrtc.LeveledLogger
|
||||
type logAdapter struct {
|
||||
logger logger.Logger
|
||||
level zapcore.Level
|
||||
ignoredPrefixes []string
|
||||
}
|
||||
|
||||
func (l *logAdapter) Trace(msg string) {
|
||||
// ignore trace
|
||||
}
|
||||
|
||||
func (l *logAdapter) Tracef(format string, args ...interface{}) {
|
||||
// ignore trace
|
||||
}
|
||||
|
||||
func (l *logAdapter) Debug(msg string) {
|
||||
if l.level > zapcore.DebugLevel {
|
||||
return
|
||||
}
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Debugw(msg)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Debugf(format string, args ...interface{}) {
|
||||
if l.level > zapcore.DebugLevel {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, args...)
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Debugw(msg)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Info(msg string) {
|
||||
if l.level > zapcore.InfoLevel {
|
||||
return
|
||||
}
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Infow(msg)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Infof(format string, args ...interface{}) {
|
||||
if l.level > zapcore.InfoLevel {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, args...)
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Infow(msg)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Warn(msg string) {
|
||||
if l.level > zapcore.WarnLevel {
|
||||
return
|
||||
}
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Warnw(msg, nil)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Warnf(format string, args ...interface{}) {
|
||||
if l.level > zapcore.WarnLevel {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, args...)
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Warnw(msg, nil)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Error(msg string) {
|
||||
if l.level > zapcore.ErrorLevel {
|
||||
return
|
||||
}
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Errorw(msg, nil)
|
||||
}
|
||||
|
||||
func (l *logAdapter) Errorf(format string, args ...interface{}) {
|
||||
if l.level > zapcore.ErrorLevel {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, args...)
|
||||
if l.shouldIgnore(msg) {
|
||||
return
|
||||
}
|
||||
l.logger.Errorw(msg, nil)
|
||||
}
|
||||
|
||||
func (l *logAdapter) shouldIgnore(msg string) bool {
|
||||
for _, prefix := range l.ignoredPrefixes {
|
||||
if strings.HasPrefix(msg, prefix) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
@@ -1,66 +0,0 @@
|
||||
package serverlogger
|
||||
|
||||
import (
|
||||
"github.com/pion/logging"
|
||||
"go.uber.org/zap/zapcore"
|
||||
|
||||
"github.com/livekit/protocol/logger"
|
||||
|
||||
"github.com/livekit/livekit-server/pkg/config"
|
||||
)
|
||||
|
||||
var (
|
||||
pionLevel zapcore.Level
|
||||
pionIgnoredPrefixes = map[string][]string{
|
||||
"ice": {
|
||||
"pingAllCandidates called with no candidate pairs",
|
||||
"failed to send packet: io: read/write on closed pipe",
|
||||
"Ignoring remote candidate with tcpType active",
|
||||
"discard message from",
|
||||
"Failed to discover mDNS candidate",
|
||||
"Failed to read from candidate tcp",
|
||||
"remote mDNS candidate added, but mDNS is disabled",
|
||||
},
|
||||
"pc": {
|
||||
"Failed to accept RTCP stream is already closed",
|
||||
"Failed to accept RTP stream is already closed",
|
||||
"Incoming unhandled RTCP ssrc",
|
||||
},
|
||||
"tcp_mux": {
|
||||
"Error reading first packet from",
|
||||
"error closing connection",
|
||||
},
|
||||
"turn": {
|
||||
"error when handling datagram",
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
// implements webrtc.LoggerFactory
|
||||
type LoggerFactory struct {
|
||||
logger logger.Logger
|
||||
}
|
||||
|
||||
func NewLoggerFactory(logger logger.Logger) *LoggerFactory {
|
||||
return &LoggerFactory{
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
|
||||
func (f *LoggerFactory) NewLogger(scope string) logging.LeveledLogger {
|
||||
return &logAdapter{
|
||||
logger: f.logger.WithName(scope),
|
||||
level: pionLevel,
|
||||
ignoredPrefixes: pionIgnoredPrefixes[scope],
|
||||
}
|
||||
}
|
||||
|
||||
// Note: only pass in logr.Logger with default depth
|
||||
func SetLogger(l logger.Logger) {
|
||||
logger.SetLogger(l, "livekit")
|
||||
}
|
||||
|
||||
func InitFromConfig(config config.LoggingConfig) {
|
||||
pionLevel = logger.ParseZapLevel(config.PionLevel)
|
||||
logger.InitFromConfig(config.Config, "livekit")
|
||||
}
|
||||
+2
-2
@@ -15,10 +15,10 @@ import (
|
||||
"github.com/pion/webrtc/v3"
|
||||
|
||||
"github.com/livekit/livekit-server/pkg/config"
|
||||
logging "github.com/livekit/livekit-server/pkg/logger"
|
||||
"github.com/livekit/livekit-server/pkg/sfu/buffer"
|
||||
dd "github.com/livekit/livekit-server/pkg/sfu/dependencydescriptor"
|
||||
"github.com/livekit/protocol/logger"
|
||||
"github.com/livekit/protocol/logger/pionlogger"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -73,7 +73,7 @@ func NewWebRTCConfig(conf *config.Config, externalIP string) (*WebRTCConfig, err
|
||||
SDPSemantics: webrtc.SDPSemanticsUnifiedPlan,
|
||||
}
|
||||
s := webrtc.SettingEngine{
|
||||
LoggerFactory: logging.NewLoggerFactory(logger.GetLogger()),
|
||||
LoggerFactory: pionlogger.NewLoggerFactory(logger.GetLogger()),
|
||||
}
|
||||
|
||||
var ifFilter func(string) bool
|
||||
|
||||
@@ -14,7 +14,6 @@ import (
|
||||
"github.com/livekit/protocol/webhook"
|
||||
|
||||
"github.com/livekit/livekit-server/pkg/config"
|
||||
serverlogger "github.com/livekit/livekit-server/pkg/logger"
|
||||
"github.com/livekit/livekit-server/pkg/rtc/types"
|
||||
"github.com/livekit/livekit-server/pkg/rtc/types/typesfakes"
|
||||
"github.com/livekit/livekit-server/pkg/sfu/audio"
|
||||
@@ -30,7 +29,7 @@ const (
|
||||
)
|
||||
|
||||
func init() {
|
||||
serverlogger.InitFromConfig(config.LoggingConfig{
|
||||
config.InitLoggerFromConfig(config.LoggingConfig{
|
||||
Config: logger.Config{Level: "debug"},
|
||||
})
|
||||
// allow immediate closure in testing
|
||||
|
||||
@@ -22,10 +22,10 @@ import (
|
||||
|
||||
"github.com/livekit/protocol/livekit"
|
||||
"github.com/livekit/protocol/logger"
|
||||
"github.com/livekit/protocol/logger/pionlogger"
|
||||
lksdp "github.com/livekit/protocol/sdp"
|
||||
|
||||
"github.com/livekit/livekit-server/pkg/config"
|
||||
serverlogger "github.com/livekit/livekit-server/pkg/logger"
|
||||
"github.com/livekit/livekit-server/pkg/rtc/types"
|
||||
"github.com/livekit/livekit-server/pkg/sfu/streamallocator"
|
||||
"github.com/livekit/livekit-server/pkg/telemetry"
|
||||
@@ -298,7 +298,7 @@ func newPeerConnection(params TransportParams, onBandwidthEstimator func(estimat
|
||||
}
|
||||
}
|
||||
|
||||
lf := serverlogger.NewLoggerFactory(params.Logger)
|
||||
lf := pionlogger.NewLoggerFactory(params.Logger)
|
||||
if lf != nil {
|
||||
se.LoggerFactory = lf
|
||||
}
|
||||
|
||||
+2
-2
@@ -11,9 +11,9 @@ import (
|
||||
|
||||
"github.com/livekit/protocol/livekit"
|
||||
"github.com/livekit/protocol/logger"
|
||||
"github.com/livekit/protocol/logger/pionlogger"
|
||||
|
||||
"github.com/livekit/livekit-server/pkg/config"
|
||||
logging "github.com/livekit/livekit-server/pkg/logger"
|
||||
"github.com/livekit/livekit-server/pkg/telemetry"
|
||||
"github.com/livekit/livekit-server/pkg/telemetry/prometheus"
|
||||
)
|
||||
@@ -39,7 +39,7 @@ func NewTurnServer(conf *config.Config, authHandler turn.AuthHandler, standalone
|
||||
serverConfig := turn.ServerConfig{
|
||||
Realm: LivekitRealm,
|
||||
AuthHandler: authHandler,
|
||||
LoggerFactory: logging.NewLoggerFactory(logger.GetLogger()),
|
||||
LoggerFactory: pionlogger.NewLoggerFactory(logger.GetLogger()),
|
||||
}
|
||||
var relayAddrGen turn.RelayAddressGenerator = &turn.RelayAddressGeneratorPortRange{
|
||||
RelayAddress: net.ParseIP(conf.RTC.NodeIP),
|
||||
|
||||
Reference in new issue
Block a user