进程输入插件
此插件收集有关进程总数的信息,并按状态(僵尸、睡眠、运行等)对其进行分组。
在 Linux 上,此插件需要访问 procfs (/proc);在其他操作系统上,该插件必须能够执行 ps 命令。
引入于: Telegraf v0.11.0 标签: system 操作系统支持: freebsd, linux, macos
全局配置选项
插件支持其他全局和插件配置设置,用于修改指标、标签和字段,创建别名以及配置插件顺序等任务。更多详情请参阅 CONFIGURATION.md。
配置
# Get the number of processes and group them by status
# This plugin ONLY supports non-Windows
[[inputs.processes]]
## Use sudo to run ps command on *BSD systems. Linux systems will read
## /proc, so this does not apply there.
# use_sudo = false另一种可能的配置是为解析 /proc 位置定义一个替代路径。使用环境变量 HOST_PROC,插件将从指定位置检索进程信息。
docker run -v /proc:/rootfs/proc:ro -e HOST_PROC=/rootfs/proc
使用 sudo
Linux 系统将从 /proc 读取,而 BSD 系统将使用 ps 命令。ps 命令通常不需要提升的权限。但是,如果用户想收集系统范围的统计信息,则需要提升的权限。如果用户已配置 sudo 允许运行此命令,则将 use_sudo 设置为 true。
如果您的账户还没有运行无密码 sudo 命令的能力,则需要更新 sudoers 文件。下面是一个允许运行所需的 ps 命令的示例。
首先,使用 visudo 命令开始编辑 sudoers 文件。然后添加以下内容,其中 <username> 是需要此访问权限的用户的用户名。
Cmnd_Alias PS = /bin/ps
<username> ALL=(root) NOPASSWD: PS
Defaults!PS !logfile, !syslog, !pam_sessionMetrics
- processes
- 字段 (fields)
- blocked (又称磁盘睡眠或不可中断睡眠)
- running
- sleeping
- stopped
- total
- zombie
- dead
- wait (仅限 freebsd)
- idle (仅限 bsd 和 Linux 4+)
- paging (仅限 linux)
- parked (仅限 linux)
- total_threads (仅限 linux)
- 字段 (fields)
不同的操作系统使用略有不同的进程状态码,这些状态码记录在 man ps 中,我将给出 telegraf 指标中主要操作系统状态码的对应关系。
Linux FreeBSD Darwin meaning
R R R running
S S S sleeping
Z Z Z zombie
X none none dead
T T T stopped
I I I idle (sleeping for longer than about 20 seconds)
D D,L U blocked (waiting in uninterruptible sleep, or locked)
W W none paging (linux kernel < 2.6 only), wait (freebsd)示例输出
processes blocked=8i,running=1i,sleeping=265i,stopped=0i,total=274i,zombie=0i,dead=0i,paging=0i,total_threads=687i 1457478636980905042此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 Telegraf 和本文档提出反馈和 bug 报告。要获取支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。