You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2020/10/21 13:53:51 UTC
[shardingsphere-elasticjob] branch master updated: Update example
for new error handler config (#1627)
This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere-elasticjob.git
The following commit(s) were added to refs/heads/master by this push:
new 5003ff6 Update example for new error handler config (#1627)
5003ff6 is described below
commit 5003ff69701f7a44e1eeae81ef201825d5872c1c
Author: Liang Zhang <te...@163.com>
AuthorDate: Wed Oct 21 21:50:16 2020 +0800
Update example for new error handler config (#1627)
---
.../elasticjob/lite/example/JavaMain.java | 45 ++++---
.../elasticjob/lite/example/SpringMain.java | 2 +-
.../resources/META-INF/application-context.xml | 140 ++++++++++++++++++++
.../main/resources/META-INF/applicationContext.xml | 144 ---------------------
4 files changed, 167 insertions(+), 164 deletions(-)
diff --git a/examples/elasticjob-example-lite-java/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/JavaMain.java b/examples/elasticjob-example-lite-java/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/JavaMain.java
index e67d656..c6d517f 100644
--- a/examples/elasticjob-example-lite-java/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/JavaMain.java
+++ b/examples/elasticjob-example-lite-java/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/JavaMain.java
@@ -20,9 +20,9 @@ package org.apache.shardingsphere.elasticjob.lite.example;
import org.apache.commons.dbcp.BasicDataSource;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.dataflow.props.DataflowJobProperties;
-import org.apache.shardingsphere.elasticjob.error.handler.dingtalk.DingtalkConfiguration;
-import org.apache.shardingsphere.elasticjob.error.handler.email.EmailConfiguration;
-import org.apache.shardingsphere.elasticjob.error.handler.wechat.WechatConfiguration;
+import org.apache.shardingsphere.elasticjob.error.handler.dingtalk.DingtalkPropertiesConstants;
+import org.apache.shardingsphere.elasticjob.error.handler.email.EmailPropertiesConstants;
+import org.apache.shardingsphere.elasticjob.error.handler.wechat.WechatPropertiesConstants;
import org.apache.shardingsphere.elasticjob.http.props.HttpJobProperties;
import org.apache.shardingsphere.elasticjob.lite.api.bootstrap.impl.OneOffJobBootstrap;
import org.apache.shardingsphere.elasticjob.lite.api.bootstrap.impl.ScheduleJobBootstrap;
@@ -73,9 +73,9 @@ public final class JavaMain {
setUpDataflowJob(regCenter, tracingConfig);
setUpScriptJob(regCenter, tracingConfig);
setUpOneOffJob(regCenter, tracingConfig);
+// setUpOneOffJobWithEmail(regCenter, tracingConfig);
// setUpOneOffJobWithDingtalk(regCenter, tracingConfig);
// setUpOneOffJobWithWechat(regCenter, tracingConfig);
-// setUpOneOffJobWithEmail(regCenter, tracingConfig);
}
private static CoordinatorRegistryCenter setUpRegistryCenter() {
@@ -123,37 +123,44 @@ public final class JavaMain {
.cron("0/5 * * * * ?").setProperty(ScriptJobProperties.SCRIPT_KEY, buildScriptCommandLine()).addExtraConfigurations(tracingConfig).build()).schedule();
}
+ private static void setUpOneOffJobWithEmail(final CoordinatorRegistryCenter regCenter, final TracingConfiguration<DataSource> tracingConfig) {
+ JobConfiguration jobConfig = JobConfiguration.newBuilder("javaOccurErrorOfEmailJob", 3)
+ .shardingItemParameters("0=Beijing,1=Shanghai,2=Guangzhou").jobErrorHandlerType("EMAIL").addExtraConfigurations(tracingConfig).build();
+ setEmailProperties(jobConfig);
+ new OneOffJobBootstrap(regCenter, new JavaOccurErrorJob(), jobConfig).execute();
+ }
+
private static void setUpOneOffJobWithDingtalk(final CoordinatorRegistryCenter regCenter, final TracingConfiguration<DataSource> tracingConfig) {
JobConfiguration jobConfig = JobConfiguration.newBuilder("javaOccurErrorOfDingtalkJob", 3)
.shardingItemParameters("0=Beijing,1=Shanghai,2=Guangzhou").jobErrorHandlerType("DINGTALK").addExtraConfigurations(tracingConfig).build();
- setDingtalkConfiguration(jobConfig);
+ setDingtalkProperties(jobConfig);
new OneOffJobBootstrap(regCenter, new JavaOccurErrorJob(), jobConfig).execute();
}
private static void setUpOneOffJobWithWechat(final CoordinatorRegistryCenter regCenter, final TracingConfiguration<DataSource> tracingConfig) {
JobConfiguration jobConfig = JobConfiguration.newBuilder("javaOccurErrorOfWechatJob", 3)
.shardingItemParameters("0=Beijing,1=Shanghai,2=Guangzhou").jobErrorHandlerType("WECHAT").addExtraConfigurations(tracingConfig).build();
- setWechatConfiguration(jobConfig);
- new OneOffJobBootstrap(regCenter, new JavaOccurErrorJob(), jobConfig).execute();
- }
-
- private static void setUpOneOffJobWithEmail(final CoordinatorRegistryCenter regCenter, final TracingConfiguration<DataSource> tracingConfig) {
- JobConfiguration jobConfig = JobConfiguration.newBuilder("javaOccurErrorOfEmailJob", 3)
- .shardingItemParameters("0=Beijing,1=Shanghai,2=Guangzhou").jobErrorHandlerType("EMAIL").addExtraConfigurations(tracingConfig).build();
- setEmailConfiguration(jobConfig);
+ setWechatProperties(jobConfig);
new OneOffJobBootstrap(regCenter, new JavaOccurErrorJob(), jobConfig).execute();
}
- private static void setDingtalkConfiguration(final JobConfiguration jobConfig) {
- jobConfig.getExtraConfigurations().add(DingtalkConfiguration.newBuilder("https://oapi.dingtalk.com/robot/send?access_token=token").keyword("keyword").secret("secret").build());
+ private static void setEmailProperties(final JobConfiguration jobConfig) {
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.HOST, "localhost");
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.PORT, "465");
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.USERNAME, "user");
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.PASSWORD, "xxx");
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.FROM, "from@xxx.xx");
+ jobConfig.getProps().setProperty(EmailPropertiesConstants.TO, "to1@xxx.xx,to2xxx.xx");
}
- private static void setWechatConfiguration(final JobConfiguration jobConfig) {
- jobConfig.getExtraConfigurations().add(WechatConfiguration.newBuilder("https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=key").build());
+ private static void setDingtalkProperties(final JobConfiguration jobConfig) {
+ jobConfig.getProps().setProperty(DingtalkPropertiesConstants.WEBHOOK, "https://oapi.dingtalk.com/robot/send?access_token=token");
+ jobConfig.getProps().setProperty(DingtalkPropertiesConstants.KEYWORD, "keyword");
+ jobConfig.getProps().setProperty(DingtalkPropertiesConstants.SECRET, "secret");
}
- private static void setEmailConfiguration(final JobConfiguration jobConfig) {
- jobConfig.getExtraConfigurations().add(EmailConfiguration.newBuilder("host", 465, "username", "password", "from@xxx.xx", "to1@xxx.xx,to2xxx.xx").build());
+ private static void setWechatProperties(final JobConfiguration jobConfig) {
+ jobConfig.getProps().setProperty(WechatPropertiesConstants.WEBHOOK, "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=key");
}
private static String buildScriptCommandLine() throws IOException {
diff --git a/examples/elasticjob-example-lite-spring/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/SpringMain.java b/examples/elasticjob-example-lite-spring/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/SpringMain.java
index 05a75f8..1c6ed63 100644
--- a/examples/elasticjob-example-lite-spring/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/SpringMain.java
+++ b/examples/elasticjob-example-lite-spring/src/main/java/org/apache/shardingsphere/elasticjob/lite/example/SpringMain.java
@@ -27,6 +27,6 @@ public final class SpringMain {
public static void main(final String[] args) {
// CHECKSTYLE:ON
EmbedZookeeperServer.start(EMBED_ZOOKEEPER_PORT);
- new ClassPathXmlApplicationContext("classpath:META-INF/applicationContext.xml");
+ new ClassPathXmlApplicationContext("classpath:META-INF/application-context.xml");
}
}
diff --git a/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/application-context.xml b/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/application-context.xml
new file mode 100644
index 0000000..7798d9f
--- /dev/null
+++ b/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/application-context.xml
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:context="http://www.springframework.org/schema/context"
+ xmlns:elasticjob="http://shardingsphere.apache.org/schema/elasticjob"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://www.springframework.org/schema/context
+ http://www.springframework.org/schema/context/spring-context.xsd
+ http://shardingsphere.apache.org/schema/elasticjob
+ http://shardingsphere.apache.org/schema/elasticjob/elasticjob.xsd
+ ">
+ <context:component-scan base-package="org.apache.shardingsphere.elasticjob.lite.example" />
+ <context:property-placeholder location="classpath:conf/*.properties"/>
+
+ <elasticjob:zookeeper id="regCenter" server-lists="${serverLists}" namespace="${namespace}"
+ base-sleep-time-milliseconds="${baseSleepTimeMilliseconds}"
+ max-sleep-time-milliseconds="${maxSleepTimeMilliseconds}" max-retries="${maxRetries}" />
+
+ <elasticjob:snapshot id="jobSnapshot" registry-center-ref="regCenter" dump-port="9999" />
+
+ <bean id="elasticJobTracingDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
+ <property name="driverClassName" value="${event.rdb.driver}" />
+ <property name="url" value="${event.rdb.url}" />
+ <property name="username" value="${event.rdb.username}" />
+ <property name="password" value="${event.rdb.password}" />
+ </bean>
+
+ <elasticjob:rdb-tracing id="elasticJobTrace" data-source-ref="elasticJobTracingDataSource" />
+
+ <bean id="simpleJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.SpringSimpleJob" />
+ <bean id="dataflowJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.dataflow.SpringDataflowJob" />
+
+ <elasticjob:job id="${simple.id}" job-ref="simpleJob" registry-center-ref="regCenter" tracing-ref="elasticJobTrace"
+ sharding-total-count="${simple.shardingTotalCount}" cron="${simple.cron}"
+ sharding-item-parameters="${simple.shardingItemParameters}"
+ monitor-execution="${simple.monitorExecution}" failover="${simple.failover}"
+ description="${simple.description}"
+ disabled="${simple.disabled}" overwrite="${simple.overwrite}" />
+
+ <elasticjob:job id="${dataflow.id}" job-ref="dataflowJob" registry-center-ref="regCenter"
+ sharding-total-count="${dataflow.shardingTotalCount}" cron="${dataflow.cron}"
+ sharding-item-parameters="${dataflow.shardingItemParameters}"
+ monitor-execution="${dataflow.monitorExecution}" failover="${dataflow.failover}"
+ max-time-diff-seconds="${dataflow.maxTimeDiffSeconds}" description="${dataflow.description}"
+ disabled="${dataflow.disabled}" overwrite="${dataflow.overwrite}">
+ <props>
+ <prop key="streaming.process">${dataflow.streamingProcess}</prop>
+ </props>
+ </elasticjob:job>
+
+ <!-- use absolute path to run script job -->
+ <!--<elasticjob:job id="${script.id}" registry-center-ref="regCenter" -->
+ <!--sharding-total-count="${script.shardingTotalCount}" cron="${script.cron}" sharding-item-parameters="${script.shardingItemParameters}" description="${script.description}" -->
+ <!--overwrite="${script.overwrite}">-->
+ <!--<props>-->
+ <!--<prop key="script.command.line">${script.scriptCommandLine}</prop>-->
+ <!--</props>-->
+ <!--</elasticjob:job>-->
+
+ <!-- use email error handler -->
+<!-- <bean id="occurErrorNoticeEmailJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob" />-->
+<!-- <elasticjob:job id="${occurErrorNoticeEmailJob.id}" job-ref="occurErrorNoticeEmailJob"-->
+<!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
+<!-- sharding-total-count="${occurErrorNoticeEmailJob.shardingTotalCount}"-->
+<!-- cron="${occurErrorNoticeEmailJob.cron}"-->
+<!-- sharding-item-parameters="${occurErrorNoticeEmailJob.shardingItemParameters}"-->
+<!-- monitor-execution="${occurErrorNoticeEmailJob.monitorExecution}"-->
+<!-- failover="${occurErrorNoticeEmailJob.failover}"-->
+<!-- job-error-handler-type="${occurErrorNoticeEmailJob.jobErrorHandlerType}"-->
+<!-- description="${occurErrorNoticeEmailJob.description}"-->
+<!-- disabled="${occurErrorNoticeEmailJob.disabled}" overwrite="${occurErrorNoticeEmailJob.overwrite}">-->
+<!-- <props>-->
+<!-- <prop key="email.host">localhost</prop>-->
+<!-- <prop key="email.port">465</prop>-->
+<!-- <prop key="email.username">user</prop>-->
+<!-- <prop key="email.password">xxx</prop>-->
+<!-- <prop key="email.from">from@xxx.com</prop>-->
+<!-- <prop key="email.to">to1@xxx.com,to2@xxx.com</prop>-->
+<!-- </props>-->
+<!-- </elasticjob:job>-->
+
+ <!-- use dingtalk error handler -->
+ <bean id="occurErrorNoticeDingtalkJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob" />
+<!-- <elasticjob:job id="${occurErrorNoticeDingtalkJob.id}" job-ref="occurErrorNoticeDingtalkJob"-->
+<!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
+<!-- sharding-total-count="${occurErrorNoticeDingtalkJob.shardingTotalCount}"-->
+<!-- cron="${occurErrorNoticeDingtalkJob.cron}"-->
+<!-- sharding-item-parameters="${occurErrorNoticeDingtalkJob.shardingItemParameters}"-->
+<!-- monitor-execution="${occurErrorNoticeDingtalkJob.monitorExecution}"-->
+<!-- failover="${occurErrorNoticeDingtalkJob.failover}"-->
+<!-- job-error-handler-type="${occurErrorNoticeDingtalkJob.jobErrorHandlerType}"-->
+<!-- description="${occurErrorNoticeDingtalkJob.description}"-->
+<!-- disabled="${occurErrorNoticeDingtalkJob.disabled}"-->
+<!-- overwrite="${occurErrorNoticeDingtalkJob.overwrite}">-->
+<!-- <props>-->
+<!-- <prop key="dingtalk.webhook">https://oapi.dingtalk.com/robot/send?access_token=token</prop>-->
+<!-- <prop key="dingtalk.keyword">keyword</prop>-->
+<!-- <prop key="dingtalk.secret">secret</prop>-->
+<!-- <prop key="dingtalk.connectTimeoutMillisecond">3000</prop>-->
+<!-- <prop key="dingtalk.readTimeoutMillisecond">5000</prop>-->
+<!-- </props>-->
+<!-- </elasticjob:job>-->
+
+ <!-- use wechat error handler -->
+<!-- <bean id="occurErrorNoticeWechatJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob" />-->
+<!-- <elasticjob:job id="${occurErrorNoticeWechatJob.id}" job-ref="occurErrorNoticeWechatJob"-->
+<!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
+<!-- sharding-total-count="${occurErrorNoticeWechatJob.shardingTotalCount}"-->
+<!-- cron="${occurErrorNoticeWechatJob.cron}"-->
+<!-- sharding-item-parameters="${occurErrorNoticeWechatJob.shardingItemParameters}"-->
+<!-- monitor-execution="${occurErrorNoticeWechatJob.monitorExecution}"-->
+<!-- failover="${occurErrorNoticeWechatJob.failover}"-->
+<!-- job-error-handler-type="${occurErrorNoticeWechatJob.jobErrorHandlerType}"-->
+<!-- description="${occurErrorNoticeWechatJob.description}"-->
+<!-- disabled="${occurErrorNoticeWechatJob.disabled}" overwrite="${occurErrorNoticeWechatJob.overwrite}">-->
+<!-- <props>-->
+<!-- <prop key="wechat.webhook">https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=key</prop>-->
+<!-- <prop key="wechat.connectTimeoutMillisecond">3000</prop>-->
+<!-- <prop key="wechat.readTimeoutMillisecond">5000</prop>-->
+<!-- </props>-->
+<!-- </elasticjob:job>-->
+</beans>
diff --git a/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/applicationContext.xml b/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/applicationContext.xml
deleted file mode 100644
index f41ddfa..0000000
--- a/examples/elasticjob-example-lite-spring/src/main/resources/META-INF/applicationContext.xml
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one or more
- ~ contributor license agreements. See the NOTICE file distributed with
- ~ this work for additional information regarding copyright ownership.
- ~ The ASF licenses this file to You under the Apache License, Version 2.0
- ~ (the "License"); you may not use this file except in compliance with
- ~ the License. You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
-
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:elasticjob="http://shardingsphere.apache.org/schema/elasticjob"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context.xsd
- http://shardingsphere.apache.org/schema/elasticjob
- http://shardingsphere.apache.org/schema/elasticjob/elasticjob.xsd
- ">
- <context:component-scan base-package="org.apache.shardingsphere.elasticjob.lite.example"/>
- <context:property-placeholder location="classpath:conf/*.properties"/>
-
- <elasticjob:zookeeper id="regCenter" server-lists="${serverLists}" namespace="${namespace}"
- base-sleep-time-milliseconds="${baseSleepTimeMilliseconds}"
- max-sleep-time-milliseconds="${maxSleepTimeMilliseconds}" max-retries="${maxRetries}"/>
-
- <elasticjob:snapshot id="jobSnapshot" registry-center-ref="regCenter" dump-port="9999"/>
-
- <bean id="elasticJobTracingDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
- <property name="driverClassName" value="${event.rdb.driver}"/>
- <property name="url" value="${event.rdb.url}"/>
- <property name="username" value="${event.rdb.username}"/>
- <property name="password" value="${event.rdb.password}"/>
- </bean>
-
- <elasticjob:rdb-tracing id="elasticJobTrace" data-source-ref="elasticJobTracingDataSource"/>
-
-
- <bean id="simpleJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.SpringSimpleJob"/>
- <bean id="dataflowJob" class="org.apache.shardingsphere.elasticjob.lite.example.job.dataflow.SpringDataflowJob"/>
-
- <elasticjob:job id="${simple.id}" job-ref="simpleJob" registry-center-ref="regCenter" tracing-ref="elasticJobTrace"
- sharding-total-count="${simple.shardingTotalCount}" cron="${simple.cron}"
- sharding-item-parameters="${simple.shardingItemParameters}"
- monitor-execution="${simple.monitorExecution}" failover="${simple.failover}"
- description="${simple.description}"
- disabled="${simple.disabled}" overwrite="${simple.overwrite}"/>
-
- <elasticjob:job id="${dataflow.id}" job-ref="dataflowJob" registry-center-ref="regCenter"
- sharding-total-count="${dataflow.shardingTotalCount}" cron="${dataflow.cron}"
- sharding-item-parameters="${dataflow.shardingItemParameters}"
- monitor-execution="${dataflow.monitorExecution}" failover="${dataflow.failover}"
- max-time-diff-seconds="${dataflow.maxTimeDiffSeconds}" description="${dataflow.description}"
- disabled="${dataflow.disabled}" overwrite="${dataflow.overwrite}">
- <props>
- <prop key="streaming.process">${dataflow.streamingProcess}</prop>
- </props>
- </elasticjob:job>
-
- <!-- use absolute path to run script job -->
- <!--<elasticjob:job id="${script.id}" registry-center-ref="regCenter" -->
- <!--sharding-total-count="${script.shardingTotalCount}" cron="${script.cron}" sharding-item-parameters="${script.shardingItemParameters}" description="${script.description}" -->
- <!--overwrite="${script.overwrite}">-->
- <!--<props>-->
- <!--<prop key="script.command.line">${script.scriptCommandLine}</prop>-->
- <!--</props>-->
- <!--</elasticjob:job>-->
-
- <!-- use dingtalk error handler -->
- <!-- <elasticjob:dingtalk-error-handler id="dingtalkErrorHandlerConfig"-->
- <!-- webhook="https://oapi.dingtalk.com/robot/send?access_token=token"-->
- <!-- keyword="keyword" secret="secret"-->
- <!-- connect-timeout-millisecond="3000"-->
- <!-- read-timeout-millisecond="5000"/>-->
- <!-- -->
- <!-- <bean id="occurErrorNoticeDingtalkJob"-->
- <!-- class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob"/>-->
-
- <!-- <elasticjob:job id="${occurErrorNoticeDingtalkJob.id}" job-ref="occurErrorNoticeDingtalkJob"-->
- <!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
- <!-- sharding-total-count="${occurErrorNoticeDingtalkJob.shardingTotalCount}"-->
- <!-- cron="${occurErrorNoticeDingtalkJob.cron}"-->
- <!-- sharding-item-parameters="${occurErrorNoticeDingtalkJob.shardingItemParameters}"-->
- <!-- monitor-execution="${occurErrorNoticeDingtalkJob.monitorExecution}"-->
- <!-- failover="${occurErrorNoticeDingtalkJob.failover}"-->
- <!-- description="${occurErrorNoticeDingtalkJob.description}"-->
- <!-- job-error-handler-type="${occurErrorNoticeDingtalkJob.jobErrorHandlerType}"-->
- <!-- error-handler-config-ref="dingtalkErrorHandlerConfig"-->
- <!-- disabled="${occurErrorNoticeDingtalkJob.disabled}"-->
- <!-- overwrite="${occurErrorNoticeDingtalkJob.overwrite}" />-->
-
- <!-- use wechat error handler -->
- <!-- <bean id="occurErrorNoticeWechatJob"-->
- <!-- class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob"/>-->
-
- <!-- <elasticjob:wechat-error-handler id="wechatErrorHandlerConfig"-->
- <!-- webhook="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=key"-->
- <!-- connect-timeout-millisecond="3000"-->
- <!-- read-timeout-millisecond="5000"/>-->
-
- <!-- <elasticjob:job id="${occurErrorNoticeWechatJob.id}" job-ref="occurErrorNoticeWechatJob"-->
- <!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
- <!-- sharding-total-count="${occurErrorNoticeWechatJob.shardingTotalCount}"-->
- <!-- cron="${occurErrorNoticeWechatJob.cron}"-->
- <!-- sharding-item-parameters="${occurErrorNoticeWechatJob.shardingItemParameters}"-->
- <!-- monitor-execution="${occurErrorNoticeWechatJob.monitorExecution}"-->
- <!-- failover="${occurErrorNoticeWechatJob.failover}"-->
- <!-- description="${occurErrorNoticeWechatJob.description}"-->
- <!-- job-error-handler-type="${occurErrorNoticeWechatJob.jobErrorHandlerType}"-->
- <!-- error-handler-config-ref="wechatErrorHandlerConfig"-->
- <!-- disabled="${occurErrorNoticeWechatJob.disabled}" overwrite="${occurErrorNoticeWechatJob.overwrite}" />-->
-
- <!-- use email error handler -->
- <!-- <bean id="occurErrorNoticeEmailJob"-->
- <!-- class="org.apache.shardingsphere.elasticjob.lite.example.job.simple.JavaOccurErrorJob"/>-->
-
- <!-- <elasticjob:email-error-handler id="emailErrorHandlerConfig" host="host" port="465" username="username"-->
- <!-- password="password" use-ssl="true" subject="ElasticJob error message"-->
- <!-- from="from@xxx.com" to="to1@xxx.com,to2@xxx.com"-->
- <!-- cc="cc@xxx.com" bcc="bcc@xxx.com"-->
- <!-- debug="false"/>-->
-
- <!-- <elasticjob:job id="${occurErrorNoticeEmailJob.id}" job-ref="occurErrorNoticeEmailJob"-->
- <!-- registry-center-ref="regCenter" tracing-ref="elasticJobTrace"-->
- <!-- sharding-total-count="${occurErrorNoticeEmailJob.shardingTotalCount}"-->
- <!-- cron="${occurErrorNoticeEmailJob.cron}"-->
- <!-- sharding-item-parameters="${occurErrorNoticeEmailJob.shardingItemParameters}"-->
- <!-- monitor-execution="${occurErrorNoticeEmailJob.monitorExecution}"-->
- <!-- failover="${occurErrorNoticeEmailJob.failover}"-->
- <!-- description="${occurErrorNoticeEmailJob.description}"-->
- <!-- job-error-handler-type="${occurErrorNoticeEmailJob.jobErrorHandlerType}"-->
- <!-- error-handler-config-ref="emailErrorHandlerConfig"-->
- <!-- disabled="${occurErrorNoticeEmailJob.disabled}" overwrite="${occurErrorNoticeEmailJob.overwrite}" />-->
-</beans>