イベント管理イベントが「準備完了(Ready)」ステータスでスタックする。Issue この記事では、[em_event] テーブルのイベント エントリが長期間 "準備完了(Ready)" 状態のままになっている場合のトラブルシューティング ガイドラインを提供します。 Releaseすべてのリリース。Causeイベントが「準備完了(Ready)」ステータスでスタックする原因はいくつかあります。イベントの処理は、「イベント管理 - イベントの処理(Event Management - process events)」スケジュール済みジョブによって行われます。 原因 1:イベント処理がバックアップされる。 デフォルトでは、マルチノードイベント処理は有効になっていないため、スケジュール済みジョブは 1 つだけですこれらのイベントを処理するシステム能力よりも多くのイベントが作成される場合、イベントはバックアップされ、新しいイベントが「準備完了(Ready)」ステータスのままになる時間が長くなります。 原因 2:カスタムビジネスルールおよびスクリプトインクルードにより、イベント処理に余分なオーバーヘッド遅延が追加される。 ベストプラクティスとして、em_eventテーブルとem_alertテーブルにカスタムビジネスルールを設定することはお勧めしません。カスタムビジネスルールを追加する必要がある場合は、パフォーマンスが高いことを確認してください。イベント負荷が高い場合、マルチノードイベント処理とマルチスレッドが有効になっている場合、追加されたオーバーヘッドが最小限でもメジャー遅延イベントになる可能性があります。 原因 3:スケジュールマネージャーの問題により、イベントが選択されない。 これは通常、マルチノードイベント処理がマルチスケジュール済みジョブとともに有効になっている場合に発生します。サービスを開始するイベントには、0 〜 99 の特定のバケットが割り当てられるようになりました。マルチノードイベント処理が有効になっている場合、各ノードで、バケット範囲がスケジュール済みジョブ間で均等に分割されます。例:イベントを処理するスケジュール済みジョブの数が 4 の場合、各ジョブは特定の範囲 ([0 - 24]、[25 - 49]、[50 - 74]、[75 - 99]) のそれぞれのイベントを処理します。スタックしたイベントは、上記のいずれかの範囲の特定のバケットに属している可能性があります。これは、影響を受ける範囲に割り当てられたスケジュール済みジョブが動作していないことを示します。これは、クラスターノードがクラスターを離れたり、クラスターに参加したりしたときにスケジュールマネージャーが同期しなくなる問題であると疑われていました。 原因 4.テーブルがシャーディングされているため、イベントがクエリされません。 em_eventテーブルはシャード化されています。設計上、イベント管理は、現在のシャードとその前のシャード内のイベントのみを照会します。何らかの理由でイベントが 2 日以上収集されなかった場合 (原因 1 〜 3、ジョブ停止など)、つまり、それらのイベントが現在 N-2 から N-7 のシャードにある場合、再度取得されることはありません。 Resolution原因 1: イベント処理がバックアップされる。 マルチノードイベント処理を有効にし、イベントを処理するスケジュール済みジョブの # を増やします。ロード テストを実行して、イベントの消費率とイベントの作成率を確認する必要があります。 原因 2:カスタムビジネスルールおよびスクリプトインクルードにより、イベント処理に余分なオーバーヘッド遅延が追加される。 カスタムビジネスルールとスクリプトインクルードにタイミングロジックを追加して、各イベントに追加された遅延を確認します。 スケジュール済みジョブのイベントレートとイベント処理サイクルを考慮し、カスタマイズを可能な限り最適化します。 原因 3:スケジュールマネージャーの問題により、イベントが選択されない この問題はごくまれにしか発生せず、内部テストでは再現できません。現在の回避策は、次の手順を実行してスケジュール済みジョブを更新することです。 イベント管理>設定>プロパティに移動[イベントを処理するスケジュール済みジョブの数] を別の値に変更します (例:2 から 1)。保存[イベントを処理するスケジュール済みジョブの数] を前の値に変更します。保存 原因 4.テーブルがシャーディングされているため、イベントがクエリされません。 スタックしたイベントを処理する必要がある場合。イベントを現在のシャードに移動するには、Now Support を通じて カスタマーサポートに連絡してください 「evt_mgmt.events_processing_all_shards」という名前のシステムプロパティを値 = 「true」で構成しますイベント管理イベント処理ジョブが古いバックログが多い場合には追いつくまで、しばらくお待ちください。 Related Linksインシデント管理 - 重大インシデント管理とともにインストールされるコンポーネント