config

package
v0.0.0-...-be244c0 Latest Latest
Warning

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

Go to latest
Published: Sep 10, 2020 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetHTTPRoundTripper

func GetHTTPRoundTripper(c *Configuration, logger *zap.Logger) (http.RoundTripper, error)

GetHTTPRoundTripper returns configured http.RoundTripper

Types

type ClientBuilder

type ClientBuilder interface {
	NewClient(logger *zap.Logger, metricsFactory metrics.Factory) (es.Client, error)
	GetNumShards() int64
	GetNumReplicas() int64
	GetMaxSpanAge() time.Duration
	GetMaxDocCount() int
	GetIndexPrefix() string
	GetTagsFilePath() string
	GetAllTagsAsFields() bool
	GetTagDotReplacement() string
	GetUseReadWriteAliases() bool
	GetTokenFilePath() string
	IsStorageEnabled() bool
	IsCreateIndexTemplates() bool
	GetVersion() uint
	TagKeysAsFields() ([]string, error)
}

ClientBuilder creates new es.Client

type Configuration

type Configuration struct {
	Servers               []string       `mapstructure:"server_urls"`
	Username              string         `mapstructure:"username"`
	Password              string         `mapstructure:"password" json:"-"`
	TokenFilePath         string         `mapstructure:"token_file"`
	AllowTokenFromContext bool           `mapstructure:"-"`
	Sniffer               bool           `mapstructure:"sniffer"` // https://github.com/olivere/elastic/wiki/Sniffing
	SnifferTLSEnabled     bool           `mapstructure:"sniffer_tls_enabled"`
	MaxDocCount           int            `mapstructure:"-"`                     // Defines maximum number of results to fetch from storage per query
	MaxSpanAge            time.Duration  `yaml:"max_span_age" mapstructure:"-"` // configures the maximum lookback on span reads
	NumShards             int64          `yaml:"shards" mapstructure:"num_shards"`
	NumReplicas           int64          `yaml:"replicas" mapstructure:"num_replicas"`
	Timeout               time.Duration  `validate:"min=500" mapstructure:"-"`
	BulkSize              int            `mapstructure:"-"`
	BulkWorkers           int            `mapstructure:"-"`
	BulkActions           int            `mapstructure:"-"`
	BulkFlushInterval     time.Duration  `mapstructure:"-"`
	IndexPrefix           string         `mapstructure:"index_prefix"`
	Tags                  TagsAsFields   `mapstructure:"tags_as_fields"`
	Enabled               bool           `mapstructure:"-"`
	TLS                   tlscfg.Options `mapstructure:"tls"`
	UseReadWriteAliases   bool           `mapstructure:"use_aliases"`
	CreateIndexTemplates  bool           `mapstructure:"create_mappings"`
	Version               uint           `mapstructure:"version"`
}

Configuration describes the configuration properties needed to connect to an ElasticSearch cluster

func (*Configuration) ApplyDefaults

func (c *Configuration) ApplyDefaults(source *Configuration)

ApplyDefaults copies settings from source unless its own value is non-zero.

func (*Configuration) GetAllTagsAsFields

func (c *Configuration) GetAllTagsAsFields() bool

GetAllTagsAsFields returns true if all tags should be stored as object fields

func (*Configuration) GetIndexPrefix

func (c *Configuration) GetIndexPrefix() string

GetIndexPrefix returns index prefix

func (*Configuration) GetMaxDocCount

func (c *Configuration) GetMaxDocCount() int

GetMaxDocCount returns the maximum number of documents that a query should return

func (*Configuration) GetMaxSpanAge

func (c *Configuration) GetMaxSpanAge() time.Duration

GetMaxSpanAge returns max span age from Configuration

func (*Configuration) GetNumReplicas

func (c *Configuration) GetNumReplicas() int64

GetNumReplicas returns number of replicas from Configuration

func (*Configuration) GetNumShards

func (c *Configuration) GetNumShards() int64

GetNumShards returns number of shards from Configuration

func (*Configuration) GetTagDotReplacement

func (c *Configuration) GetTagDotReplacement() string

GetTagDotReplacement returns character is used to replace dots in tag keys, when the tag is stored as object field.

func (*Configuration) GetTagsFilePath

func (c *Configuration) GetTagsFilePath() string

GetTagsFilePath returns a path to file containing tag keys

func (*Configuration) GetTokenFilePath

func (c *Configuration) GetTokenFilePath() string

GetTokenFilePath returns file path containing the bearer token

func (*Configuration) GetUseReadWriteAliases

func (c *Configuration) GetUseReadWriteAliases() bool

GetUseReadWriteAliases indicates whether read alias should be used

func (*Configuration) GetVersion

func (c *Configuration) GetVersion() uint

GetVersion returns Elasticsearch version

func (*Configuration) IsCreateIndexTemplates

func (c *Configuration) IsCreateIndexTemplates() bool

IsCreateIndexTemplates determines whether index templates should be created or not

func (*Configuration) IsStorageEnabled

func (c *Configuration) IsStorageEnabled() bool

IsStorageEnabled determines whether storage is enabled

func (*Configuration) NewClient

func (c *Configuration) NewClient(logger *zap.Logger, metricsFactory metrics.Factory) (es.Client, error)

NewClient creates a new ElasticSearch client

func (*Configuration) TagKeysAsFields

func (c *Configuration) TagKeysAsFields() ([]string, error)

TagKeysAsFields returns tags from the file and command line merged

type TagsAsFields

type TagsAsFields struct {
	// Store all tags as object fields, instead nested objects
	AllAsFields bool `mapstructure:"all"`
	// Dot replacement for tag keys when stored as object fields
	DotReplacement string `mapstructure:"dot_replacement"`
	// File path to tag keys which should be stored as object fields
	File string `mapstructure:"config_file"`
	// Comma delimited list of tags to store as object fields
	Include string `mapstructure:"include"`
}

TagsAsFields holds configuration for tag schema. By default Jaeger stores tags in an array of nested objects. This configurations allows to store tags as object fields for better Kibana support.

Jump to

Keyboard shortcuts

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