一、运维人员的痛点
“上游的上游的上游都还没开始运行,已经找了3层了什么时候能找到头啊...”
“上游实例明明都运行成功了,取数任务怎么还没有开始运行呢?老板等着看报表呢”
“资源紧张资源紧张,到底都是哪些任务抢占了资源!”
....
日常工作中,我们常常听到运维人员的这些吐槽和抱怨,分析任务运行异常的原因可谓是一样费时费力又常常毫无头绪的任务。调度逻辑复杂多样,任务运行条件繁多,遇到异常情况时,运维人员通常需要全盘检查,排除了一个又一个可能的原因后,才终于在无法补救的时候找出了问题根音。异常诊断,成为众多运维人员共同的心病。
二、运维诊断功能介绍
Dataphin V3.5版本上线了自动化的实例运行诊断的能力,从上游依赖、定时时间、限流规则、调度资源及实例执行 5 个阶段分析实例运行过程中可能产生的异常:
- 上游依赖:上游依赖诊断为您展示实例最近1次运行诊断结果及上游实例当前最新的状态。游全部运行成功是实例能够开始正常运行的条件之一,上游实例运行失败将阻塞当前实例的运行,您可以通过查看上游依赖诊断结果进一步排查失败原因并一键定位到需要直接处理的其实异常实例。
- 定时时间:检查是否已到达任务设置的定时运行时间,只有上游全部运行成功且到达了的定时调度时间的实例才会继续下发,否则为“等待调度时间”状态。
- 限流规则:所有实例运行都需要进行限流规则的诊断,上游依赖及定时时间诊断通过后,需要同时满足所有命中的限流规则才会下发到资源调度系统,否则为“限流中”状态。您可以查看当前实例命中的限流规则以及当前队列中已下发的实例列表。
- 调度资源:实例有足够可分配的空闲调度资源才会开始运行,否则为“等待调度资源”状态。您可以查看实例已等待调度资源的时长、以及当前占用所在资源组资源的全量实例列表,并根据诊断建议执行对应的操作。
- 实例执行:您可以查看实例运行结果以及执行日志。Dataphin 提供单个任务每次运行的执行日志以及面向部署运维人员的全链路分析日志。执行日志中会将出错原因及建议打印出来,如:缺少某张表的权限、查询的字段不存在、内存不足、数据源链接报错等等,运维人员可以基于此处的原因分析联系对应的开发或数据库管理员及时处理。
基于以上5个步骤的分析,运维人员可以清晰明了的识别异常问题出现的环节,并根据给出的分析提示执行对应的操作,大大降低了人工分析的成本,问题诊断速度显著提升。
三、结语
下个版本,Dataphin将上线智能基线监控能力,支持自动化的监控范围推算以及智能化的异常分析预警,进一步解放人工监控,给运维人员带来更多体验上的优化,敬请期待!
Dataphin官网介绍:https://www.lydaas.com/dataphin
Dataphin公开咨询钉钉群:23381533