Elastic Job 入门教程(四)— 事件追踪

版权声明:自由转载,请附链接 https://blog.csdn.net/kangkanglou/article/details/82849744

Elastic-Job提供了事件追踪功能,用于查询、统计和监控作业执行历史和执行状态。Elastic-Job-Lite在配置中提供了JobEventConfiguration,目前支持数据库方式配置。事件追踪所配置的DataSource数据库中会自动创建JOB_EXECUTION_LOG和JOB_STATUS_TRACE_LOG两张表以及若干索引。以下是代码示例:

定义数据源

@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
@Configuration
@ConfigurationProperties(prefix = "spring.datasource")
public class DataSourceProperties {
    private String url;
    private String username;
    private String password;

    @Bean
    @Primary
    public DataSource getDataSource() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setUrl(url);
        dataSource.setUsername(username);
        dataSource.setPassword(password);
        return dataSource;
    }

}

定义JobEventConfiguration

@Configuration
public class JobEventConfig {
    @Autowired
    private DataSource dataSource;

    @Bean
    public JobEventConfiguration jobEventConfiguration() {
        return new JobEventRdbConfiguration(dataSource);
    }
}

作业中增加事件追踪配置

    ...
    
    @Autowired
    private JobEventConfiguration jobEventConfiguration;


    @Bean(initMethod = "init")
    public JobScheduler simpleJobScheduler() {
        return new SpringJobScheduler(serviceMonitor
                , regCenter
                , liteJobConfiguration
                , jobEventConfiguration
                , commonElasticJobListener);
    }

登录Console管理端,配置事件追踪数据源

在这里插入图片描述

查询作业执行历史

在这里插入图片描述

更多源码请参考:

https://github.com/ypmc/spring-cloud/tree/master/spring-elastic-job

猜你喜欢

转载自blog.csdn.net/kangkanglou/article/details/82849744
今日推荐