diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
index 16a4799..3006362 100644
--- a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
@@ -24,9 +24,11 @@
private static Logger logger = LoggerFactory.getLogger(I18nUtil.class);
private static Properties prop = null;
+ private static long lastCacheTim = 0L;
+
public static Properties loadI18nProp(){
- if (prop != null) {
- //return prop;
+ if (prop != null && (System.currentTimeMillis()-lastCacheTim)<3*1000) {
+ return prop;
}
try {
// bild i18n prop
@@ -38,9 +40,11 @@
Resource resource = new ClassPathResource(i18nFile);
EncodedResource encodedResource = new EncodedResource(resource,"UTF-8");
prop = PropertiesLoaderUtils.loadProperties(encodedResource);
+ lastCacheTim = System.currentTimeMillis();
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
+ logger.warn("---111---");
return prop;
}
diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
index 16a4799..3006362 100644
--- a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
@@ -24,9 +24,11 @@
private static Logger logger = LoggerFactory.getLogger(I18nUtil.class);
private static Properties prop = null;
+ private static long lastCacheTim = 0L;
+
public static Properties loadI18nProp(){
- if (prop != null) {
- //return prop;
+ if (prop != null && (System.currentTimeMillis()-lastCacheTim)<3*1000) {
+ return prop;
}
try {
// bild i18n prop
@@ -38,9 +40,11 @@
Resource resource = new ClassPathResource(i18nFile);
EncodedResource encodedResource = new EncodedResource(resource,"UTF-8");
prop = PropertiesLoaderUtils.loadProperties(encodedResource);
+ lastCacheTim = System.currentTimeMillis();
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
+ logger.warn("---111---");
return prop;
}
diff --git a/xxl-job-admin/src/main/resources/i18n/message.properties b/xxl-job-admin/src/main/resources/i18n/message.properties
index 4bcff70..11136a1 100644
--- a/xxl-job-admin/src/main/resources/i18n/message.properties
+++ b/xxl-job-admin/src/main/resources/i18n/message.properties
@@ -108,7 +108,7 @@
jobinfo_field_jobdesc=任务描述
jobinfo_field_gluetype=运行模式
jobinfo_field_executorparam=任务参数
-jobinfo_field_cron_unvalid=请输入格式正确的Cron
+jobinfo_field_cron_unvalid=Cron格式非法
jobinfo_field_author=负责人
jobinfo_field_alarmemail=报警邮件
jobinfo_field_alarmemail_placeholder=请输入报警邮件,多个邮件地址则逗号分隔
diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
index 16a4799..3006362 100644
--- a/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
+++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/I18nUtil.java
@@ -24,9 +24,11 @@
private static Logger logger = LoggerFactory.getLogger(I18nUtil.class);
private static Properties prop = null;
+ private static long lastCacheTim = 0L;
+
public static Properties loadI18nProp(){
- if (prop != null) {
- //return prop;
+ if (prop != null && (System.currentTimeMillis()-lastCacheTim)<3*1000) {
+ return prop;
}
try {
// bild i18n prop
@@ -38,9 +40,11 @@
Resource resource = new ClassPathResource(i18nFile);
EncodedResource encodedResource = new EncodedResource(resource,"UTF-8");
prop = PropertiesLoaderUtils.loadProperties(encodedResource);
+ lastCacheTim = System.currentTimeMillis();
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
+ logger.warn("---111---");
return prop;
}
diff --git a/xxl-job-admin/src/main/resources/i18n/message.properties b/xxl-job-admin/src/main/resources/i18n/message.properties
index 4bcff70..11136a1 100644
--- a/xxl-job-admin/src/main/resources/i18n/message.properties
+++ b/xxl-job-admin/src/main/resources/i18n/message.properties
@@ -108,7 +108,7 @@
jobinfo_field_jobdesc=任务描述
jobinfo_field_gluetype=运行模式
jobinfo_field_executorparam=任务参数
-jobinfo_field_cron_unvalid=请输入格式正确的Cron
+jobinfo_field_cron_unvalid=Cron格式非法
jobinfo_field_author=负责人
jobinfo_field_alarmemail=报警邮件
jobinfo_field_alarmemail_placeholder=请输入报警邮件,多个邮件地址则逗号分隔
diff --git a/xxl-job-admin/src/main/resources/i18n/message_en.properties b/xxl-job-admin/src/main/resources/i18n/message_en.properties
index 9bf6dc1..32759ab 100644
--- a/xxl-job-admin/src/main/resources/i18n/message_en.properties
+++ b/xxl-job-admin/src/main/resources/i18n/message_en.properties
@@ -1,229 +1,229 @@
admin_name=Job Scheduling Center
admin_name_full=Distributed Task Scheduling Platform XXL-JOB
-admin_version=1.9.1�����հ汾��
+admin_version=1.9.1(SNAPSHOT)
## system
-system_tips=ϵͳ��ʾ
-system_ok=ȷ��
-system_close=�ر�
-system_save=����
-system_cancel=ȡ��
-system_search=����
-system_status=״̬
-system_opt=����
-system_please_input=������
-system_please_choose=��ѡ��
-system_success=�ɹ�
-system_fail=ʧ��
-system_add_suc=�����ɹ�
-system_add_fail=����ʧ��
-system_update_suc=���³ɹ�
-system_update_fail=����ʧ��
-system_all=ȫ��
-system_api_error=�ӿ��쳣
-system_show=�鿴
-system_empty=��
-system_opt_suc=�����ɹ�
-system_opt_fail=����ʧ��
-system_opt_edit=�༭
-system_opt_del=ɾ��
-system_unvalid=�Ƿ�
-system_not_found=������
+system_tips=System message
+system_ok=Confirm
+system_close=Close
+system_save=Save
+system_cancel=Cancel
+system_search=Search
+system_status=Status
+system_opt=Operate
+system_please_input=please input
+system_please_choose=please choose
+system_success=success
+system_fail=fail
+system_add_suc=add success
+system_add_fail=add fail
+system_update_suc=update success
+system_update_fail=update fail
+system_all=All
+system_api_error=net error
+system_show=Show
+system_empty=Empty
+system_opt_suc=operate success
+system_opt_fail=operate fail
+system_opt_edit=Edit
+system_opt_del=Delete
+system_unvalid=illegal
+system_not_found=not exist
## daterangepicker
-daterangepicker_ranges_recent_hour=���һСʱ
-daterangepicker_ranges_today=����
-daterangepicker_ranges_yesterday=����
-daterangepicker_ranges_this_month=����
-daterangepicker_ranges_last_month=�ϸ���
-daterangepicker_ranges_recent_week=���һ��
-daterangepicker_ranges_recent_month=���һ��
-daterangepicker_custom_name=�Զ���
-daterangepicker_custom_starttime=��ʼʱ��
-daterangepicker_custom_endtime=����ʱ��
-daterangepicker_custom_daysofweek=��,һ,��,��,��,��,��
-daterangepicker_custom_monthnames=һ��,����,����,����,����,����,����,����,����,ʮ��,ʮһ��,ʮ����
+daterangepicker_ranges_recent_hour=recent one hour
+daterangepicker_ranges_today=today
+daterangepicker_ranges_yesterday=yesterday
+daterangepicker_ranges_this_month=this month
+daterangepicker_ranges_last_month=last month
+daterangepicker_ranges_recent_week=recent one week
+daterangepicker_ranges_recent_month=recent one month
+daterangepicker_custom_name=custom
+daterangepicker_custom_starttime=start time
+daterangepicker_custom_endtime=end time
+daterangepicker_custom_daysofweek=Sun,Mon,Tue,Wed,Thu,Fri,Sat
+daterangepicker_custom_monthnames=Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec
## dataTable
-dataTable_sProcessing=������...
-dataTable_sLengthMenu=ÿҳ _MENU_ ����¼
-dataTable_sZeroRecords=û��ƥ����
-dataTable_sInfo=�� _PAGE_ ҳ ( �ܹ� _PAGES_ ҳ��_TOTAL_ ����¼ )
-dataTable_sInfoEmpty=��¼
-dataTable_sInfoFiltered=(�� _MAX_ ��������)
-dataTable_sSearch=����
-dataTable_sEmptyTable=����������
-dataTable_sLoadingRecords=������...
-dataTable_sFirst=��ҳ
-dataTable_sPrevious=��ҳ
-dataTable_sNext=��ҳ
-dataTable_sLast=ĩҳ
-dataTable_sSortAscending=: �����������
-dataTable_sSortDescending=: �Խ������д���
+dataTable_sProcessing=processing...
+dataTable_sLengthMenu= _MENU_ records per page
+dataTable_sZeroRecords=No matching results
+dataTable_sInfo=page _PAGE_ ( Total _PAGES_ pages,_TOTAL_ records )
+dataTable_sInfoEmpty=No Record
+dataTable_sInfoFiltered=(Filtered by _MAX_ results)
+dataTable_sSearch=Search
+dataTable_sEmptyTable=Table data is empty
+dataTable_sLoadingRecords=Loading...
+dataTable_sFirst=FIRST PAGE
+dataTable_sPrevious=Previous Page
+dataTable_sNext=Next Page
+dataTable_sLast=LAST PAGE
+dataTable_sSortAscending=: Rank this column in ascending order
+dataTable_sSortDescending=: Rank this column in descending order
## login
login_btn=Login
login_remember_me=Remember Me
-login_username_placeholder=Please input username
-login_password_placeholder=Please input password
-login_username_empty=�������¼�˺�
-login_username_lt_5=��¼�˺Ų�Ӧ����5λ
-login_password_empty=�������¼����
-login_password_lt_5=��¼���벻Ӧ����5λ
-login_success=��¼�ɹ�
-login_fail=��¼ʧ��
-login_param_empty=�˺Ż�����Ϊ��
-login_param_unvalid=�˺Ż��������
+login_username_placeholder=Please enter username
+login_password_placeholder=Please enter password
+login_username_empty=Please enter username
+login_username_lt_5=Username length should not be less than 5
+login_password_empty=Please enter password
+login_password_lt_5=Password length should not be less than 5
+login_success=Login success
+login_fail=Login fail
+login_param_empty=Username or password is empty
+login_param_unvalid=Username or password error
## logout
-logout_btn=ע��
-logout_confirm=ȷ��ע����¼?
-logout_success=ע���ɹ�
-logout_fail=ע��ʧ��
+logout_btn=Logout
+logout_confirm=Confirm logout?
+logout_success=Logout success
+logout_fail=Logout fail
## dashboard
-job_dashboard_name=�����
-job_dashboard_job_num=��������
-job_dashboard_job_num_tip=�������������������
-job_dashboard_trigger_num=���ȴ���
-job_dashboard_trigger_num_tip=�������Ĵ����ĵ��ȴ���
-job_dashboard_jobgroup_num=ִ��������
-job_dashboard_jobgroup_num_tip=�����������ߵ�ִ������������
-job_dashboard_report=���ȱ���
-job_dashboard_report_loaddata_fail=���ȱ������ݼ����쳣
-job_dashboard_date_report=���ڷֲ�ͼ
-job_dashboard_date_report_suc_count=�ɹ����ȴ���
-job_dashboard_date_report_fail_count=ʧ�ܵ��ȴ���
-job_dashboard_rate_report=�ɹ�����ͼ
-job_dashboard_rate_report_suc_count=�ɹ����ȴ���
-job_dashboard_rate_report_fail_count=ʧ�ܵ��ȴ���
+job_dashboard_name=Run report
+job_dashboard_job_num=Job number
+job_dashboard_job_num_tip=The number of tasks running in the scheduling center
+job_dashboard_trigger_num=trigger number
+job_dashboard_trigger_num_tip=The number of trigger record scheduled by the scheduling center
+job_dashboard_jobgroup_num=Executor number
+job_dashboard_jobgroup_num_tip=The number of online executor machines perceived by the scheduling center
+job_dashboard_report=Scheduling report
+job_dashboard_report_loaddata_fail=Scheduling report load data error
+job_dashboard_date_report=Date distribution
+job_dashboard_date_report_suc_count=Successful scheduling number
+job_dashboard_date_report_fail_count=Fail scheduling number
+job_dashboard_rate_report=Percentage distribution
+job_dashboard_rate_report_suc_count=Successful scheduling percentage
+job_dashboard_rate_report_fail_count=Fail scheduling percentage
## job info
-jobinfo_name=�������
-jobinfo_job=����
-jobinfo_field_add=��������
-jobinfo_field_update=��������
-jobinfo_field_id=����ID
-jobinfo_field_jobgroup=ִ����
-jobinfo_field_jobdesc=��������
-jobinfo_field_gluetype=����ģʽ
-jobinfo_field_executorparam=�������
-jobinfo_field_cron_unvalid=�������ʽ��ȷ��Cron
-jobinfo_field_author=������
-jobinfo_field_alarmemail=�����ʼ�
-jobinfo_field_alarmemail_placeholder=�����뱨���ʼ�������ʼ���ַ�ŷָ�
-jobinfo_field_executorRouteStrategy=·�ɲ���
-jobinfo_field_childJobId=������ID
-jobinfo_field_childJobId_limit=������ID({0})�����븸�����ظ�
-jobinfo_field_childJobId_placeholder=�����������������ID,����ڶ���ŷָ�
-jobinfo_field_executorBlockStrategy=�����������
-jobinfo_field_executorFailStrategy=ʧ�ܴ������
-jobinfo_script_location=�ű�λ��
-jobinfo_shard_index=��Ƭ���
-jobinfo_shard_total=��Ƭ����
-jobinfo_opt_pause=��ͣ
-jobinfo_opt_resume=�ָ�
-jobinfo_opt_log=��־
-jobinfo_opt_run=ִ��
-jobinfo_glue_remark=Դ�뱸ע
-jobinfo_glue_remark_limit=Դ�뱸ע��������Ϊ4~100
-jobinfo_glue_rollback=�汾����
-jobinfo_glue_jobid_unvalid=����ID�Ƿ�
-jobinfo_glue_gluetype_unvalid=�������GLUEģʽ
+jobinfo_name=Job Manage
+jobinfo_job=Job
+jobinfo_field_add=Add Job
+jobinfo_field_update=Edit Job
+jobinfo_field_id=Job ID
+jobinfo_field_jobgroup=Executor
+jobinfo_field_jobdesc=Job description
+jobinfo_field_gluetype=GLUE Type
+jobinfo_field_executorparam=Param
+jobinfo_field_cron_unvalid=The Cron is illegal
+jobinfo_field_author=Author
+jobinfo_field_alarmemail=Alarm email
+jobinfo_field_alarmemail_placeholder=Please enter alarm mail, if there are more than one comma separated
+jobinfo_field_executorRouteStrategy=Route Strategy
+jobinfo_field_childJobId=Child Job ID
+jobinfo_field_childJobId_limit=Child job ID({0}) cannot be duplicated with the parent job.
+jobinfo_field_childJobId_placeholder=Please enter the Child job ID, if there are more than one comma separated
+jobinfo_field_executorBlockStrategy=Block Strategy
+jobinfo_field_executorFailStrategy=Fail Strategy
+jobinfo_script_location=Script location
+jobinfo_shard_index=Shard index
+jobinfo_shard_total=Shard total
+jobinfo_opt_pause=Pause
+jobinfo_opt_resume=Resume
+jobinfo_opt_log=Log
+jobinfo_opt_run=Run
+jobinfo_glue_remark=Resource Remark
+jobinfo_glue_remark_limit=Resource Remark length is limited to 4~100
+jobinfo_glue_rollback=Version Backtrack
+jobinfo_glue_jobid_unvalid=Job ID is illegal
+jobinfo_glue_gluetype_unvalid=The job is not GLUE Type
## job log
-joblog_name=������־
-joblog_status=״̬
-joblog_status_all=ȫ��
-joblog_status_suc=�ɹ�
-joblog_status_fail=ʧ��
-joblog_status_running=������
-joblog_field_triggerTime=����ʱ��
-joblog_field_triggerCode=���Ƚ��
-joblog_field_triggerMsg=���ȱ�ע
-joblog_field_handleTime=ִ��ʱ��
-joblog_field_handleCode=ִ�н��
-joblog_field_handleMsg=ִ�б�ע
-joblog_field_executorAddress=ִ������ַ
-joblog_clean=����
-joblog_clean_log=��־����
-joblog_clean_type=����ʽ
-joblog_clean_type_1=����һ����֮ǰ��־����
-joblog_clean_type_2=����������֮ǰ��־����
-joblog_clean_type_3=����������֮ǰ��־����
-joblog_clean_type_4=����һ��֮ǰ��־����
-joblog_clean_type_5=����һǧ����ǰ��־����
-joblog_clean_type_6=����һ������ǰ��־����
-joblog_clean_type_7=������������ǰ��־����
-joblog_clean_type_8=����ʮ������ǰ��־����
-joblog_clean_type_9=����������־����
-joblog_clean_type_unvalid=�������Ͳ����쳣
-joblog_handleCode_200=�ɹ�
-joblog_handleCode_500=ʧ��
-joblog_handleCode_501=ʧ������
-joblog_kill_log=��ֹ����
-joblog_kill_log_limit=����ʧ�ܣ�����ֹ��־
-joblog_kill_log_byman=��Ϊ����������ֹ
-joblog_rolling_log=ִ����־
-joblog_rolling_log_refresh=ˢ��
-joblog_rolling_log_triggerfail=���������ʧ�ܣ����鿴ִ����־
-joblog_rolling_log_failoften=��ֹ����Rolling��־,����ʧ�ܴ���������,��ˢ��ҳ�����¼�����־
-joblog_logid_unvalid=��־ID�Ƿ�
+joblog_name=Trigger Log
+joblog_status=Status
+joblog_status_all=All
+joblog_status_suc=Success
+joblog_status_fail=Fail
+joblog_status_running=Running
+joblog_field_triggerTime=Trigger Time
+joblog_field_triggerCode=Trigger Result
+joblog_field_triggerMsg=Trigger Msg
+joblog_field_handleTime=Handle Time
+joblog_field_handleCode=Handle Result
+joblog_field_handleMsg=Trigger Msg
+joblog_field_executorAddress=Executor Address
+joblog_clean=Clean
+joblog_clean_log=Clean Log
+joblog_clean_type=Clean Type
+joblog_clean_type_1=Clean up log data a month ago
+joblog_clean_type_2=Clean up log data three month ago
+joblog_clean_type_3=Clean up log data six month ago
+joblog_clean_type_4=Clean up log data a year ago
+joblog_clean_type_5=Clean up log data a thousand record ago
+joblog_clean_type_6=Clean up log data ten thousand record ago
+joblog_clean_type_7=Clean up log data thirty thousand record ago
+joblog_clean_type_8=Clean up log data hundred thousand record ago
+joblog_clean_type_9=Clean up all log data
+joblog_clean_type_unvalid=Clean type is illegal
+joblog_handleCode_200=Success
+joblog_handleCode_500=Fail
+joblog_handleCode_501=Fail retry
+joblog_kill_log=Kill Job
+joblog_kill_log_limit=Trigger Fail, can not kill job
+joblog_kill_log_byman=Manual operation to active kill job
+joblog_rolling_log=Rolling log
+joblog_rolling_log_refresh=Refresh
+joblog_rolling_log_triggerfail=The job trigger fail, can not view the rolling log
+joblog_rolling_log_failoften=The request for the Rolling log is terminated, the number of failed requests exceeds the limit, Reload the log on the refresh page
+joblog_logid_unvalid=Log ID is illegal
## job group
-jobgroup_name=ִ��������
-jobgroup_list=ִ�����б�
-jobgroup_add=����ִ����
-jobgroup_edit=�༭ִ����
-jobgroup_del=ɾ��ִ����
-jobgroup_field_order=����
-jobgroup_field_title=����
-jobgroup_field_addressType=ע�᷽ʽ
-jobgroup_field_addressType_0=�Զ�ע��
-jobgroup_field_addressType_1=�ֶ�¼��
-jobgroup_field_addressType_limit=�ֶ�¼��ע�᷽ʽ��������ַ����Ϊ��
-jobgroup_field_registryList=������ַ
-jobgroup_field_registryList_unvalid=������ַ��ʽ�Ƿ�
-jobgroup_field_registryList_placeholder=������ִ������ַ�б����ַ���ŷָ�
-jobgroup_field_appName_limit=������Сд��ĸ��ͷ����Сд��ĸ�����ֺ��л������
-jobgroup_field_appName_length=AppName��������Ϊ4~64
-jobgroup_field_title_length=���Ƴ�������Ϊ4~12
-jobgroup_field_order_digits=����������
-jobgroup_field_orderrange=ȡֵ��ΧΪ1~1000
-jobgroup_del_limit_0=�ܾ�ɾ������ִ����ʹ����
-jobgroup_del_limit_1=�ܾ�ɾ��, ϵͳ���ٱ���һ��ִ����
+jobgroup_name=执行器管理
+jobgroup_list=执行器列表
+jobgroup_add=新增执行器
+jobgroup_edit=编辑执行器
+jobgroup_del=删除执行器
+jobgroup_field_order=排序
+jobgroup_field_title=名称
+jobgroup_field_addressType=注册方式
+jobgroup_field_addressType_0=自动注册
+jobgroup_field_addressType_1=手动录入
+jobgroup_field_addressType_limit=手动录入注册方式,机器地址不可为空
+jobgroup_field_registryList=机器地址
+jobgroup_field_registryList_unvalid=机器地址格式非法
+jobgroup_field_registryList_placeholder=请输入执行器地址列表,多地址逗号分隔
+jobgroup_field_appName_limit=限制以小写字母开头,由小写字母、数字和中划线组成
+jobgroup_field_appName_length=AppName长度限制为4~64
+jobgroup_field_title_length=名称长度限制为4~12
+jobgroup_field_order_digits=请输入整数
+jobgroup_field_orderrange=取值范围为1~1000
+jobgroup_del_limit_0=拒绝删除,该执行器使用中
+jobgroup_del_limit_1=拒绝删除, 系统至少保留一个执行器
## job conf
-jobconf_fail_alarm=ʧ�ܸ澯
-jobconf_fail_retry=ʧ������
-jobconf_route_first=��һ��
-jobconf_route_last=���һ��
-jobconf_route_round=��ѯ
-jobconf_route_random=���
-jobconf_route_consistenthash=һ����HASH
-jobconf_route_lfu=�����ʹ��
-jobconf_route_lru=������δʹ��
-jobconf_route_failover=����ת��
-jobconf_route_busyover=æµת��
-jobconf_route_shard=��Ƭ�㲥
-jobconf_idleBeat=����
-jobconf_beat=�������
-jobconf_monitor=�������ļ�ر���
-jobconf_monitor_detail=��ظ澯��ϸ
-jobconf_monitor_alarm_title=�澯����
-jobconf_monitor_alarm_type=����ʧ��
-jobconf_trigger_admin_adress=���Ȼ���
-jobconf_trigger_exe_regtype=ִ����-ע�᷽ʽ
-jobconf_trigger_exe_regaddress=ִ����-��ַ�б�
-jobconf_trigger_address_empty=����ʧ�ܣ�ִ������ַΪ��
-jobconf_trigger_run=��������
-jobconf_trigger_child_run=����������
-jobconf_trigger_fail_retry=����ʧ������
-jobconf_exe_fail_retry=ִ��ʧ������
-jobconf_callback_child_msg1={0}/{1} [����ID={2}], ����{3}, ������ע: {4}
-jobconf_callback_child_msg2={0}/{1} [����ID={2}], ����ʧ��, ������ע: ����ID��ʽ����
-jobconf_callback_msg1=����{0}, ������ע: {1}
+jobconf_fail_alarm=失败告警
+jobconf_fail_retry=失败重试
+jobconf_route_first=第一个
+jobconf_route_last=最后一个
+jobconf_route_round=轮询
+jobconf_route_random=随机
+jobconf_route_consistenthash=一致性HASH
+jobconf_route_lfu=最不经常使用
+jobconf_route_lru=最近最久未使用
+jobconf_route_failover=故障转移
+jobconf_route_busyover=忙碌转移
+jobconf_route_shard=分片广播
+jobconf_idleBeat=空闲检测
+jobconf_beat=心跳检测
+jobconf_monitor=调度中心监控报警
+jobconf_monitor_detail=监控告警明细
+jobconf_monitor_alarm_title=告警类型
+jobconf_monitor_alarm_type=调度失败
+jobconf_trigger_admin_adress=调度机器
+jobconf_trigger_exe_regtype=执行器-注册方式
+jobconf_trigger_exe_regaddress=执行器-地址列表
+jobconf_trigger_address_empty=调度失败:执行器地址为空
+jobconf_trigger_run=触发调度
+jobconf_trigger_child_run=触发子任务
+jobconf_trigger_fail_retry=调度失败重试
+jobconf_exe_fail_retry=执行失败重试
+jobconf_callback_child_msg1={0}/{1} [任务ID={2}], 触发{3}, 触发备注: {4}
+jobconf_callback_child_msg2={0}/{1} [任务ID={2}], 触发失败, 触发备注: 任务ID格式错误
+jobconf_callback_msg1=触发{0}, 触发备注: {1}
## help
-job_help=ʹ�ý̳�
-job_help_document=�ٷ��ĵ�
\ No newline at end of file
+job_help=使用教程
+job_help_document=官方文档
\ No newline at end of file