I’m trying to setup MySQL monitoring, but it doesn’t seem to work.
After setting up pmm agent on the db node, the node appears on the pmm dashboard but there is no data, the only thing I’m getting is a System Information message
No pmm-agent running on this node
which after some time changes to correct system data (hostname, cpu, ram, etc…).
On the db node:
pmm-admin status
Agent ID: /agent_id/e0a6d26f-08e8-4213-abc6-f219062df39b
Node ID : /node_id/b8fd9824-5e65-4e6f-8b8e-0eceb1233c53
PMM Server:
URL : https://localhost:11443/ (NOTE: this is an ssh tunnel)
Version: 2.11.1
PMM Client:
Connected : true
Time drift : 1.280067ms
Latency : 1.978329ms
pmm-admin version: 2.11.1
pmm-agent version: 2.11.1
Agents:
/agent_id/4b05f2a7-bbac-4cff-b1a6-6a9bc6cbee05 mysql_perfschema_agent Running
/agent_id/91da16f9-c8d0-41ee-97c3-d62df282c5cc node_exporter Running
/agent_id/b57a494a-fee7-4c3d-95f4-f498468d67fa mysqld_exporter Running
pmm-admin list
Service type Service name Address and port Service ID
MySQL myServiceName 127.0.0.1:3306 /service_id/8c508bf3-bdd8-4971-b519-1b5cb0e7f113
Agent type Status Agent ID Service ID
pmm_agent Connected /agent_id/e0a6d26f-08e8-4213-abc6-f219062df39b
node_exporter Running /agent_id/91da16f9-c8d0-41ee-97c3-d62df282c5cc
mysqld_exporter Running /agent_id/b57a494a-fee7-4c3d-95f4-f498468d67fa /service_id/8c508bf3-bdd8-4971-b519-1b5cb0e7f113
mysql_perfschema_agent Running /agent_id/4b05f2a7-bbac-4cff-b1a6-6a9bc6cbee05 /service_id/8c508bf3-bdd8-4971-b519-1b5cb0e7f113
pmm can be seen performing queries on the database every few seconds
on the db node gives output (mysql_perf_schema_file_instances_bytes{event_name="wait/io/file/innodb/innodb_data_file",file_name="<redacted>",mode="read"} 4.01408e+06 and so on), same on pmm-server when runnin with node IP
just for anyone that stumbles on this across the internet you can run pmm-admin config --help or pmm-admin add <mysql|postgresql|mongodb> --help and see what we autodetected as the IP of the system, if you don’t specify that positional argument, we’ll default to what we detected. It’s on our roadmap to enhance that or at least make it more obvious what we will use.