elastic-job 运维篇6 事件追踪和console端查看日志信息
1.设置4个分片,10秒执行一次。测试1:测试窗口1不关闭,再次运行main方法查看控制台日志,注意修改中的 server.port,保证端口不冲突测试2:测试窗口1和测试窗口2不关闭,再次运行2次main方法,达到4个任务实例,查看控制台日志测试3:测试窗口1和测试窗口2不关闭,将测试窗口3和测试窗口4任务停止测试4:测试窗口1不关闭 将测试窗口2任务停止。
·
一 elastic-job运维篇
1.1 事件追踪
Elastic-Job-Lite在配置中提供了JobEventConfiguration,支持数据库方式配置,会在数据库中自动创建 JOB_EXECUTION_LOG和JOB_STATUS_TRACE_LOG两张表以及若干索引,来记录作业的相关信息。
1.1.1 引入数据源配置
配置的代码如下:
1.1.2 启动项目
启动项目后会创建两张表:JOB_EXECUTION_LOG 和JOB_STATUS_TRACE_LOG

1.JOB_EXECUTION_LOG记录每次作业的执行历史。分为两个步骤:
a)作业开始执行时, 向数据库插入数据,除failure_cause和complete_time外的其他字段均不为空。
b)作业完成执行时, 向数据库更新数据,更新is_success, complete_time和failure_cause(如果作业执行失败)。
2.JOB_STATUS_TRACE_LOG记录作业状态变更痕迹表。可通过每次作业运行的task_id查询作业状态变化的生命周期 和运行轨迹。
二 elastic-job的管控台
2.1 设计理念
elastic-job中提供了一个elastic-job-lite-console控制台 ,设计理念:
1. 本控制台和Elastic Job并无直接关系,是通过读取Elastic Job的注册中心数据展现作业状态,或更新注册中心 数据修改全局配置。
2. 控制台只能控制作业本身是否运行,但不能控制作业进程的启停,因为控制台和作业本身服务器是完全分布式的,控制台并不能控制作业服务器。
主要功能
1. 查看作业以及服务器状态
2. 快捷的修改以及删除作业设置
3. 启用和禁用作业
4. 跨注册中心查看作业
5. 查看作业运行轨迹和运行状态
不支持项
1. 添加作业。因为作业都是在首次运行时自动添加,使用控制台添加作业并无必要。直接在作业服务器启动包 含Elastic Job的作业进程即可。
2.2管控台的操作
elastic-job中提供了一个elastic-job-lite-console控制台
1.操作

2.启动
进入 bin目录 并执行:
打开浏览器访问 http://localhost:8899/ 即可访问控制台。8899为默认端口号,可通过启动脚本输入-p自定义端 口号。
elastic-job-lite-console-${version}.tar.gz 也可通过 elastic-job 源码用 mvn install编译获取。
输入用户名 root 密码 root 即可打开主界面 如下图
3.配置

4.查看

2.3 数据源配置查看
1.配置事件追踪数据源
在事件追踪数据源配置页面点添加按钮,输入相关信息
2.查看记录信息
2.4 dump命令
使用Elastic-Job-Lite过程中可能会碰到一些问题,导致作业运行不稳定。由于无法在生产环境调试,通过dump命 令可以把作业内部相关信息dump出来,方便开发者debug分析。
三 dataflow类型作业(了解)
3.1 dataflow作业类型
Dataflow类型的定时任务需实现DataflowJob接口,该接口提供2个方法可供覆盖,分别用于抓取(fetchData)和处 理(processData)数据。咱们继续对例子进行改造。
Dataflow类型用于处理数据流,它和SimpleJob不同,它以数据流的方式执行,调用fetchData抓取数据,直到抓 取不到数据才停止作业。
3.2 dataflow代码
3.3 执行结果
结论:
每次运行定时任务都会开启4个线程执行fetchData抓取数据,抓取以后调用processData处
理数据,如果是流式处理数据(new DataflowJobConfiguration第三个参数为true)且fetchData方法的返回值为 null或集合长度为空时,作业才停止处理。
更多推荐




所有评论(0)