azkaban自带的监控

azkban目前仅仅支持邮件监控,又分两个部分:

flow自带的邮件功能

  • First failure

    当flow中出现第一个failure时发邮件
  • Flow finished

    在flow执行完后,有错误再出邮件

    发的邮件内容如下:

SLA

Service-Level Agreement的缩写,意思是服务等级协议.即azkaban上表示,在什么时候内满足什么条件.SLA的设置:



  • FINISH

    表示flow在要什么时间点之前完成,不管是success还是failure.
  • SUCCESS

    表示flow要在什么时间点之前执行功能.

    目前azkaban有两种action:
  • Emain Action

    不满足SLA条件,则发送EAMIL
  • kill Actinon

    不满足SLA条件,则kill flow

总结

不管是flow自带的邮件功能还是SLA,都是flow级别的预警,都不针对单个的job发邮件

写程序监控job情况

写程序监控job情况有两种方式:

监控azkaban的元数据库

写程序查询azkaban的元数据库,监控job的运行情况.以下sql可以查出0点-8点之间所有的flow,job执行情况

select
a.id as project_id,
a.name project_name,
b.flow_id,
c.status flow_status,#50success 70 failed 30 running 80 running with failure 60 killed
from_unixtime(c.start_time/1000) flow_start_time,
from_unixtime(c.end_time/1000) flow_end_time,
d.job_id,
d.status job_status,
d.start_time job_start_time,
d.end_time job_end_time
from projects a left join
(select project_id,max(version) version,flow_id from project_flows group by project_id,flow_id) b
on a.id = b.project_id
left join execution_flows c
on a.id = c.project_id and b.flow_id = c.flow_id and b.version = c.version
and c.start_time>= unix_timestamp( date_format(curdate(),'%Y-%m-%d %H:%i:%S'))*1000 #早上0点
and c.end_time<=unix_timestamp(date_format(date_add(curdate(), interval 8 HOUR),'%Y-%m-%d %H:%i:%S'))*1000
left join execution_jobs d
on a.id = d.project_id and b.version =d.version and b.flow_id=d.flow_id
and d.start_time>= unix_timestamp( date_format(curdate(),'%Y-%m-%d %H:%i:%S'))*1000 #早上0点
and d.end_time<=unix_timestamp(date_format(date_add(curdate(), interval 8 HOUR),'%Y-%m-%d %H:%i:%S'))*1000
where a.name in ('E_S1','E_S3')
order by a.name,case when c.start_time is null then 9999999999999999999 else c.start_time end

使用azkaban API监控

通过azkaban的aip: http://azkaban.github.io/azkaban/docs/latest/#api-fetch-a-flow-execution job的执行情况.

总结

azkaban自带的监控只支持flow级别的监控,job级别的监控必须通过开发程序实现.

6.azkban的监控的更多相关文章

  1. 使用Monit监控本地进程

    目前用它监控某些服务,失败自动重启,同时监控特定的日志文件,如果有变化,就发邮件报警 安装不细写了,网上好多 我先用cat /proc/version看了下我的系统是el6的,于是wget http: ...

  2. node服务的监控预警系统架构

    需求背景 目前node端的服务逐渐成熟,在不少公司内部也开始承担业务处理或者视图渲染工作.不同于个人开发的简单服务器,企业级的node服务要求更为苛刻: 高稳定性.高可靠性.鲁棒性以及直观的监控和报警 ...

  3. 采用MiniProfiler监控EF与.NET MVC项目(Entity Framework 延伸系列1)

    前言 Entity Framework 延伸系列目录 今天来说说EF与MVC项目的性能检测和监控 首先,先介绍一下今天我们使用的工具吧. MiniProfiler~ 这个东西的介绍如下: MVC Mi ...

  4. Logstash实践: 分布式系统的日志监控

    文/赵杰 2015.11.04 1. 前言 服务端日志你有多重视? 我们没有日志 有日志,但基本不去控制需要输出的内容 经常微调日志,只输出我们想看和有用的 经常监控日志,一方面帮助日志微调,一方面及 ...

  5. C# 利用性能计数器监控网络状态

    本例是利用C#中的性能计数器(PerformanceCounter)监控网络的状态.并能够直观的展现出来 涉及到的知识点: PerformanceCounter,表示 Windows NT 性能计数器 ...

  6. 使用Zabbix监控Oracle数据库

    Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...

  7. 【开源】.net 分布式架构之监控平台

    开源地址:http://git.oschina.net/chejiangyi/Dyd.BaseService.Monitor .net 简单监控平台,用于集群的性能监控,应用耗时监控管理,统一日志管理 ...

  8. Opserver开源的服务器监控系统(ASP.NET)

    Opserver是Stack Exchange下的一个开源监控系统,系统本身由C#语言开发的ASP.NET(MVC)应用程序,无需任何复杂的应用配置,入门很快.下载地址:https://github. ...

  9. Performance Monitor4:监控SQL Server的IO性能

    SQL Server的IO性能受到物理Disk的IO延迟和SQL Server内部执行的IO操作的影响.在监控Disk性能时,最主要的度量值(metric)是IO延迟,IO延迟是指从Applicati ...

随机推荐

  1. RMAN_PIPE

    涉及的dbms_pipe包中的过程和函数:(1)PACK_MESSAGE Procedures用途:Builds message in local buffer(2)SEND_MESSAGE Func ...

  2. OC实现 单向链表

    需要实现一个消息队列,队列具有 FIFO 特点,即先入先出,在这里采用单向链表实现队列逻辑. 本次要实现的队列要求: 1. 节点可以存放任意类型数据 2. 线程安全 简单说明一下: 1. 创建CFNo ...

  3. 第四模块MySQL50题作业,以及由作业引申出来的一些高端玩法

    一.表关系 先参照如下表结构创建7张表格,并创建相关约束                 班级表:class       学生表:student       cid caption grade_id ...

  4. 06JavaScript变量

    JavaScript 变量 变量是用于存储信息的"容器". var x=5; var y=6; var z=x+y; 就像代数那样 x=5 y=6 z=x+y 在代数中,我们使用字 ...

  5. 【C】switch-case里面,加或不加break的区别

    int test; test = ; switch(test) { : test++; printf("value = 0"); // 打印printf,后续没有break代码,系 ...

  6. HyperLedger Fabric 1.4 多机多节点部署(10.3)

    多机多节点指在多台电脑上部署多个组织和节点,本案例部署一个排序(orderer)服务,两个组织(org1,org2)和四个节点(peer),每个组织包括两个节点,需要五台计算机,计算机配置如下: 多机 ...

  7. Fibonacci递归以及数组实现

    说起Fibonacci数列,首先想到的就是递归算法了,这也是帮助理解递归算法比较经典的题目实现如下: public static int Fibonacci(int n){    if (n == 0 ...

  8. 毕业 迷茫 继续OR放弃?

    终于还是回学校拿了毕业证书,请了两个小时的假,连同中午吃饭的时间,顺利地从班主任手中拿到了毕业证书,大学就这样结束啦,人生也来到了一个新的转折点,但是每天的每天,我都是异常迷茫,异常胆怯,异常无语. ...

  9. [BZOJ3563&3569]DZY Loves Chinese

    bzoj 加强版 sol 其实前一题还有一种解法的,具体方法请见bzoj讨论版. 以下是正解(?) 建一棵生成树. 考虑什么时候图会不连通:当且仅当存在一条树边被删除,同时所有覆盖了他的非树边也被删除 ...

  10. 北京Uber优步司机奖励政策(12月24日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...