日志服务数据加工: 任务状态监控与告警

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 日志服务数据加工最佳实践: 任务状态监控与告警, 介绍如何监控数据加工的任务状态, 并配置相应的监控.

作者: 唐恺

概述

对数据加工任务配置监控,可以发现数据流量、加工逻辑、系统运行的一些潜在异常,帮助业务及时做好异常恢复。

本文大部分监控指标基于“数据加工诊断”仪表盘(参考规则洞察仪表盘)。在系统层面关注:流式加工的消费延迟、是否有异常报错。业务层面上,处理日志行数或写出日志行数是可以被考虑的指标。

进入数据加工任务所属project,选择“仪表盘”-“数据加工诊断”,可以根据业务需求选择以下指标设置告警。

image

加工延迟

  1. 选择“shard消费延迟 (秒)”图表

image

  1. 设置触发条件

例如,选择阈值为120秒时告警:

[delay (s)] > 120

image

  1. 设置通知方式

本文以钉钉webhook为例,更多通知方式参考告警通知方式

image

  1. 告警通知

image

异常报错

  1. 选择“异常详情”图表

image

  1. 设置触发条件

例如,希望在出现ERROR时告警:

image

  1. 设置通知方式
  2. 告警通知

image

ERROR日志一般由加工逻辑或代码上引发,可以在修改代码并重启(停止、启动)作业后观察是否还有新的错误。

加工流量(绝对值)

  1. 选择“加工速率 (lines/s)”图表

image

  1. 设置触发条件

例如,当每秒处理日志条数少于4万行告警时告警(每种数据的流量特征不同,请根据实际情况设置有效的告警条件):

accept < 40000

image

  1. 设置通知方式
  2. 告警通知

image

加工流量(日同比)

  1. 自定义监控指标(图表)

进入数据加工任务所属project,选择logstore internal-etl-log,使用如下SQL计算每5分钟的写出日志行数与昨日同比的指标:

__topic__:  __etl-log-status__ AND __tag__:__schedule_type__:  Resident and event_id:  "shard_worker:metrics:checkpoint" | 
select dt, today, yesterday, round((today - yesterday) * 100.0 / yesterday, 3) as inc_ration from
(select dt, (case when diff[1] is null then 0 else diff[1] end) as today, (case when diff[2] is null then 0 else diff[2] end) as yesterday from 
(select dt, compare("delivered lines", 86400) as diff from 
(select date_format(__time__ - __time__ % 300, '%H:%i') as dt, sum("progress.delivered") as "delivered lines" from log group by dt order by dt asc limit 5000)
group by dt order by dt asc limit 5000))

image

保存该查询条件到仪表盘etl-monitor:

image

你还可以修改SQL以设置更精确的告警指标,例如只对任务ID:06f239b7362ad238e613abb3f7fe3c87设置告警:

__topic__:  __etl-log-status__ AND __tag__:__schedule_type__:  Resident and event_id:  "shard_worker:metrics:checkpoint" and __tag__:__schedule_id__:  06f239b7362ad238e613abb3f7fe3c87 | 
select ...
  1. 设置触发条件

例如,当日志处理速率比昨日下降40%时告警:

inc_ration < (-40)

image

  1. 设置通知方式
  2. 告警通知

image

告警相关操作

可以在告警列表中进行删除或禁用通知或修改操作:

image

更多告警使用指南请参考设置告警

进一步参考

欢迎扫码加入官方钉钉群获得实时更新与阿里云工程师的及时直接的支持:
image

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3月前
|
存储 Prometheus 监控
Prometheus vs. ELK Stack:容器监控与日志管理工具的较量
随着容器化技术的广泛应用,容器监控与日志管理成为了关键任务。本文将对两种常用工具进行比较与选择,分别是Prometheus和ELK Stack。Prometheus是一款开源的监控系统,专注于时序数据的收集和告警。而ELK Stack则是一套完整的日志管理解决方案,由Elasticsearch、Logstash和Kibana三个组件组成。通过比较它们的特点、优势和适用场景,读者可以更好地了解如何选择适合自己需求的工具。
|
4月前
|
分布式计算 监控 Spark
Spark 任务运行时日志分析
Spark 任务运行时日志分析
47 0
|
4月前
|
SQL 关系型数据库 MySQL
我使用flinkcdc的sql形式进行全量同步,4张表,有两张表数据没进去,看日志,id怎么是null呢?
我使用flinkcdc的sql形式进行全量同步,4张表,有两张表数据没进去,看日志,id怎么是null呢?
117 40
|
4月前
|
Kubernetes 监控 容器
k8s学习-CKA真题-监控Pod日志
k8s学习-CKA真题-监控Pod日志
78 0
|
1月前
|
Prometheus 监控 Kubernetes
Kubernetes 集群监控与日志管理实践
【2月更文挑战第29天】 在微服务架构日益普及的当下,Kubernetes 已成为容器编排的事实标准。然而,随着集群规模的扩大和业务复杂度的提升,有效的监控和日志管理变得至关重要。本文将探讨构建高效 Kubernetes 集群监控系统的策略,以及实施日志聚合和分析的最佳实践。通过引入如 Prometheus 和 Fluentd 等开源工具,我们旨在为运维专家提供一套完整的解决方案,以保障系统的稳定性和可靠性。
|
2天前
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断2
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
|
3天前
|
机器学习/深度学习 前端开发 数据挖掘
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
36 0
|
29天前
|
Prometheus 监控 Kubernetes
Kubernetes 集群的监控与日志管理实践
【2月更文挑战第31天】 在微服务架构日益普及的今天,容器编排工具如Kubernetes已成为部署、管理和扩展容器化应用的关键平台。然而,随着集群规模的扩大和业务复杂性的增加,如何有效监控集群状态、及时响应系统异常,以及管理海量日志信息成为了运维人员面临的重要挑战。本文将深入探讨 Kubernetes 集群监控的最佳实践和日志管理的高效策略,旨在为运维团队提供一套系统的解决思路和操作指南。
26 0
|
1月前
|
SQL 资源调度 Oracle
Flink CDC产品常见问题之sql运行中查看日志任务失败如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
1月前
|
分布式计算 DataWorks 调度
DataWorks常见问题之设置好调度时间的任务运行后查看运行日志报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
39 0

相关产品

  • 日志服务