Documentation
¶
Index ¶
- func NewService() (service.Service, error)
- type Config
- type FileSinkConfig
- type KafkaSinkConfig
- type Level
- type Logger
- type LoggerConfig
- type Output
- type OutputConfig
- type Server
- type Service
- type SinkConfig
- func (c SinkConfig) GetEncoding() SinkEncoding
- func (c SinkConfig) GetFileSinkConfig() FileSinkConfig
- func (c SinkConfig) GetKafkaSinkConfig() KafkaSinkConfig
- func (c SinkConfig) GetStderrSinkConfig() StderrSinkConfig
- func (c SinkConfig) GetStdoutSinkConfig() StdoutSinkConfig
- func (c SinkConfig) GetType() SinkType
- type SinkEncoding
- type SinkType
- type StderrSinkConfig
- type StdoutSinkConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewService ¶
NewService returns a new device Service
Types ¶
type Config ¶
type Config struct {
Loggers map[string]LoggerConfig `yaml:"loggers"`
Sinks map[string]SinkConfig `yaml:"sinks"`
}
Config logging configuration
func (Config) GetLogger ¶ added in v0.6.12
func (c Config) GetLogger(name string) (LoggerConfig, bool)
GetLogger returns a logger by name
func (Config) GetLoggers ¶ added in v0.6.12
func (c Config) GetLoggers() []LoggerConfig
GetLoggers returns the configured loggers
func (Config) GetRootLogger ¶ added in v0.6.12
func (c Config) GetRootLogger() LoggerConfig
GetRootLogger returns the root logger configuration
func (Config) GetSink ¶ added in v0.6.12
func (c Config) GetSink(name string) (SinkConfig, bool)
GetSink returns a sink by name
func (Config) GetSinks ¶ added in v0.6.12
func (c Config) GetSinks() []SinkConfig
GetSinks returns the configured sinks
type FileSinkConfig ¶ added in v0.6.12
type FileSinkConfig struct {
Path string `yaml:"path"`
}
FileSinkConfig is the configuration for a file sink
type KafkaSinkConfig ¶ added in v0.6.12
type KafkaSinkConfig struct {
Topic string `yaml:"topic"`
Key string `yaml:"key"`
Brokers []string `yaml:"brokers"`
}
KafkaSinkConfig is the configuration for a Kafka sink
type Level ¶
type Level int
Level :
const ( // DebugLevel logs a message at debug level DebugLevel Level = iota // InfoLevel logs a message at info level InfoLevel // WarnLevel logs a message at warning level WarnLevel // ErrorLevel logs a message at error level ErrorLevel // FatalLevel logs a message, then calls os.Exit(1). FatalLevel // PanicLevel logs a message, then panics. PanicLevel // DPanicLevel logs at PanicLevel; otherwise, it logs at ErrorLevel DPanicLevel // EmptyLevel : EmptyLevel )
type Logger ¶
type Logger interface {
Output
// Name returns the logger name
Name() string
// GetLogger gets a descendant of this Logger
GetLogger(names ...string) Logger
// GetLevel returns the logger's level
GetLevel() Level
// SetLevel sets the logger's level
SetLevel(level Level)
}
Logger represents an abstract logging interface.
type LoggerConfig ¶
type LoggerConfig struct {
Name string `yaml:"name"`
Level *string `yaml:"level,omitempty"`
Output map[string]OutputConfig `yaml:"output"`
}
LoggerConfig is the configuration for a logger
func (LoggerConfig) GetLevel ¶ added in v0.6.12
func (c LoggerConfig) GetLevel() Level
GetLevel returns the logger level
func (LoggerConfig) GetOutput ¶ added in v0.6.12
func (c LoggerConfig) GetOutput(name string) (OutputConfig, bool)
GetOutput returns an output by name
func (LoggerConfig) GetOutputs ¶ added in v0.6.12
func (c LoggerConfig) GetOutputs() []OutputConfig
GetOutputs returns the logger outputs
type Output ¶ added in v0.6.12
type Output interface {
Debug(...interface{})
Debugf(template string, args ...interface{})
Debugw(msg string, keysAndValues ...interface{})
Info(...interface{})
Infof(template string, args ...interface{})
Infow(msg string, keysAndValues ...interface{})
Error(...interface{})
Errorf(template string, args ...interface{})
Errorw(msg string, keysAndValues ...interface{})
Fatal(...interface{})
Fatalf(template string, args ...interface{})
Fatalw(msg string, keysAndValues ...interface{})
Panic(...interface{})
Panicf(template string, args ...interface{})
Panicw(msg string, keysAndValues ...interface{})
DPanic(...interface{})
DPanicf(template string, args ...interface{})
DPanicw(msg string, keysAndValues ...interface{})
Warn(...interface{})
Warnf(template string, args ...interface{})
Warnw(msg string, keysAndValues ...interface{})
}
Output is a logging output
type OutputConfig ¶ added in v0.6.12
type OutputConfig struct {
Name string `yaml:"name"`
Sink *string `yaml:"sink"`
Level *string `yaml:"level,omitempty"`
}
OutputConfig is the configuration for a sink output
func (OutputConfig) GetLevel ¶ added in v0.6.12
func (c OutputConfig) GetLevel() Level
GetLevel returns the output level
func (OutputConfig) GetSink ¶ added in v0.6.12
func (c OutputConfig) GetSink() string
GetSink returns the output sink
type Server ¶
type Server struct {
}
Server implements the logging gRPC service
func (*Server) GetLevel ¶ added in v0.6.14
func (s *Server) GetLevel(ctx context.Context, req *logging.GetLevelRequest) (*logging.GetLevelResponse, error)
GetLevel implements GetLevel rpc function to get a logger level
func (*Server) SetLevel ¶
func (s *Server) SetLevel(ctx context.Context, req *logging.SetLevelRequest) (*logging.SetLevelResponse, error)
SetLevel implements SetLevel rpc function to set a logger level
type SinkConfig ¶ added in v0.6.12
type SinkConfig struct {
Name string `yaml:"name"`
Type *SinkType `yaml:"type,omitempty"`
Encoding *SinkEncoding `yaml:"encoding,omitempty"`
Stdout *StdoutSinkConfig `yaml:"stdout,omitempty"`
Stderr *StderrSinkConfig `yaml:"stderr,omitempty"`
File *FileSinkConfig `yaml:"file,omitempty"`
Kafka *KafkaSinkConfig `yaml:"kafka,omitempty"`
}
SinkConfig is the configuration for a sink
func (SinkConfig) GetEncoding ¶ added in v0.6.12
func (c SinkConfig) GetEncoding() SinkEncoding
GetEncoding returns the sink encoding
func (SinkConfig) GetFileSinkConfig ¶ added in v0.6.12
func (c SinkConfig) GetFileSinkConfig() FileSinkConfig
GetFileSinkConfig returns the file sink configuration
func (SinkConfig) GetKafkaSinkConfig ¶ added in v0.6.12
func (c SinkConfig) GetKafkaSinkConfig() KafkaSinkConfig
GetKafkaSinkConfig returns the Kafka sink configuration
func (SinkConfig) GetStderrSinkConfig ¶ added in v0.6.12
func (c SinkConfig) GetStderrSinkConfig() StderrSinkConfig
GetStderrSinkConfig returns the stderr sink configuration
func (SinkConfig) GetStdoutSinkConfig ¶ added in v0.6.12
func (c SinkConfig) GetStdoutSinkConfig() StdoutSinkConfig
GetStdoutSinkConfig returns the stdout sink configuration
func (SinkConfig) GetType ¶ added in v0.6.12
func (c SinkConfig) GetType() SinkType
GetType returns the sink type
type SinkEncoding ¶ added in v0.6.12
type SinkEncoding string
SinkEncoding is the encoding for a sink
const ( // ConsoleEncoding is an encoding for outputs to the console ConsoleEncoding SinkEncoding = "console" // JSONEncoding is an encoding for JSON outputs JSONEncoding SinkEncoding = "json" )
func (SinkEncoding) String ¶ added in v0.6.12
func (e SinkEncoding) String() string
type SinkType ¶
type SinkType string
SinkType is the type of a sink
const ( // StdoutSinkType is the sink type for stdout StdoutSinkType SinkType = "stdout" // StderrSinkType is the sink type for stderr StderrSinkType SinkType = "stderr" // FileSinkType is the type for a file sink FileSinkType SinkType = "file" // KafkaSinkType is the sink type for the Kafka sink KafkaSinkType SinkType = "kafka" )
type StderrSinkConfig ¶ added in v0.6.12
type StderrSinkConfig struct {
}
StderrSinkConfig is the configuration for an stderr sink
type StdoutSinkConfig ¶ added in v0.6.12
type StdoutSinkConfig struct {
}
StdoutSinkConfig is the configuration for an stdout sink