1. 程式人生 > >Elastic Job 入門教程(四)— 事件追蹤

Elastic Job 入門教程(四)— 事件追蹤

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管理端,配置事件追蹤資料來源

在這裡插入圖片描述

查詢作業執行歷史

在這裡插入圖片描述