Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type FormatterFunc ¶ added in v1.8.5
FormatterFunc is a type alias for a function that satisfies logrus' `Formatter` interface
type GRPCLogWriter ¶ added in v1.8.6
type GRPCLogWriter struct {
// contains filtered or unexported fields
}
GRPCLogWriter proxies gRPC and etcd-produced log messages to a logrus logger. Because it implements `io.Writer`, it could be used anywhere where `io.Writer`s are used, but it has some logic specifically designed to handle gRPC-formatted logs.
func NewGRPCLogWriter ¶ added in v1.8.6
func NewGRPCLogWriter(logger *logrus.Logger, source string) *GRPCLogWriter
NewGRPCLogWriter creates a new GRPC log writer. `logger` specifies the underlying logger, and `source` specifies where these logs are coming from; it is added as a entry field for all log messages.
func (*GRPCLogWriter) Write ¶ added in v1.8.6
func (l *GRPCLogWriter) Write(p []byte) (int, error)
Write allows `GRPCInfoWriter` to implement the `io.Writer` interface. This will take gRPC logs, which look something like this: ``` INFO: 2019/02/18 12:21:54 ClientConn switching balancer to "pick_first" ``` strip out redundant content, and print the message at the appropriate log level in logrus. Any parse errors of the log message will be reported in logrus as well.
type Logger ¶
type Logger interface { Log(request interface{}, response interface{}, err error, duration time.Duration) LogAtLevelFromDepth(request interface{}, response interface{}, err error, duration time.Duration, level logrus.Level, depth int) }
Logger is a helper for emitting our grpc API logs
func NewLocalLogger ¶ added in v1.7.4
NewLocalLogger creates a new logger for local testing (which does not report prometheus metrics)