Documentation ¶
Index ¶
- Constants
- Variables
- func GetMySQLVersion(db *sql.DB, logger log.Logger) float64
- func NewDesc(subsystem, name, help string) *prometheus.Desc
- func ParseStatus(data sql.RawBytes) (float64, bool)
- func ValidPrometheusName(s string) string
- type Exporter
- type Metrics
- type ScrapeAutoIncrementColumns
- type ScrapeBinlogSize
- type ScrapeClientStat
- type ScrapeEngineInnodbStatus
- type ScrapeEngineTokudbStatus
- type ScrapeGlobalStatus
- type ScrapeGlobalVariables
- type ScrapeHeartbeat
- type ScrapeInfoSchemaInnodbTablespaces
- type ScrapeInnodbCmp
- type ScrapeInnodbCmpMem
- type ScrapeInnodbMetrics
- type ScrapePerfEventsStatements
- type ScrapePerfEventsStatementsSum
- type ScrapePerfEventsWaits
- type ScrapePerfFileEvents
- type ScrapePerfFileInstances
- type ScrapePerfIndexIOWaits
- type ScrapePerfMemoryEvents
- type ScrapePerfReplicationApplierStatsByWorker
- func (ScrapePerfReplicationApplierStatsByWorker) Help() string
- func (ScrapePerfReplicationApplierStatsByWorker) Name() string
- func (ScrapePerfReplicationApplierStatsByWorker) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, ...) error
- func (ScrapePerfReplicationApplierStatsByWorker) Version() float64
- type ScrapePerfReplicationGroupMemberStats
- func (ScrapePerfReplicationGroupMemberStats) Help() string
- func (ScrapePerfReplicationGroupMemberStats) Name() string
- func (ScrapePerfReplicationGroupMemberStats) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, ...) error
- func (ScrapePerfReplicationGroupMemberStats) Version() float64
- type ScrapePerfReplicationGroupMembers
- type ScrapePerfTableIOWaits
- type ScrapePerfTableLockWaits
- type ScrapePlugins
- type ScrapeProcesslist
- type ScrapeQueryResponseTime
- type ScrapeReplicaHost
- type ScrapeSchemaStat
- type ScrapeSlaveHosts
- type ScrapeSlaveStatus
- type ScrapeTableSchema
- type ScrapeTableStat
- type ScrapeUser
- type ScrapeUserStat
- type Scraper
- Bugs
Constants ¶
const InformationSchema = informationSchema
const Namespace = namespace
const VersionQuery = versionQuery
Variables ¶
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.
var ( SlaveHostsInfo = prometheus.NewDesc( prometheus.BuildFQName(namespace, heartbeat, "mysql_slave_hosts_info"), "Information about running slaves", []string{"server_id", "slave_host", "port", "master_id", "slave_uuid"}, nil, ) )
Metric descriptors.
Functions ¶
func NewDesc ¶
func NewDesc(subsystem, name, help string) *prometheus.Desc
func ValidPrometheusName ¶
Types ¶
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, logger log.Logger) *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 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 ¶
NewMetrics creates new Metrics instance.
type ScrapeAutoIncrementColumns ¶
type ScrapeAutoIncrementColumns struct{}
ScrapeAutoIncrementColumns collects auto_increment column information.
func (ScrapeAutoIncrementColumns) Help ¶
func (ScrapeAutoIncrementColumns) Help() string
Help describes the role of the Scraper.
func (ScrapeAutoIncrementColumns) Name ¶
func (ScrapeAutoIncrementColumns) Name() string
Name of the Scraper. Should be unique.
func (ScrapeAutoIncrementColumns) Scrape ¶
func (ScrapeAutoIncrementColumns) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeAutoIncrementColumns) Version ¶
func (ScrapeAutoIncrementColumns) Version() float64
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 describes the role of the Scraper.
func (ScrapeBinlogSize) Name ¶
func (ScrapeBinlogSize) Name() string
Name of the Scraper. Should be unique.
func (ScrapeBinlogSize) Scrape ¶
func (ScrapeBinlogSize) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 describes the role of the Scraper.
func (ScrapeClientStat) Name ¶
func (ScrapeClientStat) Name() string
Name of the Scraper. Should be unique.
func (ScrapeClientStat) Scrape ¶
func (ScrapeClientStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeClientStat) Version ¶
func (ScrapeClientStat) 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 ¶
func (ScrapeEngineInnodbStatus) Help() string
Help describes the role of the Scraper.
func (ScrapeEngineInnodbStatus) Name ¶
func (ScrapeEngineInnodbStatus) Name() string
Name of the Scraper. Should be unique.
func (ScrapeEngineInnodbStatus) Scrape ¶
func (ScrapeEngineInnodbStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeEngineInnodbStatus) Version ¶
func (ScrapeEngineInnodbStatus) Version() float64
Version of MySQL from which scraper is available.
type ScrapeEngineTokudbStatus ¶
type ScrapeEngineTokudbStatus struct{}
ScrapeEngineTokudbStatus scrapes from `SHOW ENGINE TOKUDB STATUS`.
func (ScrapeEngineTokudbStatus) Help ¶
func (ScrapeEngineTokudbStatus) Help() string
Help describes the role of the Scraper.
func (ScrapeEngineTokudbStatus) Name ¶
func (ScrapeEngineTokudbStatus) Name() string
Name of the Scraper. Should be unique.
func (ScrapeEngineTokudbStatus) Scrape ¶
func (ScrapeEngineTokudbStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeEngineTokudbStatus) Version ¶
func (ScrapeEngineTokudbStatus) Version() float64
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 describes the role of the Scraper.
func (ScrapeGlobalStatus) Name ¶
func (ScrapeGlobalStatus) Name() string
Name of the Scraper. Should be unique.
func (ScrapeGlobalStatus) Scrape ¶
func (ScrapeGlobalStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapeGlobalVariables) Help() string
Help describes the role of the Scraper.
func (ScrapeGlobalVariables) Name ¶
func (ScrapeGlobalVariables) Name() string
Name of the Scraper. Should be unique.
func (ScrapeGlobalVariables) Scrape ¶
func (ScrapeGlobalVariables) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 describes the role of the Scraper.
func (ScrapeHeartbeat) Name ¶
func (ScrapeHeartbeat) Name() string
Name of the Scraper. Should be unique.
func (ScrapeHeartbeat) Scrape ¶
func (ScrapeHeartbeat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapeInfoSchemaInnodbTablespaces) Help() string
Help describes the role of the Scraper.
func (ScrapeInfoSchemaInnodbTablespaces) Name ¶
func (ScrapeInfoSchemaInnodbTablespaces) Name() string
Name of the Scraper. Should be unique.
func (ScrapeInfoSchemaInnodbTablespaces) Scrape ¶
func (ScrapeInfoSchemaInnodbTablespaces) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeInfoSchemaInnodbTablespaces) Version ¶
func (ScrapeInfoSchemaInnodbTablespaces) Version() float64
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 describes the role of the Scraper.
func (ScrapeInnodbCmp) Name ¶
func (ScrapeInnodbCmp) Name() string
Name of the Scraper. Should be unique.
func (ScrapeInnodbCmp) Scrape ¶
func (ScrapeInnodbCmp) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeInnodbCmp) Version ¶
func (ScrapeInnodbCmp) Version() float64
Version of MySQL from which scraper is available.
type ScrapeInnodbCmpMem ¶
type ScrapeInnodbCmpMem struct{}
ScrapeInnodbCmp collects from `information_schema.innodb_cmp`.
func (ScrapeInnodbCmpMem) Help ¶
func (ScrapeInnodbCmpMem) Help() string
Help describes the role of the Scraper.
func (ScrapeInnodbCmpMem) Name ¶
func (ScrapeInnodbCmpMem) Name() string
Name of the Scraper. Should be unique.
func (ScrapeInnodbCmpMem) Scrape ¶
func (ScrapeInnodbCmpMem) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 describes the role of the Scraper.
func (ScrapeInnodbMetrics) Name ¶
func (ScrapeInnodbMetrics) Name() string
Name of the Scraper. Should be unique.
func (ScrapeInnodbMetrics) Scrape ¶
func (ScrapeInnodbMetrics) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapePerfEventsStatements) Help() string
Help describes the role of the Scraper.
func (ScrapePerfEventsStatements) Name ¶
func (ScrapePerfEventsStatements) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfEventsStatements) Scrape ¶
func (ScrapePerfEventsStatements) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfEventsStatements) Version ¶
func (ScrapePerfEventsStatements) Version() float64
Version of MySQL from which scraper is available.
type ScrapePerfEventsStatementsSum ¶
type ScrapePerfEventsStatementsSum struct{}
ScrapePerfEventsStatementsSum collects from `performance_schema.events_statements_summary_by_digest`.
func (ScrapePerfEventsStatementsSum) Help ¶
func (ScrapePerfEventsStatementsSum) Help() string
Help describes the role of the Scraper.
func (ScrapePerfEventsStatementsSum) Name ¶
func (ScrapePerfEventsStatementsSum) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfEventsStatementsSum) Scrape ¶
func (ScrapePerfEventsStatementsSum) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfEventsStatementsSum) Version ¶
func (ScrapePerfEventsStatementsSum) Version() float64
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 ¶
func (ScrapePerfEventsWaits) Help() string
Help describes the role of the Scraper.
func (ScrapePerfEventsWaits) Name ¶
func (ScrapePerfEventsWaits) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfEventsWaits) Scrape ¶
func (ScrapePerfEventsWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapePerfFileEvents) Help() string
Help describes the role of the Scraper.
func (ScrapePerfFileEvents) Name ¶
func (ScrapePerfFileEvents) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfFileEvents) Scrape ¶
func (ScrapePerfFileEvents) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapePerfFileInstances) Help() string
Help describes the role of the Scraper.
func (ScrapePerfFileInstances) Name ¶
func (ScrapePerfFileInstances) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfFileInstances) Scrape ¶
func (ScrapePerfFileInstances) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapePerfIndexIOWaits) Help() string
Help describes the role of the Scraper.
func (ScrapePerfIndexIOWaits) Name ¶
func (ScrapePerfIndexIOWaits) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfIndexIOWaits) Scrape ¶
func (ScrapePerfIndexIOWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfIndexIOWaits) Version ¶
func (ScrapePerfIndexIOWaits) Version() float64
Version of MySQL from which scraper is available.
type ScrapePerfMemoryEvents ¶
type ScrapePerfMemoryEvents struct{}
ScrapePerfMemoryEvents collects from `performance_schema.memory_summary_global_by_event_name`.
func (ScrapePerfMemoryEvents) Help ¶
func (ScrapePerfMemoryEvents) Help() string
Help describes the role of the Scraper.
func (ScrapePerfMemoryEvents) Name ¶
func (ScrapePerfMemoryEvents) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfMemoryEvents) Scrape ¶
func (ScrapePerfMemoryEvents) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfMemoryEvents) Version ¶
func (ScrapePerfMemoryEvents) Version() float64
Version of MySQL from which scraper is available.
type ScrapePerfReplicationApplierStatsByWorker ¶
type ScrapePerfReplicationApplierStatsByWorker struct{}
ScrapePerfReplicationApplierStatsByWorker collects from `performance_schema.replication_applier_status_by_worker`.
func (ScrapePerfReplicationApplierStatsByWorker) Help ¶
func (ScrapePerfReplicationApplierStatsByWorker) Help() string
Help describes the role of the Scraper.
func (ScrapePerfReplicationApplierStatsByWorker) Name ¶
func (ScrapePerfReplicationApplierStatsByWorker) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfReplicationApplierStatsByWorker) Scrape ¶
func (ScrapePerfReplicationApplierStatsByWorker) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfReplicationApplierStatsByWorker) Version ¶
func (ScrapePerfReplicationApplierStatsByWorker) Version() float64
Version of MySQL from which scraper is available.
type ScrapePerfReplicationGroupMemberStats ¶
type ScrapePerfReplicationGroupMemberStats struct{}
ScrapePerfReplicationGroupMemberStats collects from `performance_schema.replication_group_member_stats`.
func (ScrapePerfReplicationGroupMemberStats) Help ¶
func (ScrapePerfReplicationGroupMemberStats) Help() string
Help describes the role of the Scraper.
func (ScrapePerfReplicationGroupMemberStats) Name ¶
func (ScrapePerfReplicationGroupMemberStats) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfReplicationGroupMemberStats) Scrape ¶
func (ScrapePerfReplicationGroupMemberStats) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfReplicationGroupMemberStats) Version ¶
func (ScrapePerfReplicationGroupMemberStats) Version() float64
Version of MySQL from which scraper is available.
type ScrapePerfReplicationGroupMembers ¶
type ScrapePerfReplicationGroupMembers struct{}
ScrapeReplicationGroupMembers collects from `performance_schema.replication_group_members`.
func (ScrapePerfReplicationGroupMembers) Help ¶
func (ScrapePerfReplicationGroupMembers) Help() string
Help describes the role of the Scraper.
func (ScrapePerfReplicationGroupMembers) Name ¶
func (ScrapePerfReplicationGroupMembers) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfReplicationGroupMembers) Scrape ¶
func (ScrapePerfReplicationGroupMembers) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfReplicationGroupMembers) Version ¶
func (ScrapePerfReplicationGroupMembers) 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 ¶
func (ScrapePerfTableIOWaits) Help() string
Help describes the role of the Scraper.
func (ScrapePerfTableIOWaits) Name ¶
func (ScrapePerfTableIOWaits) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfTableIOWaits) Scrape ¶
func (ScrapePerfTableIOWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapePerfTableLockWaits) Help() string
Help describes the role of the Scraper.
func (ScrapePerfTableLockWaits) Name ¶
func (ScrapePerfTableLockWaits) Name() string
Name of the Scraper. Should be unique.
func (ScrapePerfTableLockWaits) Scrape ¶
func (ScrapePerfTableLockWaits) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapePerfTableLockWaits) Version ¶
func (ScrapePerfTableLockWaits) Version() float64
Version of MySQL from which scraper is available.
type ScrapePlugins ¶
type ScrapePlugins struct{}
ScrapePlugins collects from `SHOW PLUGINS`.
func (ScrapePlugins) Help ¶
func (ScrapePlugins) Help() string
Help describes the role of the Scraper.
func (ScrapePlugins) Name ¶
func (ScrapePlugins) Name() string
Name of the Scraper. Should be unique.
func (ScrapePlugins) Scrape ¶
func (ScrapePlugins) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
func (ScrapePlugins) Version ¶
func (ScrapePlugins) Version() float64
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 describes the role of the Scraper.
func (ScrapeProcesslist) Name ¶
func (ScrapeProcesslist) Name() string
Name of the Scraper. Should be unique.
func (ScrapeProcesslist) Scrape ¶
func (ScrapeProcesslist) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 ¶
func (ScrapeQueryResponseTime) Help() string
Help describes the role of the Scraper.
func (ScrapeQueryResponseTime) Name ¶
func (ScrapeQueryResponseTime) Name() string
Name of the Scraper. Should be unique.
func (ScrapeQueryResponseTime) Scrape ¶
func (ScrapeQueryResponseTime) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeQueryResponseTime) Version ¶
func (ScrapeQueryResponseTime) Version() float64
Version of MySQL from which scraper is available.
type ScrapeReplicaHost ¶
type ScrapeReplicaHost struct{}
ScrapeReplicaHost collects from `information_schema.replica_host_status`.
func (ScrapeReplicaHost) Help ¶
func (ScrapeReplicaHost) Help() string
Help describes the role of the Scraper.
func (ScrapeReplicaHost) Name ¶
func (ScrapeReplicaHost) Name() string
Name of the Scraper. Should be unique.
func (ScrapeReplicaHost) Scrape ¶
func (ScrapeReplicaHost) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeReplicaHost) Version ¶
func (ScrapeReplicaHost) Version() float64
Version of MySQL from which scraper is available.
type ScrapeSchemaStat ¶
type ScrapeSchemaStat struct{}
ScrapeSchemaStat collects from `information_schema.table_statistics` grouped by schema.
func (ScrapeSchemaStat) Help ¶
func (ScrapeSchemaStat) Help() string
Help describes the role of the Scraper.
func (ScrapeSchemaStat) Name ¶
func (ScrapeSchemaStat) Name() string
Name of the Scraper. Should be unique.
func (ScrapeSchemaStat) Scrape ¶
func (ScrapeSchemaStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeSchemaStat) Version ¶
func (ScrapeSchemaStat) Version() float64
Version of MySQL from which scraper is available.
type ScrapeSlaveHosts ¶
type ScrapeSlaveHosts struct{}
ScrapeSlaveHosts scrapes metrics about the replicating slaves.
func (ScrapeSlaveHosts) Help ¶
func (ScrapeSlaveHosts) Help() string
Help describes the role of the Scraper.
func (ScrapeSlaveHosts) Name ¶
func (ScrapeSlaveHosts) Name() string
Name of the Scraper. Should be unique.
func (ScrapeSlaveHosts) Scrape ¶
func (ScrapeSlaveHosts) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeSlaveHosts) Version ¶
func (ScrapeSlaveHosts) 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 describes the role of the Scraper.
func (ScrapeSlaveStatus) Name ¶
func (ScrapeSlaveStatus) Name() string
Name of the Scraper. Should be unique.
func (ScrapeSlaveStatus) Scrape ¶
func (ScrapeSlaveStatus) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 describes the role of the Scraper.
func (ScrapeTableSchema) Name ¶
func (ScrapeTableSchema) Name() string
Name of the Scraper. Should be unique.
func (ScrapeTableSchema) Scrape ¶
func (ScrapeTableSchema) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) (e error)
Scrape collects data from database connection and sends it over channel as prometheus metric.
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 describes the role of the Scraper.
func (ScrapeTableStat) Name ¶
func (ScrapeTableStat) Name() string
Name of the Scraper. Should be unique.
func (ScrapeTableStat) Scrape ¶
func (ScrapeTableStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeTableStat) Version ¶
func (ScrapeTableStat) Version() float64
Version of MySQL from which scraper is available.
type ScrapeUser ¶
type ScrapeUser struct{}
ScrapeUser collects from `information_schema.processlist`.
func (ScrapeUser) Scrape ¶
func (ScrapeUser) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeUser) Version ¶
func (ScrapeUser) 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 describes the role of the Scraper.
func (ScrapeUserStat) Name ¶
func (ScrapeUserStat) Name() string
Name of the Scraper. Should be unique.
func (ScrapeUserStat) Scrape ¶
func (ScrapeUserStat) Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error
Scrape collects data from database connection and sends it over channel as prometheus metric.
func (ScrapeUserStat) Version ¶
func (ScrapeUserStat) Version() float64
Version of MySQL from which scraper is available.
type Scraper ¶
type Scraper interface { // Name of the Scraper. Should be unique. Name() string // Help describes the role of the Scraper. // Example: "Collect from SHOW ENGINE INNODB STATUS" Help() string // Version of MySQL from which scraper is available. Version() float64 // Scrape collects data from database connection and sends it over channel as prometheus metric. Scrape(ctx context.Context, db *sql.DB, ch chan<- prometheus.Metric, logger log.Logger) error }
Scraper is minimal interface that let's you add new prometheus metrics to mysqld_exporter.
Notes ¶
Bugs ¶
PMM-2726: When PingContext returns with context deadline exceeded the subsequent call will return `bad connection`. https://github.com/go-sql-driver/mysql/issues/858 The PingContext is called second time as a workaround for this issue.
Source Files ¶
- binlog.go
- collector.go
- collector_percona_extensions.go
- engine_innodb.go
- engine_tokudb.go
- exporter.go
- global_status.go
- global_variables.go
- heartbeat.go
- info_schema.go
- info_schema_auto_increment.go
- info_schema_clientstats.go
- info_schema_innodb_cmp.go
- info_schema_innodb_cmpmem.go
- info_schema_innodb_metrics.go
- info_schema_innodb_sys_tablespaces.go
- info_schema_processlist.go
- info_schema_query_response_time.go
- info_schema_replica_host.go
- info_schema_schemastats.go
- info_schema_tables.go
- info_schema_tablestats.go
- info_schema_userstats.go
- mysql.go
- mysql_user.go
- perf_schema.go
- perf_schema_events_statements.go
- perf_schema_events_statements_sum.go
- perf_schema_events_waits.go
- perf_schema_file_events.go
- perf_schema_file_instances.go
- perf_schema_index_io_waits.go
- perf_schema_memory_events.go
- perf_schema_replication_applier_status_by_worker.go
- perf_schema_replication_group_member_stats.go
- perf_schema_replication_group_members.go
- perf_schema_table_io_waits.go
- perf_schema_table_lock_waits.go
- plugins.go
- scraper.go
- slave_hosts.go
- slave_status.go