文档章节

Azkaban的线程系列 36:AzkabanWebServer-Cleaner-Thread

强子1985
 强子1985
发布于 2016/04/13 11:34
字数 212
阅读 76
收藏 0

此线程 azkaban.executor.ExecutorManager$CleanerThread.run

-------------------------------------------------------------------------------------------------------------------------------------------------

// check every day

private static final long CLEANER_THREAD_WAIT_INTERVAL_MS = 24 * 60 * 60 * 1000;

根据上面的设置,每隔1天检查1次。

然后往下执行

private void cleanOldExecutionLogs(long millis) {

try {

int count = executorLoader.removeExecutionLogsByTime(millis);

logger.info("Cleaned up " + count + " log entries.");

} catch (ExecutorManagerException e) {

e.printStackTrace();

}

}

那么,int count = executorLoader.removeExecutionLogsByTime(millis);做了什么事情呢?

@Override

public int removeExecutionLogsByTime(long millis) throws ExecutorManagerException {

final String DELETE_BY_TIME = "DELETE FROM execution_logs WHERE upload_time < ?";

 

QueryRunner runner = createQueryRunner();

int updateNum = 0;

try {

updateNum = runner.update(DELETE_BY_TIME, millis);

} catch (SQLException e) {

e.printStackTrace();

throw new ExecutorManagerException("Error deleting old execution_logs before " + millis, e);

}

 

return updateNum;

}

其实就是删除执行的日志,从DB中删除,看来就是删除过期数据,

那么到底保留多少天的数据呢?


long executionLogsRetentionMs = azkProps.getLong("execution.logs.retention.ms",

DEFAULT_EXECUTION_LOGS_RETENTION_MS);

 

cleanerThread = new CleanerThread(executionLogsRetentionMs);

cleanerThread.start();

// 12 weeks

private static final long DEFAULT_EXECUTION_LOGS_RETENTION_MS = 3 * 4 * 7 * 24 * 60 * 60 * 1000L;

也就是说,默认保留3个礼拜的执行日志!


日志其实是executor server上传的!

© 著作权归作者所有

共有 人打赏支持
强子1985

强子1985

粉丝 862
博文 941
码字总数 648349
作品 8
南京
架构师
Azkaban的定时调度任务分析34:定时执行下文

下面说线程azkaban.trigger.TriggerManager.TriggerScannerThread是如何运作的 1)初始化 stop in azkaban.trigger.TriggerManager$TriggerScannerThread.xxx run 初始化的上下文是: java.l......

强子哥哥
2016/04/12
189
0
Azkaban的线程系列 37:QueueProcessor线程的任务处理&executor存活监控

有个线程,AzkabanWebServer-QueueProcessor-Thread. 下面分析下这个线程到底干嘛的!!! ==================================================================================== stop in......

强子哥哥
2016/04/13
286
0
azkaban配置插件问题,跪求解答

配置web插件:hdfs、jobsummary、reportal,出现同样的问题某个类,但是在我的azkaban-web-server/plugins/viewer/hdfs/src/azkaban/viewer/hdfs在这个包下我是有HdfsBrowserServlet文件的,...

你我他有个梦
2017/08/11
32
0
Azkaban的Web Server源码探究系列10 : /对应的servlet解析

如果请求的URI是"/",对应的servlet如何响应? =================================================================== ServletHolder indexRedirect = new ServletHolder(new IndexRedirectS......

强子哥哥
2016/04/08
221
0
Azkaban的Web Server源码探究系列8: 水文一篇

经过2天的推进,azkaban的源码顺利推进到 AzkabanWebServer的整个初始化全部debug完毕,非常顺利! 特发水文一篇,下班回家!

强子哥哥
2016/04/07
138
0

没有更多内容

加载失败,请刷新页面

加载更多

redis 系列一 -- 简介及安装

1.简介 redis -- remote dictionary server 远程字典服务 使用 C 语言编写; 高性能的 key-value数据库; 内存数据库,支持数据持久化。 Redis 是一个开源(BSD许可)的,内存中的数据结构存...

imbiao
36分钟前
1
0
nginx log记录请求响应时间

有时为了方便分析接口性能等,需要记录请求的时长,通过修改nginx的日志格式可以做到,如 添加一个新的log_format log_format timed_combined '$remote_addr - $remote_user [$time_local] "...

swingcoder
59分钟前
2
0
Spring MVC之RequestMappingHandlerMapping匹配

对于RequestMappingHandlerMapping,使用Spring的同学基本都不会陌生,该类的作用有两个: 通过request查找对应的HandlerMethod,即当前request具体是由Controller中的哪个方法进行处理; 查...

爱宝贝丶
今天
2
0
Java Web--增删改查之二界面后台java代码(转载参考)

/** *  *//** * @author Administrator * */package dao; import java.sql.*;public class DBConn {/** * 链接数据库 * @return */  ...

小橙子的曼曼
今天
4
0
Redis源码阅读笔记-对象及其类型和编码

总结之《Redis设计与实现》 对象 Redis中是使用对象来便是数据库中的键和值。 结构 // server.h...#define LRU_BITS 24...typedef struct redisObject { unsigned type:4; ...

Jian_Ming
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部