如果你有设置每个进程的指标Per雷竞技下载官网craybet雷竞技竞猜在线官网ona监视和管理,你可能会发现自己需要调优它不仅进一步过程分组,但显示其中一些孤立的。在这个博文中我们将探讨如何修改的规则分组的过程,这样你就可以充分利用这个可怕的PMM集成。

假设你是上面的链接上如何设置PMM的每个进程的指标集成,和你有进口仪表板显示这些指标。您将看到类似如下:

PMM数据库和系统监测和管理软件raybet雷竞技竞猜在线官网

这是一个内部测试服务器使用,你可以看到大量的VBoxHeadless(29)和mysqld(99)流程运行。仪表板将分组中的所有指标使用的命令的名称。但是,如果我们希望看到只有一个隔离这些过程的指标吗?就目前的情况来看,我们不能这样做。这样做可能没有意义在测试环境中,但是如果你运行多个mysqld过程(或蒙戈、postgres等)绑定到不同的港口,您可能想要查看指标分别为每个。

修改配置文件

进入all.yaml !

process-exporter文档使用一个配置文件,我们可以看到以下几点:

配置的一般格式。路径YAML文件是一个顶级process_name部分,包含名称匹配器的列表。[…]这一过程只能属于一个组:即使多个项目将匹配,文件中列出的第一个获胜。

这意味着,即使我们有两个规则,将匹配一个过程,只有第一个会被考虑。这将允许我们列表过程本身,而不是错过任何非团体过程。如何?假设我们有以下流程运行:

和我们想要能够分辨的实例运行在端口1和2从其他的,我们可以使用以下规则:

cmdline我们需要的正则表达式匹配过程命令运行。在这种情况下,我们利用这一事实,他们使用不同的端口,但是可以使用命令字符串中的任何差异。最后的规则是将默认为“其他”(正则表达式匹配任何东西)。

默认规则最后将确保你不要错过任何其他过程,所以除非你只想要一些流程度量收集,你应该总是有一个规则。

现实生活工作示例配置每个进程的指标

以防这些通用的信息没有多大意义,我们将提出一个具体的例子,希望它会使一切都配合得很好。

在本例中,我们想要的mysqld实例使用mysql_sandbox16679.sock套接字与所有其他人,VM与ID完成97年eafa2795da被自己的上市。所有其他进程都使用basename组合在一起的可执行文件。

你可以检查的输出ps辅助看到完整的命令。例如:

所以,我们可以使用下面的正则表达式(我们使用。*匹配任何字符串):

这同样适用于mysqld的正则表达式的过程。

配置文件将会看起来像:

让我们重新启动服务,所以新变化运用,我们将检查图表五分钟后,看到新的变化。请注意,您可能需要重新加载页面更改申请

刷新后,我们将看到新的下拉列表中的进程列表:

一个新的过滤后PMM的进程列表

我们选择他们之后,我们就可以看到特定数据的流程:

由于默认配置时,我们仍然从所有其他mysqld过程捕获数据。然而,他们会有自己的集团,正如前面提到过的:

系统进程在PMM指标图