CloudWatch告警增强-接入SLS开放告警

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: CloudWatch是AWS提供的可以用来实时监控AWS资源以及运行在AWS上的应用的一个服务,通过收集和跟踪指标数据来评估相关资源和应用程序,通过CloudWatch,用户可以全面直观地了解资源的使用情况已经应用程序的运行性能。通过下图可以看出,CloudWatch在AWS的安全体系中扮演着检测以及自动响应的角色。CloudWatch用来监控的功能是Alarms,创建一个Alarm意味着对某个资源或程序进行监控,如果监控的对象的指标数据处于异常状态,就会触发该Alarm,从而进行相应的行为。

CloudWatch介绍

CloudWatch是AWS提供的可以用来实时监控AWS资源以及运行在AWS上的应用的一个服务,通过收集和跟踪指标数据来评估相关资源和应用程序,通过CloudWatch,用户可以全面直观地了解资源的使用情况已经应用程序的运行性能。通过下图可以看出,CloudWatch在AWS的安全体系中扮演着检测以及自动响应的角色。CloudWatch用来监控的功能是Alarms,创建一个Alarm意味着对某个资源或程序进行监控,如果监控的对象的指标数据处于异常状态,就会触发该Alarm,从而进行相应的行为。常见的触发告警后的行为包括通过SNS(Simple Notification Service)发送告警消息,以及自动响应告警(例如服务器扩容、停止、重启以及记录事件等动作)。

如下图所示为CloudWatch的工作原理图,可以看出,CloudWatch的核心功能在于收集和管理各类指标数据,然后对于指标数据的用途有两种,一种是提供可观测的能力,一种是基于指标数据创建告警。指标数据的来源一般分为两种:

  • 自动为AWS资源创建指标数据。例如用户购买了EC2服务,那么在Metrics中就可以直接添加EC2的各种指标(如CPU使用率、磁盘使用率等)。
  • 用户手动生成指标数据。例如在CloudWatch中添加了某些日志,对于这些日志可以添加一个指标过滤器(如过滤事件类型为登录的操作),那么就可以对这些日志就可以得到对应的指标数据。

CloudWatch的基本告警类型有两种,分别是静态阈值告警和异常检测告警。静态阈值告警就是将指标数据与用户设定的阈值进行比较,超过该阈值就会触发告警;异常检测告警会根据历史指标数据使用机器学习的训练模型计算出指标数据的正常区间,如果指标数据超过了这个正常区间就会触发告警。创建一些常见的告警请参考AWS官方文档Using alarms

CloudWatch-Alarms使用

CloudWatch的Alarms的本质上是对指标数据的监控,因此对于某些资源和应用程序没有自动生成指标数据的话,就需要用户手动地创建出Metric,才能对其监控。下面将使用监控EC2的CPU使用率作为示例来演示如何使用CloudWatch的Alarms功能。

创建一个Alarm的步骤如下:

  1. 选择指标数据

如下图所示为选择了某个EC2的的CPU使用率指标数据后的图表。

选定了指标数据以后,就可以配置指标数据和触发条件了。指标数据的配置主要包括两点,一点是Statistic(统计方式),一点是Period(计算周期)。默认的统计方式是平均值,意味周期结束的指标值为一个计算周期内指标数据的平均值。下图所示是触发条件和高级设置。

可以阈值类型分为静态和异常检测两种。在高级配置中有个Datapoints to alarm,如果用户配置的是2 out of 3,那么意味着如果在3个计算周期内,有大于等于2个计算周的指标值是超过阈值的才会触发告警。

  1. 配置行动

行动包括四种,分别是:

  • Notification,指的是通过SNS发送告警通知,SNS支持邮件、短信、HTTP协议以及SQS(AWS的消息队列服务)。
  • Auto Scaling action,指的是在触发告警时可以自动扩容。
  • EC2 action,指的是触发告警时EC2的相关行为,如停止、重启。
  • Systems Manager action,指的是在系统管理中创建一个操作项或者事件。

  1. 添加描述

最后为该Alarm添加一个名称以及描述就可以成功创建该Alarm。

CloudWatch接入开放告警

CloudWatch在告警方面的优势在于自动响应告警,缺点在于对于通知管理的功能尤为薄弱,例如用户无法配置告警通知的内容,对于国内的通知渠道不完善(通知渠道不包含钉钉、企业微信等),以及不支持轮岗代班场景和动态发送告警通知等,因此,将Cloud Watch的告警消息接入SLS的开放告警,可以极大地增强其告警的能力。将CloudWatch告警接入开放告警的步骤如下:

  1. 创建一个SNS主题,然后为这个主题创建一个订阅,协议需要选择HTTP,Endpoint选择创建开放告警应用后生成的接口信息,并且勾选中Enable raw message delivery。创建好了订阅以后,SNS会为这个Endpoint发送一个携带确认链接的HTTP请求,(如果协议选择的是邮件,那么SNS会为配置的邮箱发送一个确认邮件,用户需要点击确认邮件中的链接才能完成订阅),SLS会自定访问HTTP请求中的确认订阅链接,完成订阅后,订阅会处于Confirm状态,如下图所示。

  1. 进入目标Alarm的编辑界面,在配置行动的步骤为,添加两个Notification,其中一个通知的Alarm state trigger配置为In alarmInsufficient data,表示告警处于对应的状态时,系统发送告警通知。另一个通知的Alarm state trigger配置为OK,表示告警恢复时,系统发送一条恢复通知。
  2. 完成Alarm的更新,在SLS中查看CloudWatch的告警消息。

总结

CloudWatch作为AWS上用于监控的一个服务,其检测异常以及自动响应的功能很强大,但是对于告警的通知管理功能比较薄弱,本质上是因为ClouWatch自身并不具备通知的功能,只能通过SNS服务来达到通知的目标。因此,将CloudWatch的告警消息接入到SLS中,就可以极大地增强其告警通知的功能,从而保证了用户能够稳定快速地解决问题。

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
8月前
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
410 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
Oracle 关系型数据库 数据库
【赵渝强老师】Oracle的参数文件与告警日志文件
本文介绍了Oracle数据库的参数文件和告警日志文件。参数文件分为初始化参数文件(PFile)和服务器端参数文件(SPFile),在数据库启动时读取并分配资源。告警日志文件记录了数据库的重要活动、错误和警告信息,帮助诊断问题。文中还提供了相关视频讲解和示例代码。
269 1
|
运维 Serverless API
Serverless 应用引擎产品使用合集之sls日志告警调用函数计算,出现抛出的结果异常,是什么原因
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
存储 运维 Serverless
函数计算产品使用问题之日志告警不生效,一般是由于什么造成的
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
151 0
|
机器学习/深度学习 运维 监控
用SLS配置日志关键字告警的N种方法
本文由日志关键词告警出发,介绍了使用SLS进行关键词监控告警配置,并且介绍了几种常见的配置方法,可以覆盖关键词监控的大部分场景。
1040 0
用SLS配置日志关键字告警的N种方法
|
运维 监控 安全
SLS相同监控规则太多?试试告警监控模板
本文主要介绍了SLS自定义告警监控模板的使用场景以及最佳实践。
379 0
SLS相同监控规则太多?试试告警监控模板
|
6月前
|
运维 监控 网络协议
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
214 11
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
|
5月前
|
编解码 监控 算法
CDN+OSS边缘加速实践:动态压缩+智能路由降低30%视频流量成本(含带宽峰值监控与告警配置)
本方案通过动态压缩、智能路由及CDN与OSS集成优化,实现视频业务带宽成本下降31%,首帧时间缩短50%,错误率降低53%。结合实测数据分析与架构创新,有效解决冷启动延迟、跨区域传输及设备适配性问题,具备快速投入回收能力。
363 0
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
1150 3
|
8月前
|
Prometheus Kubernetes 监控
Kubernetes监控:Prometheus与AlertManager结合,配置邮件告警。
完成这些步骤之后,您就拥有了一个可以用邮件通知你的Kubernetes监控解决方案了。当然,所有的这些配置都需要相互照应,还要对你的Kubernetes集群状况有深入的了解。希望这份指南能帮助你创建出适合自己场景的监控系统,让你在首次发现问题时就能做出响应。
474 22

热门文章

最新文章