0
0

More than 1 year has passed since last update.

RDS for PostgreSQLの監査ログで取得行数を出力する

Last updated at Posted at 2023-08-03

こんにちは。インサイトテクノロジーの松尾です!

さて、本記事では RDS for PostgreSQL の監査ログ (pgaudit) で select などが実行された際の取得行数を出力する方法を紹介します!

PostgreSQL 15 から可能になった pgaudit での取得行数出力

実は PostgreSQL 14 以前の pgaudit では、取得行数を監査ログへ出力することができませんでした。そのため監査ログで select 文が出力されていても、その select 文でどれくらい大量のデータが返されたかを監査ログからは確認できませんでした。

PostgreSQL 15 では pgaudit のオプションとして取得行数を出力するオプションが追加されました。ラメータは pgaudit.log_rows です。オプションです。デフォルトでは無効になっています。

pgaudit.log_rows

Specifies that audit logging should include the rows retrieved or affected by a statement. When enabled the rows field will be included after the parameter field.

The default is off.

参考) https://github.com/pgaudit/pgaudit#pgauditlog_rows

RDS for PostgreSQL で使用する場合には、パラメータグループで設定します。では早速有効にしてみましょう!

RDS for PostgreSQLでのpgaudit.log_rows設定

※ちなみに Aurora PostgreSQL の PostgreSQL 15 互換バージョンでは未対応のようです。

取得行数の出力

有効にして出力してみた結果です。
RDS for PostgreSQLでのpgaudit.log_rows出力

説明にあるよう、後ろの方に 14 という取得行数が出力されていますね!

おわりに

本記事では RDS for PostgreSQL 15 の監査ログ (pgaudit) で select などが実行された際の取得行数を出力する方法を紹介しました。本文中にも記載しましたが、Aurora の PostgreSQL 15 互換バージョンではまだ対応していないようです。対応が待ち遠しいですね!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0