#!/usr/bin/env python
import psutil
# 进程名
process_name = "example_process"
# 获取所有进程信息
all_processes = psutil.process_iter()
# 统计进程实例数量
num_instances = 0
for proc in all_processes:
# 获取进程名
try:
pname = proc.name()
except psutil.AccessDenied:
continue
except psutil.NoSuchProcess:
continue
# 如果进程名匹配,则计数器加一
if pname == process_name:
num_instances += 1
# 打印可用于munin的输出
print("multigraph process_instances")
print("label process_instances")
print("value", num_instances)
将脚本保存为可执行文件,并将其添加到munin插件目录(通常是/usr/share/munin/plugins/
)。
创建一个符号链接,将其链接到你的脚本:
$ ln -s /usr/share/munin/plugins/my_custom_process_instances_plugin.py /etc/munin/plugins/my_custom_process_instances_plugin
$ sudo munin-node-configure --shell | sudo sh
$ sudo service munin-node restart