collector

package
v0.0.0-...-1489327 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2022 License: GPL-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	HeartbeatStoredDesc = prometheus.NewDesc(
		prometheus.BuildFQName(namespace, heartbeat, "stored_timestamp_seconds"),
		"Timestamp stored in the heartbeat table.",
		[]string{"server_id"}, nil,
	)
	HeartbeatNowDesc = prometheus.NewDesc(
		prometheus.BuildFQName(namespace, heartbeat, "now_timestamp_seconds"),
		"Timestamp of the current server.",
		[]string{"server_id"}, nil,
	)
)

Metric descriptors.

Functions

This section is empty.

Types

type ColumnMapping

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

ColumnMapping is the user-friendly representation of a prometheus descriptor map.

func (*ColumnMapping) UnmarshalYAML

func (cm *ColumnMapping) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements yaml.Unmarshaller.

type ColumnUsage

type ColumnUsage int

ColumnUsage should be one of several enum values which describe how a queried row is to be converted to a Prometheus metric.

func (*ColumnUsage) UnmarshalYAML

func (cu *ColumnUsage) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements the yaml.Unmarshaller interface.

type CustomQuery

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

CustomQuery - contains MySQL query parsed from YAML file.

type Exporter

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

Exporter collects MySQL metrics. It implements prometheus.Collector.

func New

func New(ctx context.Context, db *sql.DB, metrics Metrics, scrapers []Scraper) *Exporter

New returns a new MySQL exporter for the provided DSN.

func (*Exporter) Collect

func (e *Exporter) Collect(ch chan<- prometheus.Metric)

Collect implements prometheus.Collector.

func (*Exporter) Describe

func (e *Exporter) Describe(ch chan<- *prometheus.Desc)

Describe implements prometheus.Collector.

type MetricMap

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

MetricMap stores the prometheus metric description which a given column will be mapped to by the collector.

type MetricMapNamespace

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

MetricMapNamespace groups metric maps under a shared set of labels.

type MetricResolution

type MetricResolution string
const (
	LR MetricResolution = "lr"
	MR MetricResolution = "mr"
	HR MetricResolution = "hr"
)

type Metrics

type Metrics struct {
	TotalScrapes prometheus.Counter
	ScrapeErrors *prometheus.CounterVec
	Error        prometheus.Gauge
	MySQLUp      prometheus.Gauge
}

Metrics represents exporter metrics which values can be carried between http requests.

func NewMetrics

func NewMetrics(resolution string) Metrics

NewMetrics creates new Metrics instance.

type ScrapeAutoIncrementColumns

type ScrapeAutoIncrementColumns struct{}

ScrapeAutoIncrementColumns collects auto_increment column information.

func (ScrapeAutoIncrementColumns) Help

Help returns additional information about Scraper.

func (ScrapeAutoIncrementColumns) Name

Name of the Scraper.

func (ScrapeAutoIncrementColumns) Scrape

func (ScrapeAutoIncrementColumns) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeAutoIncrementColumns) Version

Version of MySQL from which scraper is available.

type ScrapeBinlogSize

type ScrapeBinlogSize struct{}

ScrapeBinlogSize colects from `SHOW BINARY LOGS`.

func (ScrapeBinlogSize) Help

func (ScrapeBinlogSize) Help() string

Help returns additional information about Scraper.

func (ScrapeBinlogSize) Name

func (ScrapeBinlogSize) Name() string

Name of the Scraper.

func (ScrapeBinlogSize) Scrape

func (ScrapeBinlogSize) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeBinlogSize) Version

func (ScrapeBinlogSize) Version() float64

Version of MySQL from which scraper is available.

type ScrapeClientStat

type ScrapeClientStat struct{}

ScrapeClientStat collects from `information_schema.client_statistics`.

func (ScrapeClientStat) Help

func (ScrapeClientStat) Help() string

Help returns additional information about Scraper.

func (ScrapeClientStat) Name

func (ScrapeClientStat) Name() string

Name of the Scraper.

func (ScrapeClientStat) Scrape

func (ScrapeClientStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeClientStat) Version

func (ScrapeClientStat) Version() float64

Version of MySQL from which scraper is available.

type ScrapeCustomQuery

type ScrapeCustomQuery struct {
	Resolution MetricResolution
}

ScrapeCustomQuery colects the metrics from custom queries.

func (ScrapeCustomQuery) Help

func (scq ScrapeCustomQuery) Help() string

Help returns additional information about Scraper.

func (ScrapeCustomQuery) Name

func (scq ScrapeCustomQuery) Name() string

Name of the Scraper.

func (ScrapeCustomQuery) Scrape

func (scq ScrapeCustomQuery) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeCustomQuery) Version

func (scq ScrapeCustomQuery) Version() float64

Version of MySQL from which scraper is available.

type ScrapeEngineInnodbStatus

type ScrapeEngineInnodbStatus struct{}

ScrapeEngineInnodbStatus scrapes from `SHOW ENGINE INNODB STATUS`.

func (ScrapeEngineInnodbStatus) Help

Help returns additional information about Scraper.

func (ScrapeEngineInnodbStatus) Name

Name of the Scraper.

func (ScrapeEngineInnodbStatus) Scrape

func (ScrapeEngineInnodbStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeEngineInnodbStatus) Version

Version of MySQL from which scraper is available.

type ScrapeEngineTokudbStatus

type ScrapeEngineTokudbStatus struct{}

ScrapeEngineTokudbStatus scrapes from `SHOW ENGINE TOKUDB STATUS`.

func (ScrapeEngineTokudbStatus) Help

Help returns additional information about Scraper.

func (ScrapeEngineTokudbStatus) Name

Name of the Scraper.

func (ScrapeEngineTokudbStatus) Scrape

func (ScrapeEngineTokudbStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeEngineTokudbStatus) Version

Version of MySQL from which scraper is available.

type ScrapeGlobalStatus

type ScrapeGlobalStatus struct{}

ScrapeGlobalStatus collects from `SHOW GLOBAL STATUS`.

func (ScrapeGlobalStatus) Help

func (ScrapeGlobalStatus) Help() string

Help returns additional information about Scraper.

func (ScrapeGlobalStatus) Name

func (ScrapeGlobalStatus) Name() string

Name of the Scraper.

func (ScrapeGlobalStatus) Scrape

func (ScrapeGlobalStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeGlobalStatus) Version

func (ScrapeGlobalStatus) Version() float64

Version of MySQL from which scraper is available.

type ScrapeGlobalVariables

type ScrapeGlobalVariables struct{}

ScrapeGlobalVariables collects from `SHOW GLOBAL VARIABLES`.

func (ScrapeGlobalVariables) Help

Help returns additional information about Scraper.

func (ScrapeGlobalVariables) Name

Name of the Scraper.

func (ScrapeGlobalVariables) Scrape

func (ScrapeGlobalVariables) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeGlobalVariables) Version

func (ScrapeGlobalVariables) Version() float64

Version of MySQL from which scraper is available.

type ScrapeHeartbeat

type ScrapeHeartbeat struct{}

ScrapeHeartbeat scrapes from the heartbeat table. This is mainly targeting pt-heartbeat, but will work with any heartbeat implementation that writes to a table with two columns: CREATE TABLE heartbeat (

ts                    varchar(26) NOT NULL,
server_id             int unsigned NOT NULL PRIMARY KEY,

);

func (ScrapeHeartbeat) Help

func (ScrapeHeartbeat) Help() string

Help returns additional information about Scraper.

func (ScrapeHeartbeat) Name

func (ScrapeHeartbeat) Name() string

Name of the Scraper.

func (ScrapeHeartbeat) Scrape

func (ScrapeHeartbeat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeHeartbeat) Version

func (ScrapeHeartbeat) Version() float64

Version of MySQL from which scraper is available.

type ScrapeInfoSchemaInnodbTablespaces

type ScrapeInfoSchemaInnodbTablespaces struct{}

ScrapeInfoSchemaInnodbTablespaces collects from `information_schema.innodb_sys_tablespaces`.

func (ScrapeInfoSchemaInnodbTablespaces) Help

Help returns additional information about Scraper.

func (ScrapeInfoSchemaInnodbTablespaces) Name

Name of the Scraper.

func (ScrapeInfoSchemaInnodbTablespaces) Scrape

Scrape collects data.

func (ScrapeInfoSchemaInnodbTablespaces) Version

Version of MySQL from which scraper is available.

type ScrapeInnodbCmp

type ScrapeInnodbCmp struct{}

ScrapeInnodbCmp collects from `information_schema.innodb_cmp`.

func (ScrapeInnodbCmp) Help

func (ScrapeInnodbCmp) Help() string

Help returns additional information about Scraper.

func (ScrapeInnodbCmp) Name

func (ScrapeInnodbCmp) Name() string

Name of the Scraper.

func (ScrapeInnodbCmp) Scrape

func (ScrapeInnodbCmp) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeInnodbCmp) Version

func (ScrapeInnodbCmp) Version() float64

Version of MySQL from which scraper is available.

type ScrapeInnodbCmpMem

type ScrapeInnodbCmpMem struct{}

ScrapeInnodbCmpMem collects from `information_schema.innodb_cmpmem`.

func (ScrapeInnodbCmpMem) Help

func (ScrapeInnodbCmpMem) Help() string

Help returns additional information about Scraper.

func (ScrapeInnodbCmpMem) Name

func (ScrapeInnodbCmpMem) Name() string

Name of the Scraper.

func (ScrapeInnodbCmpMem) Scrape

func (ScrapeInnodbCmpMem) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeInnodbCmpMem) Version

func (ScrapeInnodbCmpMem) Version() float64

Version of MySQL from which scraper is available.

type ScrapeInnodbMetrics

type ScrapeInnodbMetrics struct{}

ScrapeInnodbMetrics collects from `information_schema.innodb_metrics`.

func (ScrapeInnodbMetrics) Help

func (ScrapeInnodbMetrics) Help() string

Help returns additional information about Scraper.

func (ScrapeInnodbMetrics) Name

func (ScrapeInnodbMetrics) Name() string

Name of the Scraper.

func (ScrapeInnodbMetrics) Scrape

func (ScrapeInnodbMetrics) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeInnodbMetrics) Version

func (ScrapeInnodbMetrics) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfEventsStatements

type ScrapePerfEventsStatements struct{}

ScrapePerfEventsStatements collects from `performance_schema.events_statements_summary_by_digest`.

func (ScrapePerfEventsStatements) Help

Help returns additional information about Scraper.

func (ScrapePerfEventsStatements) Name

Name of the Scraper.

func (ScrapePerfEventsStatements) Scrape

func (ScrapePerfEventsStatements) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfEventsStatements) Version

Version of MySQL from which scraper is available.

type ScrapePerfEventsWaits

type ScrapePerfEventsWaits struct{}

ScrapePerfEventsWaits collects from `performance_schema.events_waits_summary_global_by_event_name`.

func (ScrapePerfEventsWaits) Help

Help returns additional information about Scraper.

func (ScrapePerfEventsWaits) Name

Name of the Scraper.

func (ScrapePerfEventsWaits) Scrape

func (ScrapePerfEventsWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfEventsWaits) Version

func (ScrapePerfEventsWaits) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfFileEvents

type ScrapePerfFileEvents struct{}

ScrapePerfFileEvents collects from `performance_schema.file_summary_by_event_name`.

func (ScrapePerfFileEvents) Help

Help returns additional information about Scraper.

func (ScrapePerfFileEvents) Name

Name of the Scraper.

func (ScrapePerfFileEvents) Scrape

func (ScrapePerfFileEvents) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfFileEvents) Version

func (ScrapePerfFileEvents) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfFileInstances

type ScrapePerfFileInstances struct{}

ScrapePerfFileInstances collects from `performance_schema.file_summary_by_instance`.

func (ScrapePerfFileInstances) Help

Help returns additional information about Scraper.

func (ScrapePerfFileInstances) Name

Name of the Scraper.

func (ScrapePerfFileInstances) Scrape

func (ScrapePerfFileInstances) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfFileInstances) Version

func (ScrapePerfFileInstances) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfIndexIOWaits

type ScrapePerfIndexIOWaits struct{}

ScrapePerfIndexIOWaits collects for `performance_schema.table_io_waits_summary_by_index_usage`.

func (ScrapePerfIndexIOWaits) Help

Help returns additional information about Scraper.

func (ScrapePerfIndexIOWaits) Name

Name of the Scraper.

func (ScrapePerfIndexIOWaits) Scrape

func (ScrapePerfIndexIOWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfIndexIOWaits) Version

func (ScrapePerfIndexIOWaits) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfTableIOWaits

type ScrapePerfTableIOWaits struct{}

ScrapePerfTableIOWaits collects from `performance_schema.table_io_waits_summary_by_table`.

func (ScrapePerfTableIOWaits) Help

Help returns additional information about Scraper.

func (ScrapePerfTableIOWaits) Name

Name of the Scraper.

func (ScrapePerfTableIOWaits) Scrape

func (ScrapePerfTableIOWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfTableIOWaits) Version

func (ScrapePerfTableIOWaits) Version() float64

Version of MySQL from which scraper is available.

type ScrapePerfTableLockWaits

type ScrapePerfTableLockWaits struct{}

ScrapePerfTableLockWaits collects from `performance_schema.table_lock_waits_summary_by_table`.

func (ScrapePerfTableLockWaits) Help

Help returns additional information about Scraper.

func (ScrapePerfTableLockWaits) Name

Name of the Scraper.

func (ScrapePerfTableLockWaits) Scrape

func (ScrapePerfTableLockWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapePerfTableLockWaits) Version

Version of MySQL from which scraper is available.

type ScrapeProcesslist

type ScrapeProcesslist struct{}

ScrapeProcesslist collects from `information_schema.processlist`.

func (ScrapeProcesslist) Help

func (ScrapeProcesslist) Help() string

Help returns additional information about Scraper.

func (ScrapeProcesslist) Name

func (ScrapeProcesslist) Name() string

Name of the Scraper.

func (ScrapeProcesslist) Scrape

func (ScrapeProcesslist) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeProcesslist) Version

func (ScrapeProcesslist) Version() float64

Version of MySQL from which scraper is available.

type ScrapeQueryResponseTime

type ScrapeQueryResponseTime struct{}

ScrapeQueryResponseTime collects from `information_schema.query_response_time`.

func (ScrapeQueryResponseTime) Help

Help returns additional information about Scraper.

func (ScrapeQueryResponseTime) Name

Name of the Scraper.

func (ScrapeQueryResponseTime) Scrape

func (ScrapeQueryResponseTime) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeQueryResponseTime) Version

func (ScrapeQueryResponseTime) Version() float64

Version of MySQL from which scraper is available.

type ScrapeSlaveStatus

type ScrapeSlaveStatus struct{}

ScrapeSlaveStatus collects from `SHOW SLAVE STATUS`.

func (ScrapeSlaveStatus) Help

func (ScrapeSlaveStatus) Help() string

Help returns additional information about Scraper.

func (ScrapeSlaveStatus) Name

func (ScrapeSlaveStatus) Name() string

Name of the Scraper.

func (ScrapeSlaveStatus) Scrape

func (ScrapeSlaveStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeSlaveStatus) Version

func (ScrapeSlaveStatus) Version() float64

Version of MySQL from which scraper is available.

type ScrapeTableSchema

type ScrapeTableSchema struct{}

ScrapeTableSchema collects from `information_schema.tables`.

func (ScrapeTableSchema) Help

func (ScrapeTableSchema) Help() string

Help returns additional information about Scraper.

func (ScrapeTableSchema) Name

func (ScrapeTableSchema) Name() string

Name of the Scraper.

func (ScrapeTableSchema) Scrape

func (ScrapeTableSchema) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeTableSchema) Version

func (ScrapeTableSchema) Version() float64

Version of MySQL from which scraper is available.

type ScrapeTableStat

type ScrapeTableStat struct{}

ScrapeTableStat collects from `information_schema.table_statistics`.

func (ScrapeTableStat) Help

func (ScrapeTableStat) Help() string

Help returns additional information about Scraper.

func (ScrapeTableStat) Name

func (ScrapeTableStat) Name() string

Name of the Scraper.

func (ScrapeTableStat) Scrape

func (ScrapeTableStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeTableStat) Version

func (ScrapeTableStat) Version() float64

Version of MySQL from which scraper is available.

type ScrapeUserStat

type ScrapeUserStat struct{}

ScrapeUserStat collects from `information_schema.user_statistics`.

func (ScrapeUserStat) Help

func (ScrapeUserStat) Help() string

Help returns additional information about Scraper.

func (ScrapeUserStat) Name

func (ScrapeUserStat) Name() string

Name of the Scraper.

func (ScrapeUserStat) Scrape

func (ScrapeUserStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error

Scrape collects data.

func (ScrapeUserStat) Version

func (ScrapeUserStat) Version() float64

Version of MySQL from which scraper is available.

type Scraper

type Scraper interface {
	Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric) error
	Name() string
	Help() string
	Version() float64
}

func NewStandardGo

func NewStandardGo() Scraper

func NewStandardProcess

func NewStandardProcess() Scraper

Notes

Bugs

Jump to

Keyboard shortcuts

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