常见的监控场景中,我们除了监控服务器的性能、服务的运行状况以外,也需要对某些进程的运行状况进行监控。在Azure Monitor中我们可以将进程ID视为性能计数器,来完成对进程运行状况的监控。
每个进程都会在性能计数器中写入很多数值。默认情况下Azure Monitor是不会收集这些数值的,但是我们可以很容易的在Windows Performance 中看到:
配置收集进程数据
我们可以使用如下方式配置Azure Monitor以性能计数器的方式监控进程,在此以notepad为例:
在Log Analytics工作区中点击“Advanced settings”--“Data”--“Windows Performance Counters”,添加“Process[notepad]\ID Process”:
查看收集到的数据
配置完成以后,我们可以使用如下查询来查询notepad的进程ID。如果记事本程序没有运行,则没有数据。如果需要设置Alert,警报规则可以配置为在最近X分钟内返回零结果时生成警报。
Perf
| where InstanceName == "notepad"
| extend localTimestamp = TimeGenerated + 8h
| where TimeGenerated > ago(5m)
| project TimeGenerated , CounterValue, InstanceName
| order by TimeGenerated desc
来源:51CTO
作者:wuyvzhang
链接:https://blog.51cto.com/wuyvzhang/2472565