sing-box/log/factory.go
2026-07-09 11:20:03 +08:00

32 lines
520 B
Go

package log
import (
"github.com/sagernet/sing/common/logger"
"github.com/sagernet/sing/common/observable"
)
type (
Logger logger.Logger
ContextLogger logger.ContextLogger
)
type Factory interface {
Start() error
Close() error
Level() Level
SetLevel(level Level)
Logger() ContextLogger
NewLogger(tag string) ContextLogger
}
type ObservableFactory interface {
Factory
observable.Observable[Entry]
AttachPlatformWriter(writer PlatformWriter)
}
type Entry struct {
Level Level
Message string
}