説明
PostgreSQLのサーバーログが必要な期間保存されていないと、接続の問題、クエリエラー、異常な動作を後から調べることが難しくなります。収集対象と保持期間を定め、実際に記録が残っていることを確認する必要があります。
Azure Database for PostgreSQL Single Serverは2025年3月28日にサポートが終了しました。現在のFlexible Serverでは、logfiles.download_enableでダウンロード可能なサーバーログを有効にします。logfiles.retention_daysの範囲は1~7日で、既定値は3日です。より長い保持が必要な場合は、診断設定を使って適切な保存先へエクスポートしてください。
想定される影響
- 必要なデータベースイベントが削除され、監査やインシデント調査の証拠が不足するおそれがあります。
- 障害や異常な動作の原因特定に時間がかかる場合があります。
対処方法
- 使用しているサーバーの種類でサポートされるログ収集機能と保持設定を確認してください。
- 調査と運用の要件に合う期間を定め、長期保存先の保持ポリシーも設定してください。
- ログの到着と最も古い記録を確認し、ログへのアクセス権限と保存コストを管理してください。
例
以下は、サポートが終了したSingle Serverのazurerm_postgresql_configurationを使う過去の設定抜粋です。log_retentionの値の違いを示しており、現在のFlexible Serverへそのまま適用する例ではありません。
変更前
hcl
resource "azurerm_postgresql_configuration" "example" {
name = "log_retention"
resource_group_name = data.azurerm_resource_group.example.name
server_name = azurerm_postgresql_server.example.name
value = "OFF"
}
変更後
hcl
resource "azurerm_postgresql_configuration" "example" {
name = "log_retention"
resource_group_name = data.azurerm_resource_group.example.name
server_name = azurerm_postgresql_server.example.name
value = "ON"
}
過去の設定値を変更するだけでは、現在のサービスの長期保持は構成されません。サーバーの種類に合った設定と、実際のログ保存先の保持期間を確認してください。