Azure PostgreSQL のチェックポイントログが無効

Azure PostgreSQL のチェックポイントログで書き込み負荷や性能問題を調査します。

説明

log_checkpoints を無効にすると、チェックポイントやリスタートポイントの実行時間、バッファーの書き込みなどの診断情報が減ります。チェックポイント自体が停止するわけではありません。

想定される影響

ディスク I/O の急増や性能低下の原因を追跡しにくくなります。障害調査やデータベースの調整に必要な運用情報が不足し、対応に時間がかかるおそれがあります。

対処方法

現在の Flexible Server で log_checkpoints を on にしてください。実際のログ収集と保持期間を確認し、ログへのアクセス権限を制限してください。クエリ監査など、別の目的のログは別途構成してください。

例

変更前はサポートが終了した Single Server の過去の構成です。変更後の MyDBServer1 は別途準備した Flexible Server を指し、親の宣言とデータ移行は省略しています。

変更前

bicep
resource MyDBServer1_log_checkpoints 'Microsoft.DBforPostgreSQL/servers/configurations@2017-12-01' = {
  parent: MyDBServer1
  name: 'log_checkpoints'
  properties: {
    value: 'off'
  }
}

チェックポイントの診断ログを無効にした設定です。

変更後

bicep
resource MyDBServer1_log_checkpoints 'Microsoft.DBforPostgreSQL/flexibleServers/configurations@2024-08-01' = {
  parent: MyDBServer1
  name: 'log_checkpoints'
  properties: {
    source: 'user-override'
    value: 'on'
  }
}

チェックポイントログを有効にしています。設定を適用した後、収集したログに実行時間や書き込みの情報が含まれることを確認してください。

参考資料