Notifications
=============

フェールオーバーマネージャーは、クラスターに影響する重要なイベントが発生すると、電子メール通知を送信し、通知スクリプトを呼び出します。電子メール通知を送信するようにフェールオーバーマネージャーを構成した場合、クラスターの各ノードのポート25で実行されているSMTPサーバーが必要です。次のパラメーターを使用して、フェールオーバーマネージャーの通知動作を構成します。

.. code:: text

   user.email
   from.email
   notification.level
   notification.text.prefix
   script.notification

構成プロパティの編集の詳細については、 :ref:`クラスタープロパティの指定 <クラスタープロパティの指定>` を参照してください。

通知の本文には、通知をトリガーしたイベント、およびクラスターの現在の状態に関する詳細が含まれています。例

.. code:: text

   EFM node: 10.0.1.11
   Cluster name: acctg
   Database name: postgres
   VIP: ip_address (Active|Inactive)
   Database health is not being monitored.

VIPフィールドには、ノードに実装されている場合、仮想IPのIPアドレスと状態が表示されます。

フェールオーバーマネージャーは、各通知に重大度レベルを割り当てます。次のレベルは、必要な注意のレベルの増加を示します。

- ``INFO``
  は、エージェントに関する情報メッセージを示し、手動介入は必要ありませんたとえば、フェールオーバーマネージャーが開始または停止しました。
  :ref:`List of INFO level notifications <#notifications_info>` を参照

- ``WARNING``
  は、管理者がシステムを確認する必要があるイベントが発生したことを示しますたとえば、フェイルオーバーが発生しました。
  :ref:`List of WARNING level notifications <#notifications_warning>` を参照

- ``SEVERE``
  は、重大なイベントが発生したことを示し、管理者の即時の注意が必要ですたとえば、フェイルオーバーが試行されましたが、完了できません。
  :ref:`List of SEVERE level notifications <#notifications_severe>` を参照

重大度レベルは、通知の緊急度を指定します。重大度レベル\ ``SEVERE``
の通知は、すぐにユーザーの注意を必要としますが、重大度レベル\ ``INFO``
の通知は、ユーザーのアクションを必要としないクラスターに関する操作情報に注意を促します。通知の重大度レベルはログレベルとは関係ありません。すべての通知は、構成ファイルで指定されたログレベルの詳細に関係なく送信されます。

:ref:`notification.level <The cluster properties file>` プロパティを使用して、通知をトリガーする最小の重大度レベルを指定できます。

..  Note::
   管理用メールアドレスに通知を送信することに加えて、すべての通知はエージェントログファイル`/var/log/efm-5.<x>/<cluster_name>.log` に記録されます。

この表にリストされている条件は、INFOレベルの通知をトリガーします。

.. csv-table::
  :header: Subject,Description,""
  :widths: 25,20,4
  :align: left
  :class: longtable

  Executed fencing script,実行されたフェンシングスクリプト *script_name*  結果 *script_results* ,""
  Executed post-promotion script,実行されたポストプロモーションスクリプト *script_name*  結果 *script_results* ,""
  Executed remote pre-promotion script,実行されたリモートプレプロモーションスクリプト *script_name*  結果 *script_results* ,""
  Executed remote post-promotion script,リモートポストプロモーションスクリプト *script_name* を実行しました 結果 *script_results* ,""
  Executed post-database failure script,実行されたデータベース障害後のスクリプト *script_name*  結果 *script_results* ,""
  Executed primary isolation script,実行されたプライマリ分離スクリプト *script_name*  結果 *script_results* ,""
  Witness agent running on *node_address* for cluster *cluster_name*,Witnessエージェントが実行されています。,""
  Primary agent running on *node_address* for cluster *cluster_name*,プライマリエージェントが実行されており、データベースの状態が監視されています。,""
  Standby agent running on *node_address* for cluster *cluster_name*,スタンバイエージェントが実行され、データベースの状態が監視されています。,""
  Idle agent running on node *node_address* for cluster *cluster_name*,アイドルエージェントが実行されています。ローカルデータベースを起動した後、エージェントを再開できます。,""
  Assigning VIP to node *node_address*,VIP  *VIP_address* をノード *node_address* に割り当てる結果 *script_results* ,""
  Releasing VIP from node *node_address*,ノード *node_address* からVIP  *VIP_address* を解放します 結果 *script_results* ,""
  Starting auto resume check for cluster *cluster_name*,このノードのエージェントは`auto.resume.failure.period`秒ごとにチェックして、障害が発生したデータベースの監視を再開できるかどうかを確認します。この間にクラスターを確認し、データベースが再起動されない場合はエージェントを停止します。詳細については、エージェントログを参照してください。,""
  Executed agent resumed script,実行されたエージェントはスクリプト *script_name* を再開しました 結果 script_results,""
  WAL logs backed up during promotion,新しいプライマリに従ってこのスタンバイを再構成すると、 pg_walコンテンツがpgdataディレクトリにバックアップされました。都合の良いときにこのバックアップを削除して、ディスク領域を解放します。,""
  Reset members completed,クラスターメンバーをリセットする呼び出しの後、エージェントはクラスターに再参加しました。,""

以下のこの表にリストされている条件は、
WARNINGレベルの通知をトリガーします。

.. csv-table::
  :header: Subject,Description
  :widths: 10,30
  :align: left
  :class: longtable

  Failed primary is being rebuilt with pg_basebackup in cluster *cluster_name*,このノードのプライマリデータベースは、  *node_address* の現在のプライマリに従って、 pg_basebackupで再構築されています。
  Witness agent exited on *node_address* for cluster *cluster_name*,Witnessエージェントが終了しました。
  Primary agent exited on *node_address* for cluster *cluster_name*,データベースの状態は監視されていません。
  Cluster *cluster_name* notified that primary agent has left,プライマリエージェントが再起動されるまで、クラスターのフェールオーバーは無効になっています。
  Standby agent exited on *node_address* for cluster *cluster_name*,データベースの状態は監視されていません。
  Agent exited during promotion on *node_address* for cluster *cluster_name*,データベースの状態は監視されていません。
  Agent exited on *node_address* for cluster *cluster_name*,エージェントは終了しました。これは、Idle状態のエージェントによって生成されます。
  Agent exited for cluster *cluster_name*,エージェントは終了しました。この通知は、通常、起動中に生成され、起動が完了する前にエージェントが終了します。
  Virtual IP address assigned to non-primary node,仮想IPアドレスは、非プライマリノードに割り当てられているようです。競合を回避するために、フェールオーバーマネージャーはVIPを解放します。 VIPがプライマリノードに割り当てられていることを確認し、割り当てられていない場合はアドレスを手動で再割り当てします。
  Virtual IP address not assigned to primary node.,仮想IPアドレスはプライマリノードに割り当てられていないようです。フェールオーバーマネージャーはVIPを再取得しようとします。
  Standby failed in cluster *cluster_name*,*node_address* のスタンバイがクラスターから離脱しました。
  Standby agent failed for cluster *cluster_name*,*node_address* のスタンバイエージェントはクラスターから離脱しましたが、コーディネーターは、スタンバイデータベースがまだ実行されていることを検出しました。
  Standby database failed for cluster *cluster_name*,スタンバイエージェントは、データベースに障害が発生したことを通知しました。他のクラスターノードもスタンバイデータベースに到達できません。
  Standby agent cannot reach database for cluster *cluster_name*,スタンバイエージェントはデータベース障害を通知しましたが、他のノードは、スタンバイデータベースがまだ実行されていることを検出しました。
  Cluster *cluster_name* has dropped below three nodes,完全なフェールオーバー保護には、少なくとも3つのノードが必要です。監視またはエージェントノードをクラスターに追加します。
  Subset of cluster *cluster_name* disconnected from primary,このノードは、クラスター *cluster_name* の大部分に接続されなくなりました。このノードはクラスターのサブセットの一部であるため、フェールオーバーは試行されません。表示されている現在のノードは次のとおりです。 *node_list* 
  Promotion has started on cluster *cluster_name*.,スタンバイのプロモーションがクラスター *cluster_name* で開始されました。
  Witness failure for cluster *cluster_name*,*node_address* で実行されているWitnessがクラスターを離脱しました。
  Idle agent failure for cluster *cluster_name*.,*node_address* で実行されているアイドルエージェントがクラスターから離脱しました。
  One or more nodes isolated from network for cluster *cluster_name*,このノードはネットワークから分離されているようです。クラスター内で見られる他のメンバーは次のとおりです。 *node_list* 
  Node no longer isolated from network for cluster *cluster_name*.,このノードはネットワークから分離されません。
  "Failover Manager tried to promote, but primary DB is still running",フェールオーバーマネージャーはプロモーション手順を開始しましたが、プライマリDBがまだ *node_address* で実行されていることを検出しました。これは通常、プライマリフェールオーバーマネージャーエージェントが終了したことを示します。フェイルオーバーは発生していません。プライマリエージェントが再起動されるまで、フェールオーバー保護はありません。
  Primary agent missing for cluster *cluster_name*,プライマリエージェントは以前にクラスターを離脱しています。プライマリエージェントがクラスターに参加するまで、フェールオーバー保護はありません。
  "Standby agent started to promote, but primary has rejoined.",スタンバイフェールオーバーマネージャーエージェントは自分自身を昇格させ始めましたが、プライマリエージェントがクラスターに再参加したことを検出しました。フェイルオーバーは発生していません。
  "Standby agent tried to promote, but could not verify primary DB",スタンバイFailover Managerエージェントは自分自身を昇格させようとしましたが、プライマリDBが *ノードアドレス* でまだ実行されているかどうかを検出できませんでした。フェイルオーバーは発生していません。
  "Standby agent tried to promote, but VIP appears to still be assigned",スタンバイFailover Managerエージェントは自分自身を昇格させようとしましたが、仮想IPアドレス *VIP_address* がまだ別のノードに割り当てられているようであるため、できませんでした。このような状況でプロモーションを行うと、データの破損が発生する可能性があります。フェイルオーバーは発生していません。
  "Standby agent tried to promote, but appears to be orphaned",スタンバイFailover Managerエージェントは自分自身を昇格させようとしましたが、既知のサーバー *アドレス* に到達できなかったため、できませんでした。これは通常、スタンバイエージェントを他のエージェントから分離したネットワークの問題を示しています。フェイルオーバーは発生していません。
  Potential manual failover required on cluster *cluster_name*.,潜在的なフェイルオーバー状況がクラスター *cluster_name* で検出されました。このクラスターでは自動フェイルオーバーが無効になっているため、手動介入が必要です。
  Failover has completed on cluster *cluster_name*,クラスター *cluster_name* でフェールオーバーが完了しました。
  Lock file for cluster *cluster_name* has been removed,クラスター *cluster_name* のロックファイルが、ノード *node_address* のpath_nameから削除されました。このロックにより、複数のエージェントが同じノード上の同じクラスターを監視することを防ぎます。このファイルを復元して、クラスター用の別のエージェントを誤って起動するのを防ぎます。
  A recovery file for cluster *cluster_name* has been found on primary node,クラスター *cluster_name* のリカバリファイルは、プライマリノード *node_address* の *path* で見つかりました。これにより、このノードでDBを再起動しようとすると、問題が発生する可能性があります。
  recovery_target_timeline is not set to latest in recovery settings,recovery_target_timelineパラメーターは、リカバリ設定で最新の状態に設定されていません。スタンバイサーバーは、新しいプライマリが昇格したときに発生するタイムラインの変更に従うことができません。
  Promotion has not occurred for cluster *cluster_name*,プロモーションが試行されましたが、既に昇格するノード *node_address* が存在します。
  Standby will not be reconfigured after failover in cluster *cluster_name*,このノードの`auto.reconfigure`プロパティはfalseに設定されているため、プロモーション後に新しいプライマリノードに従うように再構成されません。
  Could not resume replay for standby *node_address*,スタンバイの再生を再開できませんでした。手動介入が必要になる場合があります。エラー出力 *error* 。
  Possible problem with database timeout values,`remote.timeout`値 *value* は、`local.timeout`値 *value* より大きいです。ローカルデータベースの応答に時間がかかりすぎる場合、ローカルエージェントは、データベースに障害が発生したと想定する場合があります他のエージェントは接続できます。これはフェールオーバーを発生させませんが、ローカルエージェントの監視を強制的に停止する場合があり、フェールオーバー保護がないままになります。
  No standbys available for promotion in cluster *cluster_name*,クラスター内のスタンバイノードの現在の数は、最小数 *number* に減少しました。別のスタンバイノードが追加されるか、プロモーション可能にされない限り、フェールオーバーはできません。
  No promotable standby for cluster *cluster_name*,クラスター内の現在のフェールオーバー優先順位リストは空です。クラスター *cluster_name* の唯一のプロモーション可能なスタンバイを削除しました。別のプロモート可能なスタンバイノードが追加されるか、フェールオーバー優先リストに追加することによりプロモーション可能にされない限り、フェールオーバーはできません。
  Synchronous replication has been reconfigured for cluster *cluster_name*,クラスター内の同期スタンバイノードの数が *number* を下回りました。プライマリの同期スタンバイ名が *new_value* に再構成されました。
  Synchronous replication has been reconfigured for cluster *cluster_name*,プライマリのsynchronous_standby_namesが *new_value* に再構成されました。
  Synchronous replication has been disabled for cluster *cluster_name*.,クラスター内の同期スタンバイノードの数が *number* を下回りました。プライマリは同期レプリケーションモードから解除されました。
  Could not reload database configuration.,データベース構成をリロードできませんでした。手動介入が必要です。エラー出力 *error* 。
  Custom monitor timeout for cluster *cluster_name*,次のカスタム監視スクリプトはタイムアウトしました。 *script_name* 
  Custom monitor 'safe mode' failure for cluster *cluster_name*,次のカスタム監視スクリプトは失敗しましたが、「セーフモード」で実行されています。 *script_name* 。出力 *script_results* 
  `primary.shutdown.as.failure` set to true for primary node,このクラスターの`primary.shutdown.as.failure`プロパティはtrueに設定されています。クラスター全体を停止せずにプライマリエージェントを停止すると、クラスターの残りの部分によって、即時のプライマリエージェントの障害として扱われます。プライマリデータベースのメンテナンスが必要な場合は、プライマリエージェントをシャットダウンし、残りのノードからフェールオーバーが発生しないという通知を待ちます。
  *Primary_or_Standby* cannot ping local database for cluster *cluster_name*,*Primary_or_Standby* エージェントは、 *node_address* で実行されているローカルデータベースに到達できなくなります。他のノードはデータベースにリモートでアクセスできるため、エージェントはIDLEになり、データベースの監視を再開しようとします。
  Standby cannot resume monitoring local database for cluster *cluster_name*,スタンバイエージェントは、 *node_address* で実行されているローカルデータベースに到達できません。他のノードはデータベースにリモートでアクセスできます。 `resume`コマンドが実行されてデータベースの監視が再開されるまで、スタンバイエージェントはIDLEのままです。
  Primary agent left the cluster and node detached from load balancer,スタンバイエージェントは、 *node_address* で実行されているローカルデータベースに到達できません。他のノードはデータベースにリモートでアクセスできます。 `resume`コマンドが実行されてデータベースの監視が再開されるまで、スタンバイエージェントはIDLEのままです。
  Standby database in cluster *cluster_name* not stopped before primary is promoted,このエージェントには`standby.restart.delay`プロパティが設定されているため、プロモーションが完了してからnum_seconds秒まで、新しいプライマリに従うように再構成されません。場合によっては、手動介入なしでは新しいプライマリを追跡できない場合があります。
  Agent for cluster *cluster_name* could not load shared state,このエージェントは、コーディネーターから共有クラスターの状態をロードできませんでした。これは予期しないものであり、修正しない限りクラスターで不明な動作を発生させる可能性があります。このノードからクラスターステータスを確認して、予想どおりであることを確認することをお勧めします。そうでない場合、このエージェントを再起動して、正しい内部状態があることを確認できます。詳細については、エージェントログを確認してください。
  Standby database restarted but EFM cannot connect,データベースのstartまたはrestartコマンドは正常に実行されましたが、データベースは接続を受け入れません。 EFMは、最大 *num_seconds* 秒間接続を試行し続けます。
  Could not retrieve db settings for rebuild in cluster *cluster_name*,プライマリデータベースを再構築しようとしたエージェントは、以前のdb設定を取得できませんでした。デフォルト値でpg_basebackupを使用して、リビルドしようとします。エラーは以下です。詳細については、エージェントログを参照してください。エラー出力  *error* 

この表にリストされている条件は、SEVERE通知をトリガーします。

.. csv-table::
  :header: Subject,Description
  :widths: 10,30
  :align: left
  :class: longtable

  pg_basebackup call failed in cluster *cluster_name*,障害が発生したプライマリをスタンバイとして再構築中に、 pg_basebackupへの呼び出しがエラーコードで終了しました。詳細については、エージェントログを参照してください。エラー出力  *error* 
  A duplicate replication slot name is in use for cluster *cluster_name*,クラスター内のスタンバイは、プライマリデータベースと同じ物理レプリケーションスロット名 *slot_name* を使用しています。これはサポートされていないため、同じ名前を使用するスタンバイでスロットは作成されません。元のプライマリは、昇格した場合、このスタンバイに従うことはできません。
  Unable to connect to DB on *node_address*,最大接続制限に到達しました。
  Unable to connect to DB on *node_address*,db.user= *user_name* のパスワードが無効です。
  Unable to connect to DB on *node_address*,無効な承認仕様です。
  Primary cannot resume monitoring local database for cluster *cluster_name*,プライマリエージェントは、 *node_address* で実行されているローカルデータベースに到達できません。他のノードはデータベースにリモートでアクセスできるため、プライマリはVIPを解放せず、`recovery.conf`ファイルを作成しません。 `resume`コマンドが実行されてデータベースの監視が再開されるまで、プライマリエージェントはIDLEのままです。
  Fencing script error,フェンシングスクリプト *script_name* は、正常に実行できませんでした。終了値  *exit_code*  結果 *script_results*  フェールオーバーは発生していません。
  Post-promotion script failed,ポストプロモーションスクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* 
  Remote post-promotion script failed,リモートポストプロモーションスクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* ノード *node_address* 
  Remote pre-promotion script failed,リモートプレプロモーションスクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* ノード *node_address* 
  Post-database failure script error,データベース障害後のスクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* 
  Agent resumed script error,エージェントが再開したスクリプト *script_name* は、正常に実行できませんでした。結果  *script_results* 
  Primary isolation script failed,プライマリ分離スクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* 
  Could not promote standby,ノードでpromoteコマンドは失敗しました。スタンバイを昇格できませんでした。エラー出力  *error* 
  Error creating recovery.conf file on *node_address* for cluster *cluster_name*,プロモーション中にプライマリノード *node_address* でrecovery.confファイルの作成中にエラーが発生しました。プロモーションは継続されますが、古いプライマリノードを再起動できないように手動介入が必要です。エラー出力  *error* 
  An unexpected error has occurred for cluster *cluster_name*,このノードで予期しないエラーが発生しました。詳細については、エージェントログを確認してください。エラー出力  *error* 
  Primary database being fenced off for cluster *cluster_name*,プライマリデータベースは、クラスターの大部分から分離されました。クラスターは、ip_addressのプライマリエージェントに、プライマリデータベースをフェンスオフして、フェールオーバーマネージャークラスターの残りの部分がスタンバイをプロモートするときに2つのプライマリを防ぐように指示しています。
  Isolated primary database shutdown.,分離されたプライマリデータベースは、フェールオーバーマネージャーによってシャットダウンされました。
  Primary database being fenced off for cluster *cluster_name*,プライマリデータベースは、クラスターの大部分から分離されました。プライマリが分離の検出を完了する前に、スタンバイが昇格し、クラスター内のこのノードに再参加しました。このノードは、複数のプライマリデータベースを回避するために自分自身を分離しています。
  Could not assign VIP to node *node_address*,フェールオーバーマネージャーは、何らかの理由でVIPアドレスを割り当てることができませんでした。
  *Primary_or_Standby* database failure for cluster *cluster_name*,指定されたノードでデータベースに障害が発生しました。
  Agent is timing out for cluster *cluster_name*,このエージェントは、ローカルデータベースに到達しようとしてタイムアウトしました。タイムアウトの後、エージェントはデータベースを正常にpingし、監視を再開しました。ただし、ノードをチェックして、データベースまたはエージェントに障害が発生する可能性を防ぐために、通常に実行されていることを確認します。
  Resume timed out for cluster *cluster_name*,このエージェントは、ローカルデータベースを再構成および再起動した後、監視を再開できませんでした。詳細については、エージェントログを参照してください。
  Internal state mismatch for cluster *cluster_name*,フェールオーバーマネージャークラスターの内部状態は、クラスターメンバーの実際の状態と一致しませんでした。これはまれで、ノードがクラスターに参加するか、状態を変更するタイミングの問題が発生する可能性があります。問題は解決される必要がありますが、確認のためにクラスターステータスもチェックしてください。不一致の詳細は、エージェントログファイルで見つけることができます。
  Failover has not occurred,エージェントは、プライマリデータベースがクラスター *cluster_name* で利用できないことを検出しましたが、フェールオーバーに使用できるスタンバイノードがありません。
  Failover has not occurred,エージェントは、プライマリデータベースがクラスター *cluster_name* で利用できないことを検出しましたが、フェールオーバーに使用できる十分なスタンバイノードがありません。
  Database in wrong state on *node_address*,スタンバイエージェントは、ローカルデータベースがもはや復旧していないことを検出しました。エージェントはIDLEになります。手動介入が必要です。
  Database in wrong state on *node_address*,プライマリエージェントは、ローカルデータベースが復旧していることを検出しました。エージェントはIDLEになります。手動介入が必要です。
  Database connection failure for cluster *cluster_name*,このノードは、 *node_address* で実行されているデータベースに接続できません。これが修正されるまで、このノードはデータベースが実行されているかどうかを確認できないため、フェールオーバーが適切に機能しない可能性があります。
  Standby custom monitor failure for cluster *cluster_name*,次のカスタム監視スクリプトは、スタンバイノードで失敗しました。エージェントはローカルデータベースの監視を停止します。スクリプトの場所 *script_name*  スクリプト出力 *script_results* 
  Primary custom monitor failure for cluster *cluster_name*,次のカスタム監視スクリプトは、プライマリノードで失敗しました。フェールオーバーマネージャーは、スタンバイを昇格させようとします。スクリプトの場所 *script_name*  スクリプト出力 *script_results* 
  Loopback address set for `ping.server.ip`,`ping.server.ip`プロパティにはループバックアドレスが設定されます。この設定はネットワーク分離検出を妨げる可能性があるため、変更する必要があります。
  Load balancer attach script error,ロードバランサー接続スクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* 
  Load balancer detach script error,ロードバランサー切断スクリプト *script_name* は、正常に実行できませんでした。終了値 *exit_code*  結果 *script_results* 
  Pgpool attach node error,フェールオーバーマネージャーはpgプールノードの接続に失敗しました。終了値 *exit_code* 。結果  *script_results* 
  Pgpool detach node error,フェールオーバーマネージャーはpgプールノードの切断に失敗しました。終了値 *exit_code* 。結果  *script_results* 
  Not enough synchronous standbys available in cluster *cluster_name*,クラスター内の同期スタンバイノードの数は *number* に減少しました。十分な同期スタンバイノードが追加されるまで、プライマリ上のすべての書き込みクエリーはブロックされます。
