云监控之自定义监控

本文涉及的产品
云监控,每月短信1000条
简介: 云监控之自定义监控

本文是对控制台自定义云监控的补充,意在帮助用户快速掌握自定义云监控的数据上报、数据查看及创建报警规则。


准备工作


  • 准备一个子账号并给子账号创建AK、SK或者一个ECS角色(上报自定义数据的机器是ECS),并给子用户或者角色授权使其具备上报数据的权限。

      a、创建一个子账号并给子账号创建AK可以查看此处

      b、如何给ECS绑定一个角色并授予相应权限可查看此处



上报数据

  1. 下载阿里云CLI 工具并进行配置,使用AK(或者ECS角色)让CLI 工具具备上报数据的权限。
  2. 写一个Shell脚本获取一些我们希望上报的数据,例如sshd进程的数量或者nginx进程的数量。
count1=`ps -ef | grep nginx | grep -v grep | wc -l`count2=`ps -ef | grep sshd | grep -v grep | wc -l`date >> /tmp/cms.log
aliyun cms PutHybridMonitorMetricData --region cn-hangzhou --MetricList.1.Name process --MetricList.1.Labels.1.Key=process_name --MetricList.1.Labels.1.Value=nginx --MetricList.1.Labels.2.Key=host --MetricList.1.Labels.2.Value=zjk --MetricList.1.Value $count1--Namespace'xiaobo'aliyun cms PutHybridMonitorMetricData --region cn-hangzhou --MetricList.1.Name process --MetricList.1.Labels.1.Key=process_name --MetricList.1.Labels.1.Value=sshd --MetricList.1.Labels.2.Key=host --MetricList.1.Labels.2.Value=zjk --MetricList.1.Value $count2--Namespace'xiaobo'

count1  变量名字值为nginx的进程数量

count2  变量名字值为sshd进程的数量

#这两个变量名可以自定义,只是方便后面将获取的数据复制给CLI中的 MetricList.1.Value

#上面用了2个请求来上报2个进程的数量数据,实际可以合并成一个请求,一次上报两个metric的值,分成两条写只是为了更易懂。

--region   统一cn-hangzhou

--MetricList.1.Name   这里上报的第一个Metric 名字,我命名为proccess , 实际上命名为process_count 更合适,因为我们上报的数据是进程的数量

--MetricList.1.Labels.1.Key  此次上报的第一个Metric的第一个标签键   process_name

--MetricList.1.Labels.1.Value  此次上报的第一个Metric的第一个标签的值  nginx  

--Namespace  是上报数据到哪个仓库 (前面准备工作创建的指标仓库的名字)


这里的Label 作用就是阿里云产品预设监控项中的 Dimensions ,通过label 我们才能确定上报的是哪个主机、进程的数量。脚本写好之后,我们还需要确保持续的上报(如果只上报异常,不需要持续的上报数据),我这里采用的是crond 定时上报

*/1 * * * * bash /root/cms.sh >> /tmp/cms.log  # /root/cms.sh 是前面写的脚本的路径

注意:这里是每分钟执行一次后面报警规则周期就是1分钟。 如果长时监控,上面的脚本产生的日志或会占用大量磁盘空间,此处只是为了说明功能的使用,不考虑日志分割及清理功能。


查看数据

至此数据上报已完成,到云监控指标仓库控制台找到对应的指标仓库查看下上报的数据,下图是使用前面脚本上报的数据,如果多个主机就可以根据label 确定是哪个主机(zjk)哪个进程(nginx)的进程数量



创建报警规则

点击上图中的另存为报警规则会弹出创建报警规则窗口,在报警表达式里可以获取指定的数据:


例如 process{process_name="nginx",host="zjk"}  表示获取主机zjk中nginx进程的数量,写好后点击查询数据可以查到说明表达式填写正确,但是表达式不仅要查出数据还要给出报警条件,


最终写好的表达式 process{process_name="nginx",host="zjk"}<1

意思是当进程数量小于1时告警(由于进程数量是整数,小于1就意味着nginx 主进程异常退出了),实际表达式根据自己需要填写



这里需要注意的是无数据处理方式,即没有上报数据时采取的措施:

  • 不做任何处理 (适合非持续上报数据的场景,例如只上报异常的情况)
  • 视为恢复(适合只上报异常数据,非连续上报数据的场景)
  • 无数据告警(适合上面这种持续上报数据的情况,没有上报数据大概率是服务器异常,所以无数据也要告警)



至此一个自定义监控就创建好了,可以故意将进程停掉或者修改报警规则表达式去触发设置的告警规则看是否满足需求。

相关实践学习
基于云监控实现的监控系统
通过阿里云云监控功能给非阿里云主机安装监控插件,从而实现对非阿里云主机的各项指标进行监控和管理,在配置报警规则和报警人的情况下,能对特定的场景做出报警反应通知到报警人的手机上。
相关文章
|
2月前
|
存储 传感器 监控
云监控:引领未来监控技术的新篇章
传统监控系统需要投入大量的人力物力进行建设和维护,而云监控则通过云计算平台的按需付费特性降低了建设和维护成本。用户只需根据实际需求购买相应的服务和资源即可实现监控功能,无需担心设备升级、维护等问题。
|
4月前
|
弹性计算 监控 安全
【阿里云弹性计算】ECS实例监控与告警系统构建:利用阿里云监控服务保障稳定性
【5月更文挑战第23天】在数字化时代,阿里云弹性计算服务(ECS)为业务连续性提供保障。通过阿里云监控服务,用户可实时监控ECS实例的CPU、内存、磁盘I/O和网络流量等指标。启用监控,创建自定义视图集中显示关键指标,并设置告警规则(如CPU使用率超80%),结合多种通知方式确保及时响应。定期维护和优化告警策略,利用健康诊断工具,能提升服务高可用性和稳定性,确保云服务的卓越性能。
199 1
|
弹性计算 运维 监控
基于云监控实现的监控系统
通过阿里云云监控功能给非阿里云主机安装监控插件,从而实现对非阿里云主机的各项指标进行监控和管理,在配置报警规则和报警人的情况下,能对特定的场景做出报警反应通知到报警人的手机上。
590 0
|
SQL 消息中间件 分布式计算
基于阿里云 CloudMonitor云监控自定义监控大盘对 EMR 自定义监控实践
本文旨在分享 EMR 平台大数据服务基于阿里云 CloudMonitor 的监控实践,给客户提供除了 EMR 平台默认监控以外,自建监控方式,适用于统一多个阿里云服务的监控监控场景。
789 2
基于阿里云 CloudMonitor云监控自定义监控大盘对 EMR 自定义监控实践
|
监控 负载均衡 网络协议
云监控-主机监控功能介绍|学习笔记
快速学习云监控-主机监控功能介绍
227 0
云监控-主机监控功能介绍|学习笔记
|
弹性计算 监控 开发者
云监控-创建 Dashboard 监控大盘|学习笔记
快速学习云监控-创建 Dashboard 监控大盘
197 0
云监控-创建 Dashboard 监控大盘|学习笔记
|
弹性计算 监控 开发者
云监控-创建Dashboard监控大盘|学习笔记
快速学习云监控-创建Dashboard监控大盘
231 0
云监控-创建Dashboard监控大盘|学习笔记
|
监控 算法
云监控中通过HTTP上报事件监控数据
云监控中通过HTTP上报事件监控数据
220 0
云监控中通过HTTP上报事件监控数据
|
数据采集 Prometheus 监控
使用云监控来监控线下IDC(及其它云)的Mongodb,Redis,Mysql等中间件
背景当前很多用户的服务部署在混合环境中,比如同时使用多个云厂商,或者云加线下IDC等。而对于线下IDC的监控主要是使用开源的系统来自建。带来的问题就是需要花费较大精力来维护自建监控系统并且和云上的监控数据也无法打通。针对这种混合云环境,云监控推出了企业版监控服务,可以实现在阿里云上对下线IDC或其它云服务上部署的中间件进行监控。线下IDC中间件监控实现在云监控上对下线IDC的中间件进行监控,主要实
578 6
使用云监控来监控线下IDC(及其它云)的Mongodb,Redis,Mysql等中间件
|
运维 监控 安全
企业云监控-企业上云的基础监控解决方案
背景经过十多年的发展,云已经成为新数字体验的核心。越来越多的客户上云,客户也从早期的中小站长演变成了今天的真正的企业客户,涵盖了几乎所有行业,新兴的传统的。在企业客户的真实场景中,客户往往拥有海量规模的资源,拥有IaaS,PaaS,SaaS的多层次产品形态,多云,多账号,混合云成为常态企业客户上云后的监控挑战在这种背景下,企业客户上云如何实现对资源的有效管控,正面临着巨大的挑战: 首先是规模和复杂
13428 0
企业云监控-企业上云的基础监控解决方案