作者:尽做好风水_549_881 | 来源:互联网 | 2023-02-02 03:32
我们需要监视目录的大小(例如InfluxDB的数据目录)以在Grafana中设置警报.如上所述:如何配置telegraf将文件夹大小发送到InfluxDB,没有内置的插件.
我们不介意使用inputs.exec
Telegraf 的部分.目录不是很大(低文件数+ dircount),所以深度扫描(如使用du
)对我们来说很好.
我们需要监控的目录之一是/var/lib/influxdb/data
.
什么是一个简单的脚本来执行,有什么警告?
1> Tw Bert..:
您可以metrics-exec_du.sh
使用以下内容创建一个简单的bash脚本(chmod 755):
#!/usr/bin/env bash
du -bs "${1}" | awk '{print "[ { \"bytes\": "$1", \"dudir\": \""$2"\" } ]";}'
并通过将以下内容放入Telegraf配置文件中来激活它:
[[inputs.exec]]
commands = [ "YOUR_PATH/metrics-exec_du.sh /var/lib/influxdb/data" ]
timeout = "5s"
name_override = "du"
name_suffix = ""
data_format = "json"
tag_keys = [ "dudir" ]
注意事项:
该du
命令可能会对您的服务器造成压力,因此请小心使
用户telegraf
必须能够扫描目录.有几个选项,但由于InfluxDB的目录掩码有点未指定(参见:https://github.com/influxdata/influxdb/issues/5171#issuecomment-306419800),我们应用了一个相当粗略的解决方法(示例适用于Ubuntu 16.04.2 LTS
):
将influxdb
组添加到用户telegraf
:sudo usermod --groups influxdb --append telegraf
将以下内容放在crontab中,例如每10分钟运行一次: 10 * * * * chmod -R g+rX /var/lib/influxdb/data > /var/log/influxdb/chmodfix.log 2>&1
结果,在Grafana中配置(数据源:InfluxDB):
干杯,TW