elastic-job允许用户在任务调度异常时指定处理异常的异常处理器,异常处理器由接口JobExceptionHandler定义,其定义如下:
/**
* 作业异常处理器.
*
* @author zhangliang
*/
public interface JobExceptionHandler {
/**
* 处理作业异常.
*
* @param jobName 作业名称
* @param cause 异常原因
*/
void handleException(String jobName, Throwable cause);
}
如果没有指定自己的异常处理器elastic-job默认将使用DefaultJobExceptionHandler处理异常,其定义如下:
/**
* 默认作业异常处理器.
*
* @author zhangliang
*/
@Slf4j
public final class DefaultJobExceptionHandler implements JobExceptionHandler {
@Override
public void handleException(final String jobName, final Throwable cause) {
log.error(String.format("Job '%s' exception occur in job processing",
jobName), cause);
}
}
以下是一个自定义的异常处理器的示例:
public class MyJobExceptionHandler implements JobExceptionHandler {
private static final Logger logger
= Logger.getLogger(MyJobExceptionHandler.class);
@Override
public void handleException(String jobName, Throwable cause) {
logger.error(String.format("任务[%s]调度异常", jobName), cause);
}
}
异常处理器的配置是通过job-exception-handler属性指定的,所有作业类型的异常处理器的配置是通用的:
<job:simple id="myExceptionJob" class="com.elim.learn.elastic.job.MyExceptionJob"
cron="0/30 * * * * ?"
registry-center-ref="regCenter" sharding-total-count="4" overwrite="true"
job-exception-handler="com.elim.learn.elastic.job.MyJobExceptionHandler" />
(本文由Elim写于2017年10月2日)
相关推荐
Elastic-Job是一个分布式任务调度框架,由两个独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。这里的"elastic-job-lite-console-2.1.5.zip"是一个压缩包,其中包含了Elastic-Job-Lite的控制台版本,支持在...
Elastic-Job分为Elastic-Job-Lite和Elastic-Job-Cloud两个版本,其中Elastic-Job-Lite是轻量级的离线分布式作业调度框架,它不依赖任何云平台,适合在各种环境部署。Elastic-Job-Lite提供了一套完整的作业解决方案...
Elastic-Job Lite Console是当当网开源的一款用于分布式定时任务管理的控制台,版本为2.1.5。这个项目无需借助Tomcat等Web服务器,可以直接通过在解压后的bin目录下执行命令来启动服务,之后只需在浏览器中访问`...
Elastic-Job是一个分布式任务调度框架,由两个子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。Elastic-Job-Lite是轻量级的解决方案,它不依赖于任何云平台,适用于分布式环境中的任务调度。而Elastic-Job-Cloud则...
Elastic-Job-Lite 主要关注的是分布式执行和故障转移,而Elastic-Job-Cloud 则是在Mesos之上实现的分布式调度解决方案。在本例中,我们主要探讨Elastic-Job-Lite Console,它是Elastic-Job-Lite的图形化管理界面,...
在Elastic-Job-Lite中,"elastic-job-lite-console-master.zip"是一个包含Elastic-Job-Lite的可视化管理控制台的源码包。这个控制台的主要目的是为了方便用户对Elastic-Job的作业进行管理和监控,从而提高运维效率。...
当当elastic-job控制台jar包,elastic-job-lite-console-3.0.0.M1-SNAPSHOT,本人从git下载源码后编译生成的jar。 $ 解压 elastic-job-lite-console-3.0.0.M1-SNAPSHOT.rar $ cd elastic-job-lite-console-3.0.0.M1-...
Elastic-Job是一个分布式任务调度框架,由两个子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。Elastic-Job-Lite是轻量级的解决方案,适合在私有云或物理服务器集群上使用;而Elastic-Job-Cloud则基于Mesos框架,更...
Elastic-Job-Lite是一款轻量级分布式任务调度框架,由当当网开源,它旨在解决海量任务在分布式环境下的调度问题。Elastic-Job-Lite的核心特性包括弹性扩展、故障转移、分布式调度以及简单易用的控制台管理界面。在本...
elastic-job-console,elastic-job页面管理job控制台,希望可以帮到朋友们
Elastic-Job是一个分布式任务调度框架,由两个独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。这个"elastic-job-quickstart.zip"压缩包应该是为初学者提供的一份快速入门示例代码,帮助理解并掌握Elastic-...
Elastic-Job是一个分布式任务调度框架,由两个独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成,分别对应轻量级和云原生的解决方案。本资料包将详细介绍Elastic-Job的核心功能、设计理念以及如何在实际项目中...
"预习资料"中的《任务调度之Elastic-Job.doc》很可能是对Elastic-Job的详细介绍,包括其设计理念、核心功能、使用方法等内容,对于初学者来说是很好的学习材料。文档可能会涵盖以下几点: 1. **设计理念**:Elastic...
《深入理解Elastic-Job Lite:基于SpringBoot的分布式任务框架》 Elastic-Job Lite是基于当当网开源的分布式任务调度框架,它旨在解决大规模分布式系统中的任务调度问题,提供了一套完整且易用的解决方案。在本文中...
《Elastic-Job Lite Console 2.1.4:分布式任务调度管理的得力助手》 Elastic-Job Lite Console 2.1.4是一款基于Elastic-Job Lite的轻量级分布式任务调度管理工具,它为开发者提供了一个可视化的控制台,用于方便地...
4. 异常处理:分析Elastic-Job Lite如何处理各种异常情况,保证任务的稳定运行。 总结,Spring与Elastic-Job Lite的整合为企业级应用提供了一种高效、可靠的定时任务解决方案。通过深入源码学习,我们可以更好地...