使用Azure Monitor监控服务器CPU使用率

一般我们为了确保系统的稳健运行,都会对系统运行时的各个指标进行收集,如CPU使用率,内存使用率,磁盘IO,网络延迟,应用心跳等。进行实时监控,通过对这些数据的监控,使我们能够在出现问题时第一时间通知开发/运维人员进行处理,或者触发某些自动化操作,以确保在用户还没有察觉到问题之前处理完故障和异常,以系统的稳定运行。
想必大家都已经知道,在Azure中,我们可以使用Azure Monitor来对系统的指标进行监控。所以今天我们就和大家聊聊如何如何使用Azure Monitor来监控系统的CPU使用率。
先觉条件
和前面监控服务和进程的状态类似,使用Azure Monitor监控系统的性能指标我们需要在服务器上安装Log Analytics代理。至于具体怎么安装,大家可以参考我之前的博客:https://blog.51cto.com/wuyvzhang/2470702

除此之外,我们还要启用额外的数据源,在我们今天的博客中将是性能计数器。
如果我们之前没有启用性能计数器数据,则可以在Log Analytics Workspace中单击“ 高级设置”,再单击“ 数据”,现在单击“ Windows性能计数器”,最后单击“ 添加选定的性能计数器”:

查询收集到的数据
我们可以使用如下查询语句从我们收集到的数据中查询出系统的CPU使用率:

Perf
| where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" and Computer in ((Heartbeat
| distinct Computer))
| summarize PCT95CPUPercentTime = percentile(CounterValue, 95) by Computer
| summarize max(PCT95CPUPercentTime) by Computer
| join
(
Perf
| where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" and Computer in ((Heartbeat
| distinct Computer))
)
on Computer
| make-series PCT95CPUPercentTime = percentile(CounterValue, 95) on TimeGenerated from ago( 5h ) to now() step 10m by Computer
| render timechart

也可以使用如下语句来查看CPU使用率大于某个值的机器:

let setpctValue = 3;
Perf
| where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" and Computer in ((Heartbeat
| distinct Computer))
| summarize PCT95CPUPercentTime = percentile(CounterValue, 95) by Computer
| where PCT95CPUPercentTime > setpctValue
| summarize max(PCT95CPUPercentTime) by Computer
| join
(
Perf
| where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" and Computer in ((Heartbeat
| distinct Computer))
)
on Computer
| make-series PCT95CPUPercentTime = percentile(CounterValue, 95) on TimeGenerated from ago( 5h ) to now() step 10m by Computer
| render timechart

将性能图表固定到仪表板
若想将我们所查询出来的图表固定到Azure Dashboard,可以点击查询窗口右上方的“固定”按钮,然后选择我们要将图标展示在那个Dashboard。

原文地址:https://blog.51cto.com/wuyvzhang/2472792

时间: 2024-11-11 15:43:15

使用Azure Monitor监控服务器CPU使用率的相关文章

使用Azure Monitor监控服务器内存使用率

前面和大家聊了如何使用Azure Monitor对服务器的CPU资源进行监控,从而确保在出现CPU使用率过高时,我们可以第一时间对其进行处理,来确保系统可以平稳运行.但是大家要知道,除了CPU资源以外还有很多项指标会影响我们系统的运行状态,比如我们今天要和大家聊得内存资源.内存使用率过高会导致业务系统运行缓慢.无法登陆.系统崩溃等问题.所以对内存资源使用率的监视也是必不可少的.那么下面就让我们来看一下如何使用Azure Monitor来监控系统的内存使用率. 先觉条件使用Azure Monito

Azure Monitor概述

现在越来越多的企业选择将系统构建或迁移到云端,来享受公有云所带来的弹性计算和灵活扩展能力.但是很多用户在将系统迁移到云端之前,都会存在一个小问题:系统在本地运行的时候,可以通过zibbix,SCOM等工具对系统进行监控,以确保系统的稳定运行,那迁移到云端以后我该使用什么样的方式来监控我的应用程序?其实各位大可不必担心,因为每个云平台都会为用户预留出获取监控数据的接口.azure也不例外,在azure中,用户可以通过portal来获取所需要的监控信息,比如虚拟机的CPU使用率,RAM使用率以及磁盘

查看线程linux cpu使用率

Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算 转 http://www.cnblogs.com/lidabo/p/4738113.html目录(?)[-] proc文件系统 proccpuinfo文件 procstat文件 procpidstat文件 procpidtasktidstat文件 系统中有关进程cpu使用率的常用命令 ps 命令 top命令 单核情况下Cpu使用率的计算 基本思想 总的Cpu使用率计算 计算方法 某一进程Cpu使用率的计算 计算方法 实验数据

cpu使用率的计算

proc文件系统 /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为内核与进程提供通信的接口.用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的某些参数.由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取/proc目录中的文件时,proc文件系统是动态从系统内核读出所需信息并提交的. /proc目录中有一些以数字命名的目录,它们是进程目录.系统中当前运行的每一个进程在/proc下都对应一个以进程号为目录名的目录/proc/pid,

编程获取linux的CPU使用率内存占用率

Linux下提供top.ps命令查看当前cpu.mem使用情况,简要介绍如下: 一.使用ps查看进程的资源占用 ps -aux 查看进程信息时,第三列就是CPU占用. [[email protected] utx86]# ps -aux | grep my_process Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ root   14415  3.4  0.9   37436  203

EMS 动手实验1:将Azure AD 登陆和审核日志发送到Azure Monitor

前言: 本系列实验将引导用户完成O365 企业移动性和安全性(Enterprise Mobility Security)的常用操作和配置,本着实用性和安全性的原则,该系列实验会建议一些最佳实践.本系列实验主要分为以下几个阶段:          将Azure AD 登陆和审核日志发送到Azure Monitor          用户自助密码重设&条件访问策略强制用户使用MFA二次验证&启用标识保护配置风险检测          使用 Privileged Identity Managem

使用Azure Monitor从Azure VM收集数据

相信大家都知道,在我们日常运维的过程中,对系统的监控是必不可少的.通过监控我们能够了解到系统资源的使用状况如网络吞吐量,磁盘使用率以及系统的某些服务是否处于running状态,以便于在适当的时候采取相应的措施.那今天我们就来看一下如何使用Azure Monitor从Azure虚拟机收集logs和metrics数据.若要使用Azure Monitor收集在Azure中运行的虚拟机的性能和日志数据,我么可以对其安装Log Analytics Agent,通过Log Analytics Agent将A

使用Azure Monitor监控服务运行状态

在多数的运维工作中,我们除了要关注系统资源的使用率也要关注应用服务的健康状况,从而确保系统可以持续的对外提供服务.那么我们如何使用Azure Monitor来监控服务的健康状况呢.监视Windows和Linux服务的最佳选择之一是利用Azure自动化中的变更跟踪解决方案.使用变更跟踪解决方案,可以跟踪Windows/Linux系统上的更改.在Windows它支持跟踪文件.注册表.服务和已安装软件的更改:在linux中它支持跟踪文件,软件和守护进程的更改.默认情况下,变更跟踪解决方案会每隔30分钟

使用Azure Monitor监视Process

常见的监控场景中,我们除了监控服务器的性能.服务的运行状况以外,也需要对某些进程的运行状况进行监控.在Azure Monitor中我们可以将进程ID视为性能计数器,来完成对进程运行状况的监控. 每个进程都会在性能计数器中写入很多数值.默认情况下Azure Monitor是不会收集这些数值的,但是我们可以很容易的在Windows Performance 中看到: 配置收集进程数据我们可以使用如下方式配置Azure Monitor以性能计数器的方式监控进程,在此以notepad为例:在Log Ana