hook

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 17, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package hook provides logging hooks.

The hok package's structures are self-initialized. Fields are populated via yaml values or env variables. Env variables overwrite yaml configuration.

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrCannotCreateIndex Fired if the index is not created
	ErrCannotCreateIndex = errors.New("cannot create index")
)

Functions

This section is empty.

Types

type ElasticHook

type ElasticHook struct {
	// contains filtered or unexported fields
}

ElasticHook is a logrus hook for ElasticSearch

func NewAsyncElasticHook

func NewAsyncElasticHook(client *elastic.Client, host string, level logrus.Level, index string) (*ElasticHook, error)

NewAsyncElasticHook creates new hook with asynchronous log. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level index - name of the index in ElasticSearch

func NewAsyncElasticHookWithFunc

func NewAsyncElasticHookWithFunc(client *elastic.Client, host string, level logrus.Level, indexFunc IndexNameFunc) (*ElasticHook, error)

NewAsyncElasticHookWithFunc creates new asynchronous hook with function that provides the index name. This is useful if the index name is somehow dynamic especially based on time. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level indexFunc - function providing the name of index

func NewBulkProcessorElasticHook

func NewBulkProcessorElasticHook(client *elastic.Client, host string, level logrus.Level, index string) (*ElasticHook, error)

NewBulkProcessorElasticHook creates new hook that uses a bulk processor for indexing. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level index - name of the index in ElasticSearch

func NewBulkProcessorElasticHookWithFunc

func NewBulkProcessorElasticHookWithFunc(client *elastic.Client, host string, level logrus.Level, indexFunc IndexNameFunc) (*ElasticHook, error)

NewBulkProcessorElasticHookWithFunc creates new hook with function that provides the index name. This is useful if the index name is somehow dynamic especially based on time that uses a bulk processor for indexing. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level indexFunc - function providing the name of index

func NewElasticHook

func NewElasticHook(client *elastic.Client, host string, level logrus.Level, index string) (*ElasticHook, error)

NewElasticHook creates new hook. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level index - name of the index in ElasticSearch

func NewElasticHookWithFunc

func NewElasticHookWithFunc(client *elastic.Client, host string, level logrus.Level, indexFunc IndexNameFunc) (*ElasticHook, error)

NewElasticHookWithFunc creates new hook with function that provides the index name. This is useful if the index name is somehow dynamic especially based on time. client - ElasticSearch client with specific es version (v5/v6/v7/...) host - host of system level - log level indexFunc - function providing the name of index

func (*ElasticHook) Cancel

func (hook *ElasticHook) Cancel()

Cancel all calls to elastic

func (*ElasticHook) Fire

func (hook *ElasticHook) Fire(entry *logrus.Entry) error

Fire is required to implement Logrus hook

func (*ElasticHook) Levels

func (hook *ElasticHook) Levels() []logrus.Level

Levels Required for logrus hook implementation

type IndexNameFunc

type IndexNameFunc func() string

IndexNameFunc get index name

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL