我知道有无数的解决方案可以监控 Windows 服务器上的正常运行时间,但我想特别询问有关 Influx 的服务器代理 telegraf。
我们目前有一个很好的 influxdb/grafana/telegraf 堆栈监控我们的 Linux 机器的基本系统指标,如 CPU、内存、磁盘、正常运行时间等,最近我已经开始将我们的一些 Windows 机器也纳入这个设置中。
这很简单,只需在 telegraf.conf 中启用输入插件并更新需求文件的计数器即可。我可以从 grafana 的 UI 查询 influxdb 中的数据。
我遇到困难的是“系统”输入插件。在 Linux 机器上,此插件提供的指标与 unix“uptime”命令的输出基本相同 - 正常运行时间、用户数、平均负载等。然后,我们可以在 grafana UI 中为各个 Linux 机器创建一个漂亮的彩色编码“singlestat”正常运行时间图表。即,如果机器已运行超过一秒,则显示绿色,否则显示红色...
有人可以建议我是否可以使用 telegraf 代理和 grafana UI 做类似的事情来测量和显示 Windows 框的正常运行时间吗?
我可以根据要求发布 telegraf.conf。
谢谢,山姆
答案1
您可以使用 Windows“系统”对象和“系统启动时间”计数器来获取服务器启动时间(以秒为单位)。例如,将其添加到您监控的 Windows 主机的电报配置文件:
[[inputs.win_perf_counters]]
...
##### System #####
[[inputs.win_perf_counters.object]]
ObjectName = "System"
Counters = ["System Up Time"]
Instances = ["------"]
Measurement = "win_system"
#IncludeTotal=false #Set to true to include _Total instance when querying for all (*).
答案2
我在“学习”配置中遇到了这个问题。我不得不更改
Instances = ["------"]
更改为:
Instances = ["*"]
我现在已经将其改为以下内容:
[[inputs.win_perf_counters.object]]
ObjectName = "System"
Counters = [
"Context Switches/sec",
"System Calls/sec",
"Processor Queue Length",
"Threads",
"System Up Time",
"Processes"
]
Instances = ["------"]
Measurement = "win_system"
# Set to true to include _Total instance when querying for all (*).
#IncludeTotal=false