From 3dd9c3eaa9a230c9f0e1b254384fbf544bcd8f19 Mon Sep 17 00:00:00 2001 From: mnianqi Date: Wed, 6 May 2026 17:43:12 +0800 Subject: [PATCH 1/3] feat: TAP-11422 add engine offline alarm --- packages/business/src/locale/lang/en.js | 2 ++ packages/business/src/locale/lang/zh-CN.js | 2 ++ packages/business/src/locale/lang/zh-TW.js | 2 ++ packages/business/src/views/setting/AlarmSetting.vue | 6 ++++++ 4 files changed, 12 insertions(+) diff --git a/packages/business/src/locale/lang/en.js b/packages/business/src/locale/lang/en.js index e2859aea9..4b4094c69 100644 --- a/packages/business/src/locale/lang/en.js +++ b/packages/business/src/locale/lang/en.js @@ -748,6 +748,8 @@ export default { 'When the task encounters an error', packages_business_setting_alarmnotification_dangrenwustop: 'When the Agent service stops', + packages_business_setting_alarmnotification_dangyinqinglixian: 'When the engine is offline', + packages_business_setting_alarmnotification_dangyinqinghuifu: 'When the engine is recovered', packages_business_setting_alarmnotification_api_server_worker_delay_p50_warn: 'When APIServer worker P50 per minute exceeding threshold', packages_business_setting_alarmnotification_api_server_worker_delay_p95_warn: diff --git a/packages/business/src/locale/lang/zh-CN.js b/packages/business/src/locale/lang/zh-CN.js index e348e8e40..5e2e5a39a 100644 --- a/packages/business/src/locale/lang/zh-CN.js +++ b/packages/business/src/locale/lang/zh-CN.js @@ -675,6 +675,8 @@ export default { '当任务遇到错误时', packages_business_setting_alarmnotification_dangrenwustop: 'Agent服务停止时', packages_business_setting_alarmnotification_dangrenwuuP: 'Agent服务启动时', + packages_business_setting_alarmnotification_dangyinqinglixian: '当引擎离线时', + packages_business_setting_alarmnotification_dangyinqinghuifu: '当引擎恢复时', packages_business_setting_alarmnotification_api_server_worker_delay_p50_warn: '当APIServer工作进程每分钟请求延时P50超过阈值时', packages_business_setting_alarmnotification_api_server_worker_delay_p95_warn: diff --git a/packages/business/src/locale/lang/zh-TW.js b/packages/business/src/locale/lang/zh-TW.js index d3d1f83c5..96d252d74 100644 --- a/packages/business/src/locale/lang/zh-TW.js +++ b/packages/business/src/locale/lang/zh-TW.js @@ -713,6 +713,8 @@ export default { packages_business_setting_alarmnotification_api_server_worker_memory_usage_alter: '當任一API Server的工作行程記憶體使用量超過通知閾值時', packages_business_setting_alarmnotification_dangrenwuuP: 'Agent服务啓動時', + packages_business_setting_alarmnotification_dangyinqinglixian: '當引擎離線時', + packages_business_setting_alarmnotification_dangyinqinghuifu: '當引擎恢復時', packages_business_setting_alarmnotification_msshigaojing: ' 時告警', packages_business_setting_alarmnotification_lianxu: '連續', packages_business_setting_alarmnotification_cichugaojinggui: diff --git a/packages/business/src/views/setting/AlarmSetting.vue b/packages/business/src/views/setting/AlarmSetting.vue index 752fd141f..a570538c0 100644 --- a/packages/business/src/views/setting/AlarmSetting.vue +++ b/packages/business/src/views/setting/AlarmSetting.vue @@ -166,6 +166,12 @@ const keyMapping = reactive({ SYSTEM_FLOW_EGINGE_UP: t( 'packages_business_setting_alarmnotification_dangrenwuuP', ), + ENGINE_OFFLINE: t( + 'packages_business_setting_alarmnotification_dangyinqinglixian', + ), + ENGINE_ONLINE: t( + 'packages_business_setting_alarmnotification_dangyinqinghuifu', + ), TASK_INSPECT_DIFFERENCE: t('packages_dag_task_inspect_difference_alarm'), TASK_RETRY_WARN: t('packages_dag_task_retry_alert'), API_SERVER_WORKER_DELAY_P50_WARN: t( From c67f490a53f26e282804ee18111ad11618ad758b Mon Sep 17 00:00:00 2001 From: mnianqi Date: Wed, 6 May 2026 18:28:36 +0800 Subject: [PATCH 2/3] feat: TAP-11422 add engine offline alarm --- packages/business/src/locale/lang/en.js | 4 ++-- packages/business/src/locale/lang/zh-CN.js | 4 ++-- packages/business/src/locale/lang/zh-TW.js | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/business/src/locale/lang/en.js b/packages/business/src/locale/lang/en.js index 4b4094c69..ae5ee3216 100644 --- a/packages/business/src/locale/lang/en.js +++ b/packages/business/src/locale/lang/en.js @@ -748,8 +748,8 @@ export default { 'When the task encounters an error', packages_business_setting_alarmnotification_dangrenwustop: 'When the Agent service stops', - packages_business_setting_alarmnotification_dangyinqinglixian: 'When the engine is offline', - packages_business_setting_alarmnotification_dangyinqinghuifu: 'When the engine is recovered', + packages_business_setting_alarmnotification_dangyinqinglixian: 'When the engine stops', + packages_business_setting_alarmnotification_dangyinqinghuifu: 'When the engine starts', packages_business_setting_alarmnotification_api_server_worker_delay_p50_warn: 'When APIServer worker P50 per minute exceeding threshold', packages_business_setting_alarmnotification_api_server_worker_delay_p95_warn: diff --git a/packages/business/src/locale/lang/zh-CN.js b/packages/business/src/locale/lang/zh-CN.js index 5e2e5a39a..313997ae9 100644 --- a/packages/business/src/locale/lang/zh-CN.js +++ b/packages/business/src/locale/lang/zh-CN.js @@ -675,8 +675,8 @@ export default { '当任务遇到错误时', packages_business_setting_alarmnotification_dangrenwustop: 'Agent服务停止时', packages_business_setting_alarmnotification_dangrenwuuP: 'Agent服务启动时', - packages_business_setting_alarmnotification_dangyinqinglixian: '当引擎离线时', - packages_business_setting_alarmnotification_dangyinqinghuifu: '当引擎恢复时', + packages_business_setting_alarmnotification_dangyinqinglixian: '当引擎停止时', + packages_business_setting_alarmnotification_dangyinqinghuifu: '当引擎启动时', packages_business_setting_alarmnotification_api_server_worker_delay_p50_warn: '当APIServer工作进程每分钟请求延时P50超过阈值时', packages_business_setting_alarmnotification_api_server_worker_delay_p95_warn: diff --git a/packages/business/src/locale/lang/zh-TW.js b/packages/business/src/locale/lang/zh-TW.js index 96d252d74..4f10cd707 100644 --- a/packages/business/src/locale/lang/zh-TW.js +++ b/packages/business/src/locale/lang/zh-TW.js @@ -713,8 +713,8 @@ export default { packages_business_setting_alarmnotification_api_server_worker_memory_usage_alter: '當任一API Server的工作行程記憶體使用量超過通知閾值時', packages_business_setting_alarmnotification_dangrenwuuP: 'Agent服务啓動時', - packages_business_setting_alarmnotification_dangyinqinglixian: '當引擎離線時', - packages_business_setting_alarmnotification_dangyinqinghuifu: '當引擎恢復時', + packages_business_setting_alarmnotification_dangyinqinglixian: '當引擎停止時', + packages_business_setting_alarmnotification_dangyinqinghuifu: '當引擎啓動時', packages_business_setting_alarmnotification_msshigaojing: ' 時告警', packages_business_setting_alarmnotification_lianxu: '連續', packages_business_setting_alarmnotification_cichugaojinggui: From a6328c155fbf47272a0f4a945dd9474abc474521 Mon Sep 17 00:00:00 2001 From: mnianqi Date: Tue, 19 May 2026 15:03:06 +0800 Subject: [PATCH 3/3] fix: TAP-11636 add treat empty string as null config in inspect task --- packages/business/src/locale/lang/en.js | 3 +++ packages/business/src/locale/lang/zh-CN.js | 3 +++ packages/business/src/locale/lang/zh-TW.js | 3 +++ .../business/src/views/verification/Form.vue | 21 +++++++++++++++++++ 4 files changed, 30 insertions(+) diff --git a/packages/business/src/locale/lang/en.js b/packages/business/src/locale/lang/en.js index ae5ee3216..20822b3ae 100644 --- a/packages/business/src/locale/lang/en.js +++ b/packages/business/src/locale/lang/en.js @@ -1661,6 +1661,9 @@ export default { 'Click variable name to insert into template', packages_business_ignoreTimePrecision_round: 'Round', packages_business_ignoreTimePrecision_truncate: 'Truncate', + packages_business_treatEmptyStringAsNull: 'Treat empty string as NULL', + packages_business_treatEmptyStringAsNull_tip: `

When enabled, an empty string ("") on either side is considered equal to NULL during field comparison.

+

Useful when the target is a database that automatically converts empty strings to NULL (e.g. Oracle), to avoid false-positive field inconsistencies caused by such semantic differences.

`, packages_business_validation_task_type: 'Validation Task Type', packages_business_select_task_to_be_verified: 'Select Task to be Verified', packages_business_drag_file_here: diff --git a/packages/business/src/locale/lang/zh-CN.js b/packages/business/src/locale/lang/zh-CN.js index 313997ae9..850449612 100644 --- a/packages/business/src/locale/lang/zh-CN.js +++ b/packages/business/src/locale/lang/zh-CN.js @@ -1486,6 +1486,9 @@ export default { '点击变量名称插入到模板中', packages_business_ignoreTimePrecision_round: '四舍五入', packages_business_ignoreTimePrecision_truncate: '截断', + packages_business_treatEmptyStringAsNull: '空字符串视为 NULL', + packages_business_treatEmptyStringAsNull_tip: `

开启后,源端和目标端在字段校验时,空字符串("")将被视为与 NULL 相等。

+

适用于目标端为 Oracle 等会自动把空字符串转换为 NULL 的数据库,避免因数据库语义差异导致的字段不一致误报。

`, packages_business_validation_task_type: '校验任务类型', packages_business_select_task_to_be_verified: '选择被校验的任务', packages_business_drag_file_here: diff --git a/packages/business/src/locale/lang/zh-TW.js b/packages/business/src/locale/lang/zh-TW.js index 4f10cd707..712730aa3 100644 --- a/packages/business/src/locale/lang/zh-TW.js +++ b/packages/business/src/locale/lang/zh-TW.js @@ -1476,6 +1476,9 @@ export default { '點擊變量名稱插入到模板中', packages_business_ignoreTimePrecision_round: '四捨五入', packages_business_ignoreTimePrecision_truncate: '截斷', + packages_business_treatEmptyStringAsNull: '空字符串視為 NULL', + packages_business_treatEmptyStringAsNull_tip: `

開啓後,源端和目標端在字段校驗時,空字符串("")將被視為與 NULL 相等。

+

適用於目標端為 Oracle 等會自動把空字符串轉換為 NULL 的數據庫,避免因數據庫語義差異導致的字段不一致誤報。

`, packages_business_validation_task_type: '校驗任務類型', packages_business_select_task_to_be_verified: '選擇被校驗的任務', packages_business_drag_file_here: diff --git a/packages/business/src/views/verification/Form.vue b/packages/business/src/views/verification/Form.vue index e5d87ff88..d6e0d8426 100644 --- a/packages/business/src/views/verification/Form.vue +++ b/packages/business/src/views/verification/Form.vue @@ -70,6 +70,7 @@ interface FormData { checkTableThreadNum: number alarmSettings: AlarmSetting[] ignoreTimePrecision?: boolean + treatEmptyStringAsNull?: boolean } interface Task { @@ -184,6 +185,7 @@ const form = reactive({ inconsistentNotifys: ['SYSTEM', 'EMAIL'], checkTableThreadNum: 10, roundingMode: 'HALF_UP', + treatEmptyStringAsNull: true, alarmSettings: [ { type: 'INSPECT', @@ -1090,6 +1092,25 @@ provide('ConnectorMap', ConnectorMap) + + + + +