Documentation ¶
Index ¶
- type Hook
- func NewAsyncFilterHook() *Hook
- func NewAsyncFilterHookWithPrefix(prefix string) *Hook
- func NewAsyncHook(protocol, address, appName string) (*Hook, error)
- func NewAsyncHookWithConn(conn net.Conn, appName string) (*Hook, error)
- func NewAsyncHookWithFields(protocol, address, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
- func NewAsyncHookWithFieldsAndConn(conn net.Conn, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
- func NewAsyncHookWithFieldsAndConnAndPrefix(conn net.Conn, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
- func NewAsyncHookWithFieldsAndPrefix(protocol, address, appName string, alwaysSentFields logrus.Fields, ...) (*Hook, error)
- func NewFilterHook() *Hook
- func NewFilterHookWithPrefix(prefix string) *Hook
- func NewHook(protocol, address, appName string) (*Hook, error)
- func NewHookWithConn(conn net.Conn, appName string) (*Hook, error)
- func NewHookWithFields(protocol, address, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
- func NewHookWithFieldsAndConn(conn net.Conn, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
- func NewHookWithFieldsAndConnAndPrefix(conn net.Conn, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
- func NewHookWithFieldsAndPrefix(protocol, address, appName string, alwaysSentFields logrus.Fields, ...) (*Hook, error)
- type LogstashFormatter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Hook ¶
type Hook struct { sync.RWMutex TimeFormat string WaitUntilBufferFrees bool Timeout time.Duration // Timeout for sending message. MaxSendRetries int // Declares how many times we will try to resend message. ReconnectBaseDelay time.Duration // First reconnect delay. ReconnectDelayMultiplier float64 // Base multiplier for delay before reconnect. MaxReconnectRetries int // Declares how many times we will try to reconnect. // contains filtered or unexported fields }
Hook represents a connection to a Logstash instance
func NewAsyncFilterHook ¶
func NewAsyncFilterHook() *Hook
NewAsyncFilterHook makes a new hook which does not forward to logstash, but simply enforces the prefix rules. Logs will be sent asynchronously.
func NewAsyncFilterHookWithPrefix ¶
NewAsyncFilterHookWithPrefix make a new hook which does not forward to logstash, but simply enforces the specified prefix. Logs will be sent asynchronously.
func NewAsyncHook ¶
NewAsyncHook creates a new hook to a Logstash instance, which listens on `protocol`://`address`. Logs will be sent asynchronously.
func NewAsyncHookWithConn ¶
NewAsyncHookWithConn creates a new hook to a Logstash instance, using the supplied connection. Logs will be sent asynchronously.
func NewAsyncHookWithFields ¶
func NewAsyncHookWithFields(protocol, address, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
NewAsyncHookWithFields creates a new hook to a Logstash instance, which listens on `protocol`://`address`. alwaysSentFields will be sent with every log entry. Logs will be sent asynchronously.
func NewAsyncHookWithFieldsAndConn ¶
func NewAsyncHookWithFieldsAndConn(conn net.Conn, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
NewAsyncHookWithFieldsAndConn creates a new hook to a Logstash instance using the supplied connection. Logs will be sent asynchronously.
func NewAsyncHookWithFieldsAndConnAndPrefix ¶
func NewAsyncHookWithFieldsAndConnAndPrefix(conn net.Conn, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
NewAsyncHookWithFieldsAndConnAndPrefix creates a new hook to a Logstash instance using the suppolied connection and prefix. Logs will be sent asynchronously.
func NewAsyncHookWithFieldsAndPrefix ¶
func NewAsyncHookWithFieldsAndPrefix(protocol, address, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
NewAsyncHookWithFieldsAndPrefix creates a new hook to a Logstash instance, which listens on `protocol`://`address`. alwaysSentFields will be sent with every log entry. prefix is used to select fields to filter. Logs will be sent asynchronously.
func NewFilterHook ¶
func NewFilterHook() *Hook
NewFilterHook makes a new hook which does not forward to logstash, but simply enforces the prefix rules.
func NewFilterHookWithPrefix ¶
NewFilterHookWithPrefix make a new hook which does not forward to logstash, but simply enforces the specified prefix.
func NewHook ¶
NewHook creates a new hook to a Logstash instance, which listens on `protocol`://`address`.
func NewHookWithConn ¶
NewHookWithConn creates a new hook to a Logstash instance, using the supplied connection.
func NewHookWithFields ¶
func NewHookWithFields(protocol, address, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
NewHookWithFields creates a new hook to a Logstash instance, which listens on `protocol`://`address`. alwaysSentFields will be sent with every log entry.
func NewHookWithFieldsAndConn ¶
func NewHookWithFieldsAndConn(conn net.Conn, appName string, alwaysSentFields logrus.Fields) (*Hook, error)
NewHookWithFieldsAndConn creates a new hook to a Logstash instance using the supplied connection.
func NewHookWithFieldsAndConnAndPrefix ¶
func NewHookWithFieldsAndConnAndPrefix(conn net.Conn, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
NewHookWithFieldsAndConnAndPrefix creates a new hook to a Logstash instance using the suppolied connection and prefix.
func NewHookWithFieldsAndPrefix ¶
func NewHookWithFieldsAndPrefix(protocol, address, appName string, alwaysSentFields logrus.Fields, prefix string) (*Hook, error)
NewHookWithFieldsAndPrefix creates a new hook to a Logstash instance, which listens on `protocol`://`address`. alwaysSentFields will be sent with every log entry. prefix is used to select fields to filter.
func (*Hook) Fire ¶
Fire send message to logstash. In async mode log message will be dropped if message buffer is full. If you want wait until message buffer frees – set WaitUntilBufferFrees to true.
func (*Hook) Levels ¶
Levels specifies "active" log levels. Log messages with this levels will be sent to logstash.
func (*Hook) WithFields ¶
WithFields add fields with values that will be sent with each message
func (*Hook) WithPrefix ¶
WithPrefix sets a prefix filter to use in all subsequent logging
type LogstashFormatter ¶
type LogstashFormatter struct { Type string // if not empty use for logstash type field. // TimestampFormat sets the format used for timestamps. TimestampFormat string }
LogstashFormatter generates json in logstash format. Logstash site: http://logstash.net/
func (*LogstashFormatter) Format ¶
func (f *LogstashFormatter) Format(entry *logrus.Entry) ([]byte, error)
Format formats log message.
func (*LogstashFormatter) FormatWithPrefix ¶
FormatWithPrefix removes prefix from keys and formats log message.