Documentation ¶
Index ¶
Constants ¶
const ( TypeTrace byte = 1 TypeDebug byte = 2 TypeInfo byte = 3 TypeWarning byte = 4 TypeError byte = 5 TypeAlert byte = 6 TypeEmergency byte = 7 TypeInc byte = 100 TypeGauge byte = 101 TypeDuration byte = 102 )
List of
Variables ¶
var Nil = nilstruct{}
Nil contains No-Op logger, receiver and stats reporter
var PlaceholdersRegex = regexp.MustCompile(":[0-9a-zA-Z\\-_]+")
PlaceholdersRegex contains rules to find placeholders inside string
Functions ¶
Types ¶
type Dispatcher ¶
type Dispatcher struct {
// contains filtered or unexported fields
}
Dispatcher is wrapper over slice of receivers
func (*Dispatcher) AddMutator ¶
func (d *Dispatcher) AddMutator(m Mutator)
AddMutator registers new mutators
func (*Dispatcher) AddReceiver ¶
func (d *Dispatcher) AddReceiver(r Receiver)
AddReceiver registers new receiver
type Event ¶
type Event struct { Time time.Time // Event time Marker string // Event owner Type byte // Event type Content string // Content - either message or metrics name Params []Param // Params slice I64 int64 // Increment or duration or gauge value }
Event represents event information
func (Event) StringType ¶
StringType returns string representation of log event type Will return empty string on metrics or invalid type
type Logger ¶
type Logger interface { Trace(message string, p ...Param) Debug(message string, p ...Param) Info(message string, p ...Param) Warning(message string, p ...Param) Error(message string, p ...Param) Alert(message string, p ...Param) Emergency(message string, p ...Param) }
Logger interface describes logger structure
type Mutator ¶
type Mutator interface {
Modify(*Event)
}
Mutator interface describes components, that modifies events
func FuncMutator ¶
FuncMutator returns Mutator built over func
type Param ¶
type Param interface { // GetKey returns param key name GetKey() string // GetRaw returns raw value GetRaw() interface{} // String returns string representation of param value String() string }
Param represents parameter, sent to logger or metrics
type ParamsFilter ¶
ParamsFilter describes function, used to filter params list
func NewBlackListParamsFilter ¶
func NewBlackListParamsFilter(allowedNames []string) ParamsFilter
NewBlackListParamsFilter returns params filter, that clears params with name, passed to this function
func NewWhiteListParamsFilter ¶
func NewWhiteListParamsFilter(allowedNames []string) ParamsFilter
NewWhiteListParamsFilter return params filter, that allows only params with names, passed to this function
type Receiver ¶
type Receiver interface {
Receive(e Event)
}
Receiver interface represents SLF event receiver
type StatsReporter ¶
type StatsReporter interface { // IncCounter increments a statsd-like counter with optional params IncCounter(name string, value int64, p ...Param) // UpdateGauge a statsd-like gauge ("set" of the value) with optional tags UpdateGauge(name string, value int64, p ...Param) // RecordTimer records a statsd-like timer with optional tags RecordTimer(name string, d time.Duration, p ...Param) // Timer builds returns timer, bound to this StatsReporter Timer(name string, p ...Param) Timer }
StatsReporter describes common metrics reporter