We are pleased to announce our 4th Beta release of PMM 2! PMM (Percona Monitoring and Management) is a free and open-source platform for managing and monitoring MySQL, MongoDB, and PostgreSQL performance. With this release we’ve made the following improvements since our last public Beta at the end of May:
- Query Analytics
- PostgreSQL – Aggregate & identify slow queries from pg_stat_statements data source
- Interface updates – label improvements, sparkline updates, tooltips
- PMM Server Monitoring – look for pmm-server in Dashboards and Query Analytics
- ProxySQL monitoring – now available using
pmm-admin add proxysql
- Environment Overview Dashboard – Updated layout and colours – take a look!
- Debian 10 support we now have pmm2-client deb packages for Debian 10
PMM 2 is still a work in progress – you may encounter some bugs and missing features. We are aware of a number of issues, but please report any and all that you find to Percona’s JIRA.
This release is not recommended for production environments. PMM 2 is designed to be used as a new installation – please don’t try to upgrade your existing PMM 1 environment.
Query Analytics Dashboard Enhancements
Query Analytics for PostgreSQL
We’re excited to provide Query Analytics for PostgreSQL in this release, where you can now visualize query activity for PostgreSQL. Monitoring PostgreSQL queries is achieved via the popular pg_stat_statements
extension.
Query Analytics Interface Updates
We spent some time updating Sparklines logic to be more accurate:
We now wrap long labels, and shorten in some cases with a hint to show the full label name:
We’re incrementally improving our Query Analytics to better explain what we’re measuring with the addition of tooltips:
PMM Server Monitoring
To better understand resource utilization on your PMM Server host, we’ve added a pmm-server entry in the OS, PostgreSQL, Prometheus, and Query Analytics Dashboards:
Query Analytics for PostgreSQL – pmm-server
You can explore the queries that are executed by Query Analytics:
ProxySQL support
You can now add ProxySQL instance to PMM and take advantage of the ProxySQL Overview Dashboard, which resides under the HA group in the system menu.
Simplified Environment Overview Dashboard
We’ve categorized the dashboard into several sections. The first two sections show total information for the entire environment as well as Top and Min values:
We also display the label name and current value, and you can click each object in order to drill down for greater detail:
We’ve started collapsing some rows by default, in order to minimize the visual clutter. Opening each category automatically refreshes the dashboard:
Installation and configuration
The default PMM Server credentials are:
username: admin
password: admin
Install PMM Server with docker
The easiest way to install PMM Server is to deploy it with Docker. Running the PMM 2 Docker container with PMM Server can be done by the following commands (note the version tag of 2.0.0-beta4):
1 2 | docker create -v /srv --name pmm-data-2-0-0-beta4 perconalab/pmm-server:2.0.0-beta4 /bin/true docker run -d -p 80:80 -p 443:443 --volumes-from pmm-data-2-0-0-beta4 --name pmm-server-2.0.0-beta4 --restart always perconalab/pmm-server:2.0.0-beta4 |
Install PMM Client
Since PMM 2 is still not GA, you’ll need to leverage our experimental release of the Percona repository. You’ll need to download and install the official percona-release
package from Percona and use it to enable the Percona experimental component of the original repository. See percona-release official documentation for further details on this new tool.
Specific instructions for a Debian system are as follows:
1 2 | wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb sudo dpkg -i percona-release_latest.generic_all.deb |
Now enable the experimental repo:
1 2 | sudo percona-release disable all sudo percona-release enable original experimental |
Install pmm2-client
package:
1 2 | apt-get update apt-get install pmm2-client |
Users who have previously installed pmm2-client alpha version should remove the package and install a new one in order to update to beta1.
Please note that leaving experimental repository enabled may affect further package installation operations with bleeding-edge software that may not be suitable for Production. You can revert by disabling experimental via the following commands:
1 2 | sudo percona-release disable original experimental sudo apt-get update |
Configure PMM
Once PMM Client is installed, run the pmm-admin config
command with your PMM Server IP address to register your Node:
1 | # pmm-admin config --server-insecure-tls --server-url=https://<IP Address>:443 |
You should see the following:
1 2 3 4 5 6 7 | Checking local pmm-agent status... pmm-agent is running. Registering pmm-agent on PMM Server... Registered. Configuration file /usr/local/percona/pmm-agent.yaml updated. Reloading pmm-agent configuration... Configuration reloaded. |
Adding MySQL Metrics and Query Analytics
MySQL server can be added for the monitoring in its normal way. Here is a command which adds it using the PERFORMANCE_SCHEMA source:
1 | pmm-admin add mysql <span class="blob-code-inner"><span class="x x-first x-last">--</span>query-source<span class="x x-first x-last">='</span>perfschema<span class="x x-first x-last">'</span></span> --username=pmm --password=pmm |
where username and password are credentials for the monitored MySQL access, which will be used locally on the database host.
The syntax to add MySQL services (Metrics and Query Analytics) using the Slow Log source is the following:
1 | pmm-admin add mysql <span class="blob-code-inner"><span class="x x-first x-last">--</span>query-source<span class="x x-first x-last">='</span>slowlog<span class="x x-first x-last">'</span></span> --username=pmm --password=pmm |
When the server is added, you can check your MySQL dashboards and Query Analytics in order to view its performance information!
Adding MongoDB Metrics and Query Analytics
You can add MongoDB services (Metrics and Query Analytics) with a similar command:
1 | pmm-admin add mongodb --use-profiler --username=pmm --password=pmm |
Adding PostgreSQL monitoring service
You can add PostgreSQL service as follows:
1 | pmm-admin add postgresql --username=pmm --password=pmm |
You can then check your PostgreSQL Overview dashboard.
Add ProxySQL monitoring service
You can add ProxySQL service as follows:
1 | pmm-admin add proxysql --username=admin --password=admin |
You can then check your ProxySQL Overview dashboard.
About Percona Monitoring and Management
Percona Monitoring and Management (PMM) is a free and open-source platform for managing and monitoring MySQL®, MongoDB®, and PostgreSQL® performance. You can run PMM in your own environment for maximum security and reliability. It provides thorough time-based analysis for MySQL®, MongoDB®, and PostgreSQL® servers to ensure that your data works as efficiently as possible.
Help us improve our software quality by reporting any Percona Monitoring and Management bugs you encounter using our bug tracking system.
Pmm has been constantly modifying the log_output variable to ‘FILE’, but we use log_output=’FILE,TABLE’ . You guys should add a pmm-limitations page to the documentation and note that pmm does not support user modification of the log_output variable because pmm will change it back.
2019-07-25T06:32:13.001278Z 17853344 Connect pmm@localhost on using Socket
2019-07-25T06:32:13.001384Z 17853345 Connect pmm@localhost on using Socket
2019-07-25T06:32:13.001438Z 17853344 Query SET time_zone=’+00:00′
2019-07-25T06:32:13.001543Z 17853345 Query SET time_zone=’+00:00′
2019-07-25T06:32:13.001653Z 17853344 Query SELECT /* percona-qan-agent */ CONCAT_WS(‘.’, @@hostname, IF(@@port=’3306′,NULL,@@port)) AS Hostname, @@version_comment AS Distro, @@version AS Version
2019-07-25T06:32:13.001818Z 17853345 Query SET GLOBAL slow_query_log=OFF
2019-07-25T06:32:13.001871Z 17853344 Quit
2019-07-25T06:32:13.002268Z 17853345 Query SET GLOBAL log_output=’file’
2019-07-25T06:32:13.002426Z 17853345 Query SET GLOBAL slow_query_log=ON
2019-07-25T06:32:13.002704Z 17853345 Query SET time_zone=’+0:00′
2019-07-25T06:32:13.002800Z 17853345 Quit
Example: configuring pmm-client
# pmm-admin config –server-insecure-tls –server-url=https://admin:[email protected]:443
Checking local pmm-agent status…
pmm-agent is running.
Registering pmm-agent on PMM Server…
Registered.
Configuration file /usr/local/percona/pmm-agent.yaml updated.
Reloading pmm-agent configuration…
Configuration reloaded.
Checking local pmm-agent status…
pmm-agent is running.
> Pmm has been constantly modifying the log_output variable to ‘FILE’, but we use log_output=’FILE,TABLE’ .
> You guys should add a pmm-limitations page to the documentation and note that pmm does not support user modification of the log_output variable because pmm will change it back.
Oh, GOD! s(h)ame to me!
I will try this to see if it solves it: http://docs-test.cd.percona.com/PR-280/use-case.slow-log-rotation.html