DPM Agent Plugins
Here’s a quick overview of the functionality of each Database Performance Monitor plugin.
vc-agent-007
This plugin gathers basic identifying information about the host operating system and database server (MySQL, PostgreSQL, etc.), and registers them with the DPM API so the agent can refer to a host ID when sending metrics. It installs, upgrades, starts, stops, and supervises the other plugins. No commands are ever pushed to the supervisor. Instead, commands are pulled periodically; your host does not need to accept connections from the open internet. If vc-agent-007 is shut down it must be started again on the machine itself.
vc-aggregator
This is an aggregator/gateway similar to StatsD. It listens for UDP packets with time-series metrics and periodically sends these metrics to the DPM APIs. If for whatever reason the DPM API is unavailable, vc-aggregator automatically sends data to our secure S3 backup.
query plugins
When capturing query information via TCP sniffing, DPM uses a query plugin for each database server. The query plugin is a passive observer, decoding network traffic and sending data to the aggregator. It does not intercept any database traffic and does not affect database performance. The query plugin also captures query samples if this feature is enabled.
Each query plugin is named for the database technology it is monitoring: vc-mysql-query, vc-pgsql-query, etc.
metrics plugins
The metrics plugin captures database health and status information. When monitoring remote hosts where the agent cannot be installed directly, such as Amazon RDS and Aurora, this plugin also captures query information. Depending on the database type, query data and database metrics come from the following sources:
Database Technology | Database Metrics Data Sources | Query Data Sources (Off-Host) |
---|---|---|
MySQL | SHOW STATUS , SHOW PROCESSLIST , SHOW ENGINE STATUS , SHOW SLAVE STATUS , etc. |
events_statements_summary_by_digest , events_statements_history_long |
PostgreSQL | pg_stat_activity , pg_stat_database , pg_stat_bgwriter |
pg_stat_statements , pg_stat_activity |
MongoDB | serverStatus() , currentOp() |
TCP sniffing only |
Redis | INFO |
TCP sniffing only |
More information about the specific metrics captured can be found in our metrics documentation.
Each metric plugin is named for the database technology it is monitoring: vc-mysql-metrics, vc-pgsql-metrics, etc.
vc-os-metrics
This agent plugin reads data from the /proc
filesystem and sends metrics such as disk, CPU, memory, and
network stats to vc-aggregator. More information about the metrics it collects can be found in the os
section of our metrics documentation.