SLS新版告警入门-监控OSS访问日志

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 在业务中经常会有波峰波谷的现象,使用同一个监控阈值往往不能满足告警需求;基于SLS,可以使用日环比方式,配置SLS新版告警,来监控PV日环比是否有陡增或陡降,比如陡增10%或者陡降10%,会发出告警;本文以此为背景,来讲解如何配置告警并发出通知。

背景

客户A是一家多媒体类公司,主要产品有短视频App,用户可以在上面发短视频,其他用户可以看到用户发的短视频;客户A使用了阿里云OSS来存储用户产生的短视频;App每天的用户活动具有一定周期性,一般情况下深夜的PV较低,其他时段PV较高。一个典型的pv类似下图。

每天9点-10点之间的PV访问基本持平,如果5号9点-10点的PV是50万,6号9点-10点的PV是51万可以理解为正常波动,如果6号9-10点的PV突然变成了100万或者20万,应该告警出来,以提醒运营或者开发人员可能会出现问题;

本文将以此为背景,配置SLS告警,来监控PV日环比是否有陡增或陡降,如果出现陡增或陡降,比如陡增10%或者陡降10%,发出告警,并发送到钉钉机器人。

主要步骤

  • 设置监控目标,OSS访问日志PV日环比变化
  • 配置告警规则:设置触发告警阈值
  • 设置行动策略:设置告警触发后的通知渠道
  • 接收告警通知


配置告警

查询OSS访问PV昨日环比

  • 如果未接入OSS访问日志,可以使用模拟接入来生成OSS访问日志,参考
  • 接入OSS访问日志后,在查询分析中,输入如下语句

__topic__: oss_access_log and http_status < 400 | select diff[1] as curr, diff[2] as pre, round(diff[3]*100 - 100, 2) as ratio from ( select compare(pv, 86400) as diff from (SELECT count(client_ip) AS PV from log))

  • compare(列名, N),用于对比当前时间周期内的结果,与N秒之前的时间周期内的计算结果;列名:目标列的列名。该列的值必须为double类型或long类型。
  • 返回值为数据[当前值,N秒前的值,当前值与N秒前的值的比值]
  • 通过 SELECT count(client_ip) AS PV from log求出当前时间周期(比如5分钟)的pv
  • 通过compare(pv, 86400)求出当前5分钟的pv,与一天前(86400秒)的同时期的5分钟的环比数据
  • 通过select diff[1] as curr, diff[2] as pre, round(diff[3]*100 - 100, 2) as ratio,求出当前5分钟pv(curr), 昨天同时刻的pv(pre),今天比昨天pv的增加百分比(ratio)
  • 查询结果示例

配置告警规则

  • 在上述查询页面中,点击右上角另存为告警

  • 首次配置(每个用户仅需配置一次):需要选择告警中心Project的存储位置,告警中心Project中默认有一个internal-alert-center-log的logstore(免费),会存储一些告警的重要日志,还有三个重要报表供查询分析


  • 接下来将对结果中的ratio进行监控,如果超过一定阈值,升高10%或者降低10%,将要发出告警给指定的钉钉机器人。
  • 配置告警规则名,触发条件,和添加标注

  • 触发条件这里设置的是如果PV的环比飙高10%或者降低了10%;【触发条件文档】.
  • 触发条件设置为ratio < (-10) || ratio > 10,(对于负数,加上括号)【语法文档】
  • 标注默认包含标题和描述:在标题和描述中我们可以引用查询结果中的变量curr, pre, ratio;
  • 标注标题:OSS访问PV抖动过大
  • 标题描述:OSS访问PV:${curr},抖动为${ratio}%,昨天PV:${pre}


新增行动策略

行动策略是指告警触发后,需要执行什么动作,比如可以发送邮件,发送钉钉,调用webhook等;这里以首次配置行动策略为例,来讲如何新增行动策略。

  • 点击新增,会跳转到创建行动策略页面,当前页面不要关闭。

  • 接下来在界面上配置行动策略,填写行动策略ID和行动策略名称,点击行动的小icon(上图红框位置),添加通知渠道;

  • 这里通知渠道例子使用钉钉机器人来通知,需要事先配置好钉钉机器人,注意钉钉机器人的安全设置,可以启用自定义关键词,填入“告警”;行动组,选择渠道钉钉,请求地址写钉钉机器人的Webhook,内容模板选择默认模板(关于内容模板可以【参考】)

  • 点击结束按钮
  • 会增加一个结束节点

  • 点击确认按钮,即创建好了行动策略



配置行动策略

  • 创建完行动策略,返回告警规则页面,点击告警策略的刷新按钮
  • 点击行动策略的下拉框,选择刚才创建的行动策略

  • 其他保持默认,点击确认按钮,保存告警规则

接收告警通知

  • 等待5分钟,在钉钉中可以收到告警消息,点击查询详情可以跳转到告警执行时刻的日志查询页面,点击屏蔽5分钟可以跳转到告警规则页面。


常见问题

  • 如果想尽快收到告警,可以在配置告警规则步骤中,将检查频率设置为1分钟;触发条件设置为ratio < (-1) || ratio > 1,这样更容易触发告警;
  • 昨日环比用的compare(pv, 86400),在模拟数据时,可能还没有昨天的数据,这时候可以将对比时间窗口减小,比如使用compare(pv, 120)来表示环比前2分钟的数据;
  • 钉钉机器人未收到告警可以排查是否设置了安全关键词;


至此,一个监控OSS PV昨日环比抖动的告警例子就完成了。这里只是一个简单的告警项目,演示了告警的一些基本功能,SLS告警具有非常强大的功能,新版告警提供对日志、时序等各类数据的告警监控,亦可接受三方告警,对告警进行降噪、事件管理、通知管理等,新增40+功能场景,充分考虑研发、运维、安全以及运营人员的告警监控运维需求。【参考


更多参考

  • 什么是日志服务告警【链接
  • 告警监控,创建告警规则【链接
  • 告警管理,创建告警规则【链接
  • 用户管理,创建用户及用户组【链接
  • 通知管理【链接

进一步参考


最后,如果您还想了解更多智能运维前沿资讯,欢迎您报名参加【数智创新行·智能运维专场】。

6月25日|上海·西岸国际人工智能中心

数智创新行上海站·智能运维专场

阿里云将带来云原生智能运维解决方案,满足海量事件有效感知、高效响应,可观测数据统一分析、故障定位,以及基于AI的异常检测等需求,助力企业构建自己的运维平台,成为开发、运维人员高效可靠的助手。

扫描海报二维码或点击下方链接报名, 期待您一起开启智能运维新时代!

https://www.aliyun.com/page-source//developer/special/osssalon

智能运维专场图片.jpg


相关实践学习
对象存储OSS快速上手——如何使用ossbrowser
本实验是对象存储OSS入门级实验。通过本实验,用户可学会如何用对象OSS的插件,进行简单的数据存、查、删等操作。
目录
相关文章
|
10月前
|
存储 人工智能 运维
防御OSS Bucket泄露:RAM权限策略+日志审计+敏感数据扫描三重防护
云存储安全三重防护体系,聚焦RAM权限控制、日志审计与敏感数据扫描,通过策略精控、异常检测与主动扫描构建闭环防御,有效应对配置错误导致的数据泄露风险,提升企业云上数据安全性。
653 0
|
11月前
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1044 54
|
11月前
|
运维 监控 网络协议
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
333 11
物联网设备状态监控全解析:从告警参数到静默管理的深度指南-优雅草卓伊凡
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
555 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
存储 SQL 关系型数据库
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log、原理、写入过程;binlog与redolog区别、update语句的执行流程、两阶段提交、主从复制、三种日志的使用场景;查询日志、慢查询日志、错误日志等其他几类日志
1070 35
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
|
10月前
|
编解码 监控 算法
CDN+OSS边缘加速实践:动态压缩+智能路由降低30%视频流量成本(含带宽峰值监控与告警配置)
本方案通过动态压缩、智能路由及CDN与OSS集成优化,实现视频业务带宽成本下降31%,首帧时间缩短50%,错误率降低53%。结合实测数据分析与架构创新,有效解决冷启动延迟、跨区域传输及设备适配性问题,具备快速投入回收能力。
674 0
|
Prometheus Kubernetes 监控
Kubernetes监控:Prometheus与AlertManager结合,配置邮件告警。
完成这些步骤之后,您就拥有了一个可以用邮件通知你的Kubernetes监控解决方案了。当然,所有的这些配置都需要相互照应,还要对你的Kubernetes集群状况有深入的了解。希望这份指南能帮助你创建出适合自己场景的监控系统,让你在首次发现问题时就能做出响应。
727 22
|
存储 缓存 关系型数据库
图解MySQL【日志】——Redo Log
Redo Log(重做日志)是数据库中用于记录数据页修改的物理日志,确保事务的持久性和一致性。其主要作用包括崩溃恢复、提高性能和保证事务一致性。Redo Log 通过先写日志的方式,在内存中缓存修改操作,并在适当时候刷入磁盘,减少随机写入带来的性能损耗。WAL(Write-Ahead Logging)技术的核心思想是先将修改操作记录到日志文件中,再择机写入磁盘,从而实现高效且安全的数据持久化。Redo Log 的持久化过程涉及 Redo Log Buffer 和不同刷盘时机的控制参数(如 `innodb_flush_log_at_trx_commit`),以平衡性能与数据安全性。
767 5
图解MySQL【日志】——Redo Log
|
监控 Java 应用服务中间件
Tomcat log日志解析
理解和解析Tomcat日志文件对于诊断和解决Web应用中的问题至关重要。通过分析 `catalina.out`、`localhost.log`、`localhost_access_log.*.txt`、`manager.log`和 `host-manager.log`等日志文件,可以快速定位和解决问题,确保Tomcat服务器的稳定运行。掌握这些日志解析技巧,可以显著提高运维和开发效率。
1444 13

相关产品