システムモニター:ワークプロセス、トレース、ロック、セッション
プラットフォームが今この瞬間に何をしているのか、その背後にあるデータベースの処理、保持しているロック、誰がログインしているのか、そしてそれらすべてを停止する方法。
ワークプロセス、システムトレース、ロックは、プラットフォーム → オペレーション → ヘルスの下にあり、統合、パイプライン、ワークフローのヘルス画面の横にあります。Webセッションとユーザーセッションは、プラットフォーム → アクセスの下にあり、ユーザーの横にあります。それぞれに独自の権限が設定されているため、オペレーションロールは、システムを監視し、暴走クエリをキャンセルする権限を与えられても、全員をログアウトさせる権限は与えられません。
作業プロセス
応答されるすべてのリクエスト、すべてのバックグラウンドワーカー(スケジューラ、メーラー、プロセスマイニング、データ保持、電子署名スキャン、資産レポート)、および実行中のすべてのバッチ処理は、実行中のすべてのコンテナ上で、それぞれがその時点で使用しているデータベースバックエンドに紐付けられています。その下には、データベース接続の状態、待機中の処理、ステートメントとトランザクションが開いている時間、接続をブロックしている主体、および接続を送信したリクエストまたはジョブに関する情報がすべて含まれています。
- キャンセルをクリックすると、現在実行中のステートメントが停止します。リクエストは待機せずにエラーで終了します。複数の行を選択して「選択した項目をキャンセル」をクリックすると、それらをまとめて停止できます。
- バッチ実行の場合、「キャンセル」をクリックすると次の項目で処理が停止し、途中で処理が中断されることはありません。また、実行は完了した時点でキャンセルされたものとして記録されます。
- (データベースバックエンドで)End を呼び出すと、その接続が閉じられ、トランザクションがロールバックされます。これは、「トランザクション内でアイドル状態」にあり、ロックを保持しているセッションに対して使用します。何も実行されていないため、Cancel を呼び出すとロックが解除されてしまいます。
- 別のコンテナでの処理は、そのコンテナを介してキャンセルされます。つまり、10秒以内に処理が実行されます。
- キャンセルや終了の際には必ず理由の入力が求められ、その理由はあなたの名前とともに監査ログに記録されます。
システムトレース
トレース(どの作業またはバックエンドでも)では、1 つのプロセス全体が表示されます。送信されたすべてのステートメント、それぞれの所要時間と返された行数、保持および待機中のロック、その前のセッションのチェーン、その後ろにキューイングされているセッション、および安全に表示できる場合は現在実行中のクエリ プランが表示されます。システム トレース画面には、最も遅い作業と最新の作業、およびデータベースに pg_stat_statements がある場合は、最も多くのデータベース時間を使用したステートメントが表示されます。ユーザーが入力した値は決して記録されません。それらは個人データが格納されている場所です。
錠前
待機中のロック、誰かをブロックしているロック、アドバイザリロック(スキーマ移行ロックには名前が付けられています)、および「実行中」と表示されているバッチ実行。ロックを保持しているトランザクションが設定したしきい値(デフォルトでは 5 分)よりも長くアイドル状態になっている場合、または実行中のコンテナがバッチ実行を要求していない場合、ロックは古いものとしてマークされます。コンテナが停止した実行は決して完了せず、解放されるまでスケジュールは再度実行されません。
- 全ての古いロックを選択し、次に選択したロックを解除します。PostgreSQLは、ロックを保持しているセッションが終了したときにのみロックを解放するため、解除操作によってそのセッションが終了し、トランザクションがロールバックされます。
- 期限切れでないロックは、強制解放を選択しない限り拒否されます。つまり、現在ロックを保持している正常なトランザクションを終了すると、それが解決しようとしていた問題を引き起こすクリックとなります。
- 古いバッチ実行を解放すると、その実行は失敗としてマークされるため、スケジュールされた実行を再度実行できるようになります。
ウェブセッションとユーザーセッション
すべてのウェブセッション(ブラウザまたはデバイスごとに1つ)と、ログインしているすべてのユーザーとその現在の操作状況が表示されます。ユーザー別とセッション別を切り替えたり、名前、住所、送信元でフィルタリングしたり、特定のセッション、ユーザーのすべてのセッション、選択したセッション、または自分以外のすべてのセッションをログアウトしたりできます。サービスアカウントもここに表示され、トークンごとに1つのセッションが表示されます。一括操作によって自分のセッションが終了することはありません。
プラットフォームのロール画面で、ワークプロセス(表示して監視、変更してキャンセル、削除してバックエンドを終了)、システムトレース(表示)、ロック(表示して監視、削除して解放)、Webセッションとユーザーセッション(表示して監視、削除してユーザーをログアウト)の権限を付与します。管理者はこれらすべてを保持します。マルチテナント環境では、各テナントは自身の作業と自身のデータベース接続のみを参照できます。