Azure PostgreSQL の切断ログが無効

切断ログを使い、PostgreSQL セッションの終了時刻と継続時間を調査してください。

説明

log_disconnections はセッション終了時に記録を残し、セッションの継続時間も含めます。接続ログと併用すると、セッションの動きを調べやすくなります。このログだけですべての切断原因が分かるわけではありません。

想定される影響

  • セッションの終了時刻を追跡しにくくなる場合があります。
  • 接続障害や不審なセッションの調査資料が不足する場合があります。

対処方法

Flexible Server の log_disconnections を on に設定し、必要な接続ログも構成してください。実際のセッション終了時にログが保存されることを確認し、適切な保存期間とアクセス権限を設定してください。

例

変更前は終了した Single Server のパラメーターです。変更後は既存の Flexible Server で切断ログを有効にする抜粋例です。

変更前

hcl
resource "azurerm_postgresql_configuration" "example" {
  name                = "log_disconnections"
  resource_group_name = data.azurerm_resource_group.example.name
  server_name         = azurerm_postgresql_server.example.name
  value               = "OFF"
}

変更後

hcl
resource "azurerm_postgresql_flexible_server_configuration" "example" {
  name      = "log_disconnections"
  server_id = azurerm_postgresql_flexible_server.example.id
  value     = "on"
}

変更後はセッションの終了を記録します。エラーログなど他の資料と併せて分析し、終了原因を調査してください。

参考資料