カスタムアラートルールを使用すると、ビジネス要件に基づいてタスクの実行ステータスとリソース使用量を監視でき、例外を迅速に検出して対処できます。このトピックでは、ルール管理ページでカスタムアラートルールを作成する方法と、DingTalk チャットボットを追加して Webhook URL を取得する方法について説明します。
制限事項
カスタムアラートルールは、Scheduled Instance にのみ適用されます。それらは、テスト実行やデータバックフィルタスクの結果を監視しません。
カスタムアラートルールは、メール、Sms、[電話]、DingTalk Chatbot、および Webhook による通知をサポートしています。以下の制限事項が適用されます。
[電話]: 電話による通知は、中国本土の携帯電話番号にのみ対応しています。
[Webhook]:
DataWorks Basic Edition では、グループ Webhook を使用して DingTalk、Lark、WeCom グループにアラートを送信できます。
DataWorks Enterprise Edition では、アラートを受信するためのユーザー定義 Webhook も利用できます。
説明カスタム Webhook を使用してメッセージを送信する場合は、「インテリジェントモニタリングのカスタム Webhook」の手順に従って設定する必要があります。設定が完了した後、サポートが必要な場合はお問い合わせください。チケットを起票してお問い合わせください。
DataWorks Professional Edition 以上でのみ、エラーのあるインスタンス数、エラーのあるインスタンスの割合、ノードログにキーワードが含まれる などのトリガー条件がサポートされています。詳細については、「DataWorks の各エディションの機能」をご参照ください。DataWorks のサブスクリプションについては、「サブスクリプション」をご参照ください。
モニタリングルールの 所有者、テナント管理者、または Alibaba Cloud アカウント のみがモニタリングルールを変更できます。
注意事項
カスタムアラートルールを使用して自動トリガーされたノードインスタンスを監視する場合、監視期間はトリガー条件によって異なります:
監視範囲 | トリガー条件 | 説明 |
データタイムスタンプ (T、昨日) |
| DataWorks は、データタイムスタンプが昨日で、スケジュールされた時刻が今日の自動トリガーされたノードインスタンスを監視します。指定されたトリガー条件が満たされると、アラートがトリガーされます。 |
データタイムスタンプ (T、昨日および T-1、一昨日) |
| DataWorks は、データタイムスタンプが昨日と一昨日で、スケジュールされた時刻が今日と昨日の自動トリガーされたノードインスタンスを監視します。指定されたトリガー条件が満たされると、アラートがトリガーされます。 |
データタイムスタンプ (T、昨日、T-1、一昨日、T-2、2日前) |
| DataWorks は、データタイムスタンプが昨日、一昨日、2日前で、スケジュールされた時刻が今日、昨日、一昨日の自動トリガーされたノードインスタンスを監視します。指定されたトリガー条件が満たされると、アラートがトリガーされます。 |
監視範囲外の自動トリガーされたノードインスタンスは、トリガー条件が満たされてもアラートはトリガーされません。さまざまなトリガー条件のモニタリングルールの詳細については、「カスタムアラートルールの作成」をご参照ください。
ルール管理ページへの移動
オペレーションセンターページに移動します。
左側のナビゲーションペインで、 の順にクリックします。
説明[定期タスク] ページに移動して複数のノードを選択し、モニタリングルールを作成することもできます。詳細については、「定期タスクの管理」をご参照ください。
DataWorks コンソールにログインします。目的のリージョンに切り替えた後、左側のナビゲーションウィンドウで を選択します。ドロップダウンリストから目的のワークスペースを選択し、オペレーションセンター をクリックします。
カスタムアラートルールの作成
ルール管理ページで、要件に基づいてカスタムアラートルールを作成できます。
基本情報の設定
パラメーター | 説明 |
[ルール名] | カスタムアラートルールの名前を入力します。 |
[Object Type] | 監視の粒度を定義する監視オブジェクトのタイプです。有効な値はNode、Baseline、Workspace、ビジネスプロセス、Exclusive Resource Group for Scheduling、Exclusive Resource Group for Data Integrationです。 説明 オブジェクトタイプがベースラインの場合、ベースライン上のタスクの実行ステータスのみが監視され、その上流タスクは監視されません。上流タスクも監視する必要がある場合は、「スマートベースラインの概要」をご参照ください。 |
[Rule Object] | 監視対象のオブジェクト。対象オブジェクトの名前または ID を入力し、リストから選択し、追加 をクリックします。 対応するオブジェクトタイプと追加可能なオブジェクトの最大数は以下のとおりです:
|
[Task Blacklist] | 監視対象オブジェクト内で、このルールの監視対象から除外するタスクです。 Object Type を Baseline、Workspace、または ビジネスプロセス に設定した場合、[ノード名/ID] を入力し、追加 をクリックしてタスクを除外リストに追加できます。 説明 除外リスト内のタスクは監視されません。最大 50 個のタスクをリストに追加できます。 |
[リソースグループ名] | 監視対象の専用リソースグループの名前です。 Object Type を Exclusive Resource Group for Scheduling または Exclusive Resource Group for Data Integration に設定した場合、ドロップダウンリストから目的の リソースグループ名 を選択する必要があります。 |
トリガー条件の設定
カスタムアラートのロジックでは、凍結されたタスクは完了として扱われます。
オブジェクトタイプ | トリガー条件 | 説明 |
[Node]、[Baseline]、[Workspace]、[ビジネスプロセス] | [完了] | システムはタスクの実行が開始されると監視を開始し、タスクが正常に実行されるとアラートを送信します。
説明 時間単位のタスクの場合、その日のすべてのスケジュールされたサイクルが正常に実行された後にのみ、タスクは完了したと見なされます。 |
[Incomplete] | システムはタスクの実行が開始されると監視を開始します。指定された時刻にタスクがまだ実行中の場合、システムはアラートを送信します。 説明 このアラートは、スマートベースラインのアラートポリシーとは異なります。スマートベースラインは、ベースライン上のタスクが定刻に完了しない原因となる例外を迅速に検出し、早期に警告を発することができます。詳細については、「スマートベースラインの概要」をご参照ください。 シナリオ例:
説明 時間単位または分単位のタスクの場合、システムは指定された時刻に当日のすべてのサイクルが未完了であるかどうかを確認します。 | |
[Error] | システムはタスクの実行が開始されると監視を開始し、タスクでエラーが発生した場合にアラートを送信します。 説明 インスタンスエラーは、 の [基本情報] 列で、対象インスタンスのステータスが
| |
エラーのあるインスタンス数 | エラー状態にあるインスタンスの数です。これには、DQC チェックに失敗したインスタンスや、コード実行に失敗したインスタンスが含まれます。 Workspace を Trigger Condition に、エラーインスタンス数 を [エラーのあるインスタンス数] に設定する場合、しきい値を設定する必要があります。エラーのあるインスタンス数がしきい値に達すると、アラートがトリガーされます。 説明
| |
[エラーインスタンスの割合] | Workspace を Trigger Condition に設定し、エラーインスタンスの割合 を [エラーのあるインスタンスの割合] に設定した場合、しきい値を設定する必要があります。当日のエラーのあるインスタンスの割合がしきい値に達すると、アラートがトリガーされます。 説明
| |
[Node Logs Contain Keywords] | Workspace を Trigger Condition に設定し、Node Logs Contain Keywords を [ノードログにキーワードが含まれる] に設定した場合、1 つ以上のキーワードを設定する必要があります。当日のタスク実行ログに指定されたキーワードのいずれかが含まれている場合、アラートがトリガーされます。 説明
| |
[Incomplete in Cycle] | 指定されたサイクル内でタスクがまだ実行中の場合、システムはアラートを送信します。これは通常、時間単位で実行されるインスタンスを監視するために使用されます。 ワークフローに Incomplete in Cycle 監視を設定すると、システムは、指定したサイクル N に基づいて、ワークフロー内のタスク (日次、時間次、分レベルのタスクなど) の N 番目のサイクルを監視します。インスタンス数が N 未満の場合、そのタスクのアラートは無視されます。 たとえば、サイクルを 3 に設定し、ワークフローに以下の 2 つのタスクが含まれている場合、アラート監視は次のように機能します:
| |
[Timeout] | システムはタスクの実行が開始されると監視を開始します。指定された期間が経過してもタスクがまだ実行中の場合、システムはアラートを送信します。これは通常、タスクの実行時間を監視するために使用されます。 | |
[Error Persisting After Automatic Rerun of Node] | システムはタスクの実行が開始されると監視を開始し、タスクでエラーが発生し、すべての自動再実行が完了した後もエラーが継続する場合にアラートを送信します。 説明 タスクの実行が失敗するたびにアラートがトリガーされるようにしたい場合は、トリガー条件をErrorに設定します。 | |
[Instance Generated] | このトリガー条件は、オブジェクトタイプがWorkspaceの場合にのみ利用可能です。 | |
[Fluctuation of Instance Count] | このトリガー条件は、オブジェクトタイプが Workspace の場合にのみ利用可能です。DataWorks は、毎日 24:00 までに翌日の自動トリガーノードインスタンスを生成します。ワークスペース内のインスタンス数が過去の平均値と比較して大幅に変動した場合、アラートが通知されます。 | |
[Exclusive Resource Group for Scheduling]、[Exclusive Resource Group for Data Integration] | [Resource Group Usage] | 指定された期間、Usageが設定されたしきい値を超えると、アラートがトリガーされます。 例: Usageが 15 分間 50% を超えた場合、アラートがトリガーされます。 |
リソースグループでリソースを待機しているインスタンス数 | Number of Instances Waiting for Resources in Resource Group が、指定された期間、設定されたしきい値を超えると、アラートがトリガーされます。 例:Number of Instances Waiting for Resources in Resource Group が 15 分間 10 を超えた場合に、アラートがトリガーされます。 |
通知アクションの設定
通知方法 | アラート受信者 | 説明 |
[メール]、[Sms]、電話 | 受信者にはNode Owner、Shift Schedule、またはOthersを指定できます。 |
|
[DingTalk Chatbot]および[Webhook] | グループメンバー |
|
アラート頻度制御の設定
パラメーター | 説明 |
[Maximum Alerts] | このルールの最大アラート数を指定します。この制限に達すると、それ以上のアラートは送信されません。 |
[Minimum Alert Interval] | 連続する 2 つのアラート間の最小時間間隔です。 |
[Alerting Do-Not-Disturb Period] | 指定されたサイレント期間中は、アラートは送信されません。 例えば、タスクのステータスが Timeout、Error、または Incomplete の場合にアラートをトリガーするように設定し、タスクのアラートのサイレント期間を |
設定を完了したら、確認 をクリックしてルールを作成します。Rule Management ページでは、ルールの横にある 詳細、[有効化/無効化]、または 削除 をクリックできます。
[詳細]: 詳細 をクリックすると、ルールの基本情報を表示できます。
[Enable]または[Disable]: 有効化されたルールはタスクをアクティブに監視します。アラートの詳細は、[アラート情報] パネルで表示できます。
[削除]:削除 をクリックしてルールを削除します。
モニタリングルールの変更
ルールは、その 所有者、テナント管理者、または Alibaba Cloud アカウント のみが変更できます。
ユースケース:DingTalkへのアラート送信
アラート用のターゲット DingTalk グループを開き、右上隅の [グループ設定] アイコンをクリックします。
[グループアシスタント] をクリックします。
[グループアシスタント] ページで、[ロボットを追加] をクリックします。
[チャットボット] ページで、
アイコンをクリックします。[Select which robot to add] ページで、Custom をクリックします。
Custom ダイアログボックスで、追加 をクリックします。
[ロボットを追加] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
チャットボット名
チャットボットのカスタム名です。
グループに追加
チャットボットが追加されるグループです。これは変更できません。
カスタムキーワード
キーワードを設定すると、キーワードのいずれかを含むメッセージのみが送信されます。キーワードとして DataWorks を追加する必要があります。キーワードでは大文字と小文字が区別されます。
説明最大 10 個のキーワードを設定できます。メッセージを送信するには、キーワードの少なくとも 1 つが含まれている必要があります。
カスタムロボットサービスと免責事項を読み、同意しますを選択し、完了 をクリックします。
セキュリティ設定を完了したら、チャットボットの Webhook URL をコピーし、完了 をクリックします。
重要セキュリティリスクを防ぐため、Webhook URL は機密情報として扱ってください。
ルール管理 ページに移動し、Create Custom Rule をクリックし、通知方法として DingTalk Chatbot を選択し、Webhook URL を DingTalk Chatbot の Webhook URL 入力ボックスにコピーします。
よくある質問
Q:頻繁なアラート通知を回避するにはどうすればよいですか?
A:最大アラート数、アラート間隔、およびサイレント期間を設定することで、アラートの頻度を制御できます。詳細については、「アラート頻度制御の設定」をご参照ください。