collector

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 7, 2019 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Allocation added in v1.1.0

type Allocation struct {
	Enabled string `json:"enable"`
}

Allocation is a representation of a Elasticsearch Cluster shard routing allocation settings

type Blocks added in v1.1.0

type Blocks struct {
	ReadOnly string `json:"read_only_allow_delete"`
}

Blocks defines whether current index has read_only_allow_delete enabled

type Cluster added in v1.1.0

type Cluster struct {
	Routing Routing `json:"routing"`
}

Cluster is a representation of a Elasticsearch Cluster Settings

type ClusterHealth

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

ClusterHealth type defines the collector struct

func NewClusterHealth

func NewClusterHealth(logger log.Logger, client *http.Client, url *url.URL) *ClusterHealth

NewClusterHealth returns a new Collector exposing ClusterHealth stats.

func (*ClusterHealth) Collect

func (c *ClusterHealth) Collect(ch chan<- prometheus.Metric)

Collect collects ClusterHealth metrics.

func (*ClusterHealth) Describe

func (c *ClusterHealth) Describe(ch chan<- *prometheus.Desc)

Describe set Prometheus metrics descriptions.

type ClusterHealthResponse

type ClusterHealthResponse struct {
	ActivePrimaryShards     int64  `json:"active_primary_shards"`
	ActiveShards            int64  `json:"active_shards"`
	ClusterName             string `json:"cluster_name"`
	DelayedUnassignedShards int64  `json:"delayed_unassigned_shards"`
	InitializingShards      int64  `json:"initializing_shards"`
	NumberOfDataNodes       int64  `json:"number_of_data_nodes"`
	NumberOfInFlightFetch   int64  `json:"number_of_in_flight_fetch"`
	NumberOfNodes           int64  `json:"number_of_nodes"`
	NumberOfPendingTasks    int64  `json:"number_of_pending_tasks"`
	RelocatingShards        int64  `json:"relocating_shards"`
	Status                  string `json:"status"`
	TimedOut                bool   `json:"timed_out"`
	UnassignedShards        int64  `json:"unassigned_shards"`
}

ClusterHealthResponse is a representation of a Elasticsearch Cluster Health

type ClusterSettings added in v1.1.0

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

ClusterSettings information struct

func NewClusterSettings added in v1.1.0

func NewClusterSettings(logger log.Logger, client *http.Client, url *url.URL) *ClusterSettings

NewClusterSettings defines Cluster Settings Prometheus metrics

func (*ClusterSettings) Collect added in v1.1.0

func (cs *ClusterSettings) Collect(ch chan<- prometheus.Metric)

Collect gets cluster settings metric values

func (*ClusterSettings) Describe added in v1.1.0

func (cs *ClusterSettings) Describe(ch chan<- *prometheus.Desc)

Describe add Snapshots metrics descriptions

type ClusterSettingsFullResponse added in v1.1.0

type ClusterSettingsFullResponse struct {
	Defaults   ClusterSettingsResponse `json:"defaults"`
	Persistent ClusterSettingsResponse `json:"persistent"`
	Transient  ClusterSettingsResponse `json:"transient"`
}

ClusterSettingsFullResponse is a representation of a Elasticsearch Cluster Settings

type ClusterSettingsResponse added in v1.1.0

type ClusterSettingsResponse struct {
	Cluster Cluster `json:"cluster"`
}

ClusterSettingsResponse is a representation of a Elasticsearch Cluster Settings

type Index added in v1.1.0

type Index struct {
	Settings Settings `json:"settings"`
}

Index defines the struct of the tree for the settings of each index

type IndexInfo added in v1.1.0

type IndexInfo struct {
	Blocks Blocks `json:"blocks"`
}

IndexInfo defines the blocks of the current index

type IndexStatsIndexCompletionResponse added in v1.0.2

type IndexStatsIndexCompletionResponse struct {
	SizeInBytes int64 `json:"size_in_bytes"`
}

IndexStatsIndexCompletionResponse defines index stats index completion information structure

type IndexStatsIndexDetailResponse added in v1.0.2

type IndexStatsIndexDetailResponse struct {
	Docs         IndexStatsIndexDocsResponse         `json:"docs"`
	Store        IndexStatsIndexStoreResponse        `json:"store"`
	Indexing     IndexStatsIndexIndexingResponse     `json:"indexing"`
	Get          IndexStatsIndexGetResponse          `json:"get"`
	Search       IndexStatsIndexSearchResponse       `json:"search"`
	Merges       IndexStatsIndexMergesResponse       `json:"merges"`
	Refresh      IndexStatsIndexRefreshResponse      `json:"refresh"`
	Flush        IndexStatsIndexFlushResponse        `json:"flush"`
	Warmer       IndexStatsIndexWarmerResponse       `json:"warmer"`
	QueryCache   IndexStatsIndexQueryCacheResponse   `json:"query_cache"`
	Fielddata    IndexStatsIndexFielddataResponse    `json:"fielddata"`
	Completion   IndexStatsIndexCompletionResponse   `json:"completion"`
	Segments     IndexStatsIndexSegmentsResponse     `json:"segments"`
	Translog     IndexStatsIndexTranslogResponse     `json:"translog"`
	RequestCache IndexStatsIndexRequestCacheResponse `json:"request_cache"`
	Recovery     IndexStatsIndexRecoveryResponse     `json:"recovery"`
}

IndexStatsIndexDetailResponse defines index stats index details information structure

type IndexStatsIndexDocsResponse added in v1.0.2

type IndexStatsIndexDocsResponse struct {
	Count   int64 `json:"count"`
	Deleted int64 `json:"deleted"`
}

IndexStatsIndexDocsResponse defines index stats index documents information structure

type IndexStatsIndexFielddataResponse added in v1.0.2

type IndexStatsIndexFielddataResponse struct {
	MemorySizeInBytes int64 `json:"memory_size_in_bytes"`
	Evictions         int64 `json:"evictions"`
}

IndexStatsIndexFielddataResponse defines index stats index fielddata information structure

type IndexStatsIndexFlushResponse added in v1.0.2

type IndexStatsIndexFlushResponse struct {
	Total             int64 `json:"total"`
	TotalTimeInMillis int64 `json:"total_time_in_millis"`
}

IndexStatsIndexFlushResponse defines index stats index flush information structure

type IndexStatsIndexGetResponse added in v1.0.2

type IndexStatsIndexGetResponse struct {
	Total               int64 `json:"total"`
	TimeInMillis        int64 `json:"time_in_millis"`
	ExistsTotal         int64 `json:"exists_total"`
	ExistsTimeInMillis  int64 `json:"exists_time_in_millis"`
	MissingTotal        int64 `json:"missing_total"`
	MissingTimeInMillis int64 `json:"missing_time_in_millis"`
	Current             int64 `json:"current"`
}

IndexStatsIndexGetResponse defines index stats index get information structure

type IndexStatsIndexIndexingResponse added in v1.0.2

type IndexStatsIndexIndexingResponse struct {
	IndexTotal           int64 `json:"index_total"`
	IndexTimeInMillis    int64 `json:"index_time_in_millis"`
	IndexCurrent         int64 `json:"index_current"`
	IndexFailed          int64 `json:"index_failed"`
	DeleteTotal          int64 `json:"delete_total"`
	DeleteTimeInMillis   int64 `json:"delete_time_in_millis"`
	DeleteCurrent        int64 `json:"delete_current"`
	NoopUpdateTotal      int64 `json:"noop_update_total"`
	IsThrottled          bool  `json:"is_throttled"`
	ThrottleTimeInMillis int64 `json:"throttle_time_in_millis"`
}

IndexStatsIndexIndexingResponse defines index stats index indexing information structure

type IndexStatsIndexMergesResponse added in v1.0.2

type IndexStatsIndexMergesResponse struct {
	Current                    int64 `json:"current"`
	CurrentDocs                int64 `json:"current_docs"`
	CurrentSizeInBytes         int64 `json:"current_size_in_bytes"`
	Total                      int64 `json:"total"`
	TotalTimeInMillis          int64 `json:"total_time_in_millis"`
	TotalDocs                  int64 `json:"total_docs"`
	TotalSizeInBytes           int64 `json:"total_size_in_bytes"`
	TotalStoppedTimeInMillis   int64 `json:"total_stopped_time_in_millis"`
	TotalThrottledTimeInMillis int64 `json:"total_throttled_time_in_millis"`
	TotalAutoThrottleInBytes   int64 `json:"total_auto_throttle_in_bytes"`
}

IndexStatsIndexMergesResponse defines index stats index merges information structure

type IndexStatsIndexQueryCacheResponse added in v1.0.2

type IndexStatsIndexQueryCacheResponse struct {
	MemorySizeInBytes int64 `json:"memory_size_in_bytes"`
	TotalCount        int64 `json:"total_count"`
	HitCount          int64 `json:"hit_count"`
	MissCount         int64 `json:"miss_count"`
	CacheSize         int64 `json:"cache_size"`
	CacheCount        int64 `json:"cache_count"`
	Evictions         int64 `json:"evictions"`
}

IndexStatsIndexQueryCacheResponse defines index stats index query cache information structure

type IndexStatsIndexRecoveryResponse added in v1.0.2

type IndexStatsIndexRecoveryResponse struct {
	CurrentAsSource      int64 `json:"current_as_source"`
	CurrentAsTarget      int64 `json:"current_as_target"`
	ThrottleTimeInMillis int64 `json:"throttle_time_in_millis"`
}

IndexStatsIndexRecoveryResponse defines index stats index recovery information structure

type IndexStatsIndexRefreshResponse added in v1.0.2

type IndexStatsIndexRefreshResponse struct {
	Total             int64 `json:"total"`
	TotalTimeInMillis int64 `json:"total_time_in_millis"`
	Listeners         int64 `json:"listeners"`
}

IndexStatsIndexRefreshResponse defines index stats index refresh information structure

type IndexStatsIndexRequestCacheResponse added in v1.0.2

type IndexStatsIndexRequestCacheResponse struct {
	MemorySizeInBytes int64 `json:"memory_size_in_bytes"`
	Evictions         int64 `json:"evictions"`
	HitCount          int64 `json:"hit_count"`
	MissCount         int64 `json:"miss_count"`
}

IndexStatsIndexRequestCacheResponse defines index stats index request cache information structure

type IndexStatsIndexResponse added in v1.0.2

type IndexStatsIndexResponse struct {
	Primaries IndexStatsIndexDetailResponse                    `json:"primaries"`
	Total     IndexStatsIndexDetailResponse                    `json:"total"`
	Shards    map[string][]IndexStatsIndexShardsDetailResponse `json:"shards"`
}

IndexStatsIndexResponse defines index stats index information structure

type IndexStatsIndexRoutingResponse added in v1.1.0

type IndexStatsIndexRoutingResponse struct {
	Node    string `json:"node"`
	Primary bool   `json:"primary"`
}

IndexStatsIndexRoutingResponse defines index stats index routing information structure

type IndexStatsIndexSearchResponse added in v1.0.2

type IndexStatsIndexSearchResponse struct {
	OpenContexts        int64 `json:"open_contexts"`
	QueryTotal          int64 `json:"query_total"`
	QueryTimeInMillis   int64 `json:"query_time_in_millis"`
	QueryCurrent        int64 `json:"query_current"`
	FetchTotal          int64 `json:"fetch_total"`
	FetchTimeInMillis   int64 `json:"fetch_time_in_millis"`
	FetchCurrent        int64 `json:"fetch_current"`
	ScrollTotal         int64 `json:"scroll_total"`
	ScrollTimeInMillis  int64 `json:"scroll_time_in_millis"`
	ScrollCurrent       int64 `json:"scroll_current"`
	SuggestTotal        int64 `json:"suggest_total"`
	SuggestTimeInMillis int64 `json:"suggest_time_in_millis"`
	SuggestCurrent      int64 `json:"suggest_current"`
}

IndexStatsIndexSearchResponse defines index stats index search information structure

type IndexStatsIndexSegmentsResponse added in v1.0.2

type IndexStatsIndexSegmentsResponse struct {
	Count                     int64 `json:"count"`
	MemoryInBytes             int64 `json:"memory_in_bytes"`
	TermsMemoryInBytes        int64 `json:"terms_memory_in_bytes"`
	StoredFieldsMemoryInBytes int64 `json:"stored_fields_memory_in_bytes"`
	TermVectorsMemoryInBytes  int64 `json:"term_vectors_memory_in_bytes"`
	NormsMemoryInBytes        int64 `json:"norms_memory_in_bytes"`
	PointsMemoryInBytes       int64 `json:"points_memory_in_bytes"`
	DocValuesMemoryInBytes    int64 `json:"doc_values_memory_in_bytes"`
	IndexWriterMemoryInBytes  int64 `json:"index_writer_memory_in_bytes"`
	VersionMapMemoryInBytes   int64 `json:"version_map_memory_in_bytes"`
	FixedBitSetMemoryInBytes  int64 `json:"fixed_bit_set_memory_in_bytes"`
	MaxUnsafeAutoIDTimestamp  int64 `json:"max_unsafe_auto_id_timestamp"`
}

IndexStatsIndexSegmentsResponse defines index stats index segments information structure

type IndexStatsIndexShardsDetailResponse added in v1.1.0

type IndexStatsIndexShardsDetailResponse struct {
	*IndexStatsIndexDetailResponse
	Routing IndexStatsIndexRoutingResponse `json:"routing"`
}

IndexStatsIndexShardsDetailResponse defines index stats index shard details information structure

type IndexStatsIndexStoreResponse added in v1.0.2

type IndexStatsIndexStoreResponse struct {
	SizeInBytes          int64 `json:"size_in_bytes"`
	ThrottleTimeInMillis int64 `json:"throttle_time_in_millis"`
}

IndexStatsIndexStoreResponse defines index stats index store information structure

type IndexStatsIndexTranslogResponse added in v1.0.2

type IndexStatsIndexTranslogResponse struct {
	Operations  int64 `json:"operations"`
	SizeInBytes int64 `json:"size_in_bytes"`
}

IndexStatsIndexTranslogResponse defines index stats index translog information structure

type IndexStatsIndexWarmerResponse added in v1.0.2

type IndexStatsIndexWarmerResponse struct {
	Current           int64 `json:"current"`
	Total             int64 `json:"total"`
	TotalTimeInMillis int64 `json:"total_time_in_millis"`
}

IndexStatsIndexWarmerResponse defines index stats index warmer information structure

type IndexStatsShardsResponse added in v1.0.2

type IndexStatsShardsResponse struct {
	Total      int64 `json:"total"`
	Successful int64 `json:"successful"`
	Failed     int64 `json:"failed"`
}

IndexStatsShardsResponse defines index stats shards information structure

type Indices added in v1.0.2

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

Indices information struct

func NewIndices added in v1.0.2

func NewIndices(logger log.Logger, client *http.Client, url *url.URL, shards bool) *Indices

NewIndices defines Indices Prometheus metrics

func (*Indices) ClusterLabelUpdates added in v1.1.0

func (i *Indices) ClusterLabelUpdates() *chan *clusterinfo.Response

ClusterLabelUpdates returns a pointer to a channel to receive cluster info updates. It implements the (not exported) clusterinfo.consumer interface

func (*Indices) Collect added in v1.0.2

func (i *Indices) Collect(ch chan<- prometheus.Metric)

Collect gets Indices metric values

func (*Indices) Describe added in v1.0.2

func (i *Indices) Describe(ch chan<- *prometheus.Desc)

Describe add Indices metrics descriptions

func (*Indices) String added in v1.1.0

func (i *Indices) String() string

String implements the stringer interface. It is part of the clusterinfo.consumer interface

type IndicesSettings added in v1.1.0

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

IndicesSettings information struct

func NewIndicesSettings added in v1.1.0

func NewIndicesSettings(logger log.Logger, client *http.Client, url *url.URL) *IndicesSettings

NewIndicesSettings defines Indices Settings Prometheus metrics

func (*IndicesSettings) Collect added in v1.1.0

func (cs *IndicesSettings) Collect(ch chan<- prometheus.Metric)

Collect gets all indices settings metric values

func (*IndicesSettings) Describe added in v1.1.0

func (cs *IndicesSettings) Describe(ch chan<- *prometheus.Desc)

Describe add Snapshots metrics descriptions

type IndicesSettingsResponse added in v1.1.0

type IndicesSettingsResponse map[string]Index

IndicesSettingsResponse is a representation of Elasticsearch Settings for each Index

type NodeStatsBreakersResponse

type NodeStatsBreakersResponse struct {
	EstimatedSize int64   `json:"estimated_size_in_bytes"`
	LimitSize     int64   `json:"limit_size_in_bytes"`
	Overhead      float64 `json:"overhead"`
	Tripped       int64   `json:"tripped"`
}

NodeStatsBreakersResponse is a representation of a statistics about the field data circuit breaker

type NodeStatsFSDataResponse

type NodeStatsFSDataResponse struct {
	Path      string `json:"path"`
	Mount     string `json:"mount"`
	Device    string `json:"dev"`
	Total     int64  `json:"total_in_bytes"`
	Free      int64  `json:"free_in_bytes"`
	Available int64  `json:"available_in_bytes"`
}

NodeStatsFSDataResponse defines node stats filesystem data structure

type NodeStatsFSIOStatsDeviceResponse added in v1.1.0

type NodeStatsFSIOStatsDeviceResponse struct {
	DeviceName      string `json:"device_name"`
	Operations      int64  `json:"operations"`
	ReadOperations  int64  `json:"read_operations"`
	WriteOperations int64  `json:"write_operations"`
	ReadSize        int64  `json:"read_kilobytes"`
	WriteSize       int64  `json:"write_kilobytes"`
}

NodeStatsFSIOStatsDeviceResponse is a representation of a node stat filesystem device

type NodeStatsFSIOStatsResponse added in v1.1.0

type NodeStatsFSIOStatsResponse struct {
	Devices []NodeStatsFSIOStatsDeviceResponse `json:"devices"`
}

NodeStatsFSIOStatsResponse defines node stats filesystem device structure

type NodeStatsFSResponse

type NodeStatsFSResponse struct {
	Timestamp int64                      `json:"timestamp"`
	Data      []NodeStatsFSDataResponse  `json:"data"`
	IOStats   NodeStatsFSIOStatsResponse `json:"io_stats"`
}

NodeStatsFSResponse is a representation of a file system information, data path, free disk space, read/write stats

type NodeStatsHTTPResponse

type NodeStatsHTTPResponse struct {
	CurrentOpen int64 `json:"current_open"`
	TotalOpen   int64 `json:"total_open"`
}

NodeStatsHTTPResponse defines node stats HTTP connections structure

type NodeStatsIndicesCacheResponse

type NodeStatsIndicesCacheResponse struct {
	Evictions  int64 `json:"evictions"`
	MemorySize int64 `json:"memory_size_in_bytes"`
	CacheCount int64 `json:"cache_count"`
	CacheSize  int64 `json:"cache_size"`
	HitCount   int64 `json:"hit_count"`
	MissCount  int64 `json:"miss_count"`
	TotalCount int64 `json:"total_count"`
}

NodeStatsIndicesCacheResponse defines node stats cache information structure for indices

type NodeStatsIndicesCompletionResponse added in v1.1.0

type NodeStatsIndicesCompletionResponse struct {
	Size int64 `json:"size_in_bytes"`
}

NodeStatsIndicesCompletionResponse defines node stats completion information structure for indices

type NodeStatsIndicesDocsResponse

type NodeStatsIndicesDocsResponse struct {
	Count   int64 `json:"count"`
	Deleted int64 `json:"deleted"`
}

NodeStatsIndicesDocsResponse defines node stats docs information structure for indices

type NodeStatsIndicesFlushResponse

type NodeStatsIndicesFlushResponse struct {
	Total int64 `json:"total"`
	Time  int64 `json:"total_time_in_millis"`
}

NodeStatsIndicesFlushResponse defines node stats flush information structure for indices

type NodeStatsIndicesGetResponse

type NodeStatsIndicesGetResponse struct {
	Total        int64 `json:"total"`
	Time         int64 `json:"time_in_millis"`
	ExistsTotal  int64 `json:"exists_total"`
	ExistsTime   int64 `json:"exists_time_in_millis"`
	MissingTotal int64 `json:"missing_total"`
	MissingTime  int64 `json:"missing_time_in_millis"`
	Current      int64 `json:"current"`
}

NodeStatsIndicesGetResponse defines node stats get information structure for indices

type NodeStatsIndicesIndexingResponse

type NodeStatsIndicesIndexingResponse struct {
	IndexTotal    int64 `json:"index_total"`
	IndexTime     int64 `json:"index_time_in_millis"`
	IndexCurrent  int64 `json:"index_current"`
	DeleteTotal   int64 `json:"delete_total"`
	DeleteTime    int64 `json:"delete_time_in_millis"`
	DeleteCurrent int64 `json:"delete_current"`
	IsThrottled   bool  `json:"is_throttled"`
	ThrottleTime  int64 `json:"throttle_time_in_millis"`
}

NodeStatsIndicesIndexingResponse defines node stats indexing information structure for indices

type NodeStatsIndicesMergesResponse

type NodeStatsIndicesMergesResponse struct {
	Current            int64 `json:"current"`
	CurrentDocs        int64 `json:"current_docs"`
	CurrentSize        int64 `json:"current_size_in_bytes"`
	Total              int64 `json:"total"`
	TotalDocs          int64 `json:"total_docs"`
	TotalSize          int64 `json:"total_size_in_bytes"`
	TotalTime          int64 `json:"total_time_in_millis"`
	TotalThrottledTime int64 `json:"total_throttled_time_in_millis"`
}

NodeStatsIndicesMergesResponse defines node stats merges information structure for indices

type NodeStatsIndicesRefreshResponse

type NodeStatsIndicesRefreshResponse struct {
	Total     int64 `json:"total"`
	TotalTime int64 `json:"total_time_in_millis"`
}

NodeStatsIndicesRefreshResponse defines node stats refresh information structure for indices

type NodeStatsIndicesResponse

NodeStatsIndicesResponse is a representation of a indices stats (size, document count, indexing and deletion times, search times, field cache size, merges and flushes)

type NodeStatsIndicesSearchResponse

type NodeStatsIndicesSearchResponse struct {
	OpenContext  int64 `json:"open_contexts"`
	QueryTotal   int64 `json:"query_total"`
	QueryTime    int64 `json:"query_time_in_millis"`
	QueryCurrent int64 `json:"query_current"`
	FetchTotal   int64 `json:"fetch_total"`
	FetchTime    int64 `json:"fetch_time_in_millis"`
	FetchCurrent int64 `json:"fetch_current"`
	SuggestTotal int64 `json:"suggest_total"`
	SuggestTime  int64 `json:"suggest_time_in_millis"`
	ScrollTotal  int64 `json:"scroll_total"`
	ScrollTime   int64 `json:"scroll_time_in_millis"`
}

NodeStatsIndicesSearchResponse defines node stats search information structure for indices

type NodeStatsIndicesSegmentsResponse

type NodeStatsIndicesSegmentsResponse struct {
	Count              int64 `json:"count"`
	Memory             int64 `json:"memory_in_bytes"`
	TermsMemory        int64 `json:"terms_memory_in_bytes"`
	IndexWriterMemory  int64 `json:"index_writer_memory_in_bytes"`
	NormsMemory        int64 `json:"norms_memory_in_bytes"`
	StoredFieldsMemory int64 `json:"stored_fields_memory_in_bytes"`
	FixedBitSet        int64 `json:"fixed_bit_set_memory_in_bytes"`
	DocValuesMemory    int64 `json:"doc_values_memory_in_bytes"`
	TermVectorsMemory  int64 `json:"term_vectors_memory_in_bytes"`
	PointsMemory       int64 `json:"points_memory_in_bytes"`
	VersionMapMemory   int64 `json:"version_map_memory_in_bytes"`
}

NodeStatsIndicesSegmentsResponse defines node stats segments information structure for indices

type NodeStatsIndicesStoreResponse

type NodeStatsIndicesStoreResponse struct {
	Size         int64 `json:"size_in_bytes"`
	ThrottleTime int64 `json:"throttle_time_in_millis"`
}

NodeStatsIndicesStoreResponse defines node stats store information structure for indices

type NodeStatsIndicesTranslogResponse

type NodeStatsIndicesTranslogResponse struct {
	Operations int64 `json:"operations"`
	Size       int64 `json:"size_in_bytes"`
}

NodeStatsIndicesTranslogResponse defines node stats translog information structure for indices

type NodeStatsIndicesWarmerResponse added in v1.1.0

type NodeStatsIndicesWarmerResponse struct {
	Total     int64 `json:"total"`
	TotalTime int64 `json:"total_time_in_millis"`
}

NodeStatsIndicesWarmerResponse defines node stats warmer information structure for indices

type NodeStatsJVMBufferPoolResponse

type NodeStatsJVMBufferPoolResponse struct {
	Count         int64 `json:"count"`
	TotalCapacity int64 `json:"total_capacity_in_bytes"`
	Used          int64 `json:"used_in_bytes"`
}

NodeStatsJVMBufferPoolResponse defines node stats JVM buffer pool information structure

type NodeStatsJVMGCCollectorResponse

type NodeStatsJVMGCCollectorResponse struct {
	CollectionCount int64 `json:"collection_count"`
	CollectionTime  int64 `json:"collection_time_in_millis"`
}

NodeStatsJVMGCCollectorResponse defines node stats JVM garbage collector collection information structure

type NodeStatsJVMGCResponse

type NodeStatsJVMGCResponse struct {
	Collectors map[string]NodeStatsJVMGCCollectorResponse `json:"collectors"`
}

NodeStatsJVMGCResponse defines node stats JVM garbage collector information structure

type NodeStatsJVMMemPoolResponse added in v1.0.2

type NodeStatsJVMMemPoolResponse struct {
	Used     int64 `json:"used_in_bytes"`
	Max      int64 `json:"max_in_bytes"`
	PeakUsed int64 `json:"peak_used_in_bytes"`
	PeakMax  int64 `json:"peak_max_in_bytes"`
}

NodeStatsJVMMemPoolResponse defines node stats JVM memory pool information structure

type NodeStatsJVMMemResponse

type NodeStatsJVMMemResponse struct {
	HeapCommitted    int64                                  `json:"heap_committed_in_bytes"`
	HeapUsed         int64                                  `json:"heap_used_in_bytes"`
	HeapMax          int64                                  `json:"heap_max_in_bytes"`
	NonHeapCommitted int64                                  `json:"non_heap_committed_in_bytes"`
	NonHeapUsed      int64                                  `json:"non_heap_used_in_bytes"`
	Pools            map[string]NodeStatsJVMMemPoolResponse `json:"pools"`
}

NodeStatsJVMMemResponse defines node stats JVM memory information structure

type NodeStatsJVMResponse

type NodeStatsJVMResponse struct {
	BufferPools map[string]NodeStatsJVMBufferPoolResponse `json:"buffer_pools"`
	GC          NodeStatsJVMGCResponse                    `json:"gc"`
	Mem         NodeStatsJVMMemResponse                   `json:"mem"`
}

NodeStatsJVMResponse is a representation of a JVM stats, memory pool information, garbage collection, buffer pools, number of loaded/unloaded classes

type NodeStatsNetworkResponse

type NodeStatsNetworkResponse struct {
	TCP NodeStatsTCPResponse `json:"tcp"`
}

NodeStatsNetworkResponse defines node stats network information structure

type NodeStatsNodeResponse

type NodeStatsNodeResponse struct {
	Name             string                                     `json:"name"`
	Host             string                                     `json:"host"`
	Timestamp        int64                                      `json:"timestamp"`
	TransportAddress string                                     `json:"transport_address"`
	Hostname         string                                     `json:"hostname"`
	Roles            []string                                   `json:"roles"`
	Attributes       map[string]string                          `json:"attributes"`
	Indices          NodeStatsIndicesResponse                   `json:"indices"`
	OS               NodeStatsOSResponse                        `json:"os"`
	Network          NodeStatsNetworkResponse                   `json:"network"`
	FS               NodeStatsFSResponse                        `json:"fs"`
	ThreadPool       map[string]NodeStatsThreadPoolPoolResponse `json:"thread_pool"`
	JVM              NodeStatsJVMResponse                       `json:"jvm"`
	Breakers         map[string]NodeStatsBreakersResponse       `json:"breakers"`
	HTTP             map[string]int                             `json:"http"`
	Transport        NodeStatsTransportResponse                 `json:"transport"`
	Process          NodeStatsProcessResponse                   `json:"process"`
}

NodeStatsNodeResponse defines node stats information structure for nodes

type NodeStatsOSCPULoadResponse added in v1.0.2

type NodeStatsOSCPULoadResponse struct {
	Load1  float64 `json:"1m"`
	Load5  float64 `json:"5m"`
	Load15 float64 `json:"15m"`
}

NodeStatsOSCPULoadResponse defines node stats operating system CPU load structure

type NodeStatsOSCPUResponse

type NodeStatsOSCPUResponse struct {
	Sys     int64                      `json:"sys"`
	User    int64                      `json:"user"`
	Idle    int64                      `json:"idle"`
	Steal   int64                      `json:"stolen"`
	LoadAvg NodeStatsOSCPULoadResponse `json:"load_average"`
	Percent int64                      `json:"percent"`
}

NodeStatsOSCPUResponse defines node stats operating system CPU usage structure

type NodeStatsOSMemResponse

type NodeStatsOSMemResponse struct {
	Free       int64 `json:"free_in_bytes"`
	Used       int64 `json:"used_in_bytes"`
	ActualFree int64 `json:"actual_free_in_bytes"`
	ActualUsed int64 `json:"actual_used_in_bytes"`
}

NodeStatsOSMemResponse defines node stats operating system memory usage structure

type NodeStatsOSResponse

type NodeStatsOSResponse struct {
	Timestamp int64 `json:"timestamp"`
	Uptime    int64 `json:"uptime_in_millis"`
	// LoadAvg was an array of per-cpu values pre-2.0, and is a string in 2.0
	// Leaving this here in case we want to implement parsing logic later
	LoadAvg json.RawMessage         `json:"load_average"`
	CPU     NodeStatsOSCPUResponse  `json:"cpu"`
	Mem     NodeStatsOSMemResponse  `json:"mem"`
	Swap    NodeStatsOSSwapResponse `json:"swap"`
}

NodeStatsOSResponse is a representation of a operating system stats, load average, mem, swap

type NodeStatsOSSwapResponse

type NodeStatsOSSwapResponse struct {
	Used int64 `json:"used_in_bytes"`
	Free int64 `json:"free_in_bytes"`
}

NodeStatsOSSwapResponse defines node stats operating system swap usage structure

type NodeStatsProcessCPUResponse

type NodeStatsProcessCPUResponse struct {
	Percent int64 `json:"percent"`
	Sys     int64 `json:"sys_in_millis"`
	User    int64 `json:"user_in_millis"`
	Total   int64 `json:"total_in_millis"`
}

NodeStatsProcessCPUResponse defines node stats process CPU usage structure

type NodeStatsProcessMemResponse

type NodeStatsProcessMemResponse struct {
	Resident     int64 `json:"resident_in_bytes"`
	Share        int64 `json:"share_in_bytes"`
	TotalVirtual int64 `json:"total_virtual_in_bytes"`
}

NodeStatsProcessMemResponse defines node stats process memory usage structure

type NodeStatsProcessResponse

type NodeStatsProcessResponse struct {
	Timestamp int64                       `json:"timestamp"`
	OpenFD    int64                       `json:"open_file_descriptors"`
	MaxFD     int64                       `json:"max_file_descriptors"`
	CPU       NodeStatsProcessCPUResponse `json:"cpu"`
	Memory    NodeStatsProcessMemResponse `json:"mem"`
}

NodeStatsProcessResponse is a representation of a process statistics, memory consumption, cpu usage, open file descriptors

type NodeStatsTCPResponse

type NodeStatsTCPResponse struct {
	ActiveOpens  int64 `json:"active_opens"`
	PassiveOpens int64 `json:"passive_opens"`
	CurrEstab    int64 `json:"curr_estab"`
	InSegs       int64 `json:"in_segs"`
	OutSegs      int64 `json:"out_segs"`
	RetransSegs  int64 `json:"retrans_segs"`
	EstabResets  int64 `json:"estab_resets"`
	AttemptFails int64 `json:"attempt_fails"`
	InErrs       int64 `json:"in_errs"`
	OutRsts      int64 `json:"out_rsts"`
}

NodeStatsTCPResponse defines node stats TCP information structure

type NodeStatsThreadPoolPoolResponse

type NodeStatsThreadPoolPoolResponse struct {
	Threads   int64 `json:"threads"`
	Queue     int64 `json:"queue"`
	Active    int64 `json:"active"`
	Rejected  int64 `json:"rejected"`
	Largest   int64 `json:"largest"`
	Completed int64 `json:"completed"`
}

NodeStatsThreadPoolPoolResponse is a representation of a statistics about each thread pool, including current size, queue and rejected tasks

type NodeStatsTransportResponse

type NodeStatsTransportResponse struct {
	ServerOpen int64 `json:"server_open"`
	RxCount    int64 `json:"rx_count"`
	RxSize     int64 `json:"rx_size_in_bytes"`
	TxCount    int64 `json:"tx_count"`
	TxSize     int64 `json:"tx_size_in_bytes"`
}

NodeStatsTransportResponse is a representation of a transport statistics about sent and received bytes in cluster communication

type Nodes

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

Nodes information struct

func NewNodes

func NewNodes(logger log.Logger, client *http.Client, url *url.URL, all bool, node string) *Nodes

NewNodes defines Nodes Prometheus metrics

func (*Nodes) Collect

func (c *Nodes) Collect(ch chan<- prometheus.Metric)

Collect gets nodes metric values

func (*Nodes) Describe

func (c *Nodes) Describe(ch chan<- *prometheus.Desc)

Describe add metrics descriptions

type Routing added in v1.1.0

type Routing struct {
	Allocation Allocation `json:"allocation"`
}

Routing is a representation of a Elasticsearch Cluster shard routing configuration

type Settings added in v1.1.0

type Settings struct {
	IndexInfo IndexInfo `json:"index"`
}

Settings defines current index settings

type SnapshotRepositoriesResponse added in v1.1.0

type SnapshotRepositoriesResponse map[string]struct {
	Type     string            `json:"type"`
	Settings map[string]string `json:"settings"`
}

SnapshotRepositoriesResponse is a representation snapshots repositories

type SnapshotStatDataResponse added in v1.1.0

type SnapshotStatDataResponse struct {
	Snapshot          string        `json:"snapshot"`
	UUID              string        `json:"uuid"`
	VersionID         int64         `json:"version_id"`
	Version           string        `json:"version"`
	Indices           []string      `json:"indices"`
	State             string        `json:"state"`
	StartTime         time.Time     `json:"start_time"`
	StartTimeInMillis int64         `json:"start_time_in_millis"`
	EndTime           time.Time     `json:"end_time"`
	EndTimeInMillis   int64         `json:"end_time_in_millis"`
	DurationInMillis  int64         `json:"duration_in_millis"`
	Failures          []interface{} `json:"failures"`
	Shards            struct {
		Total      int64 `json:"total"`
		Failed     int64 `json:"failed"`
		Successful int64 `json:"successful"`
	} `json:"shards"`
}

SnapshotStatDataResponse is a representation of the single snapshot stat

type SnapshotStatsResponse added in v1.1.0

type SnapshotStatsResponse struct {
	Snapshots []SnapshotStatDataResponse `json:"snapshots"`
}

SnapshotStatsResponse is a representation of the snapshots stats

type Snapshots added in v1.1.0

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

Snapshots information struct

func NewSnapshots added in v1.1.0

func NewSnapshots(logger log.Logger, client *http.Client, url *url.URL) *Snapshots

NewSnapshots defines Snapshots Prometheus metrics

func (*Snapshots) Collect added in v1.1.0

func (s *Snapshots) Collect(ch chan<- prometheus.Metric)

Collect gets Snapshots metric values

func (*Snapshots) Describe added in v1.1.0

func (s *Snapshots) Describe(ch chan<- *prometheus.Desc)

Describe add Snapshots metrics descriptions

Jump to

Keyboard shortcuts

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