postgres で bytea リクエストのログ記録を無効にする (または削除する)

postgres で bytea リクエストのログ記録を無効にする (または削除する)

私たちのアプリケーションは、30 分ごとに別のデータベースに大きな BLOB (bytea) を保存します。これは問題ありませんし、次のように保存したいのですが、ログが異常に記録されます。

2021-01-25 11:11:00 UTC postgres109432 INSERT DETAIL: パラメータ: $1 = '127.0.0.1'、$2 = '\x0101006a6176612e7574696c2e486173684d61f0019db7320101636f6d2e777a2e7461636f2e6267702e666565642e636f6c6c6563746f722e646f6d61696e2e5072656669f801013139322e34392e3134362e302f32b40102636f6d2e777a2e7461636f2e6267702e666565642e636f6c6c6563746f722e646f6d.... (ここでは数百メガバイト)。

postgres の bytea ログをトリミングまたは無効にする方法はありますか?

答え1

log_parameter_max_lengthログ設定で設定を行う必要があります。

見る詳しくは、https://www.postgresql.org/docs/13/runtime-config-logging.html をご覧ください。 ログ設定変数がどのように相互作用するかについて詳しく説明します。

おそらく、ログ レベルを変更して、このエラーを解消することもできます。ただし、そのルートを通じてデータが公開される可能性があるため、完全なパラメータをログに記録する場合は注意が必要です。

関連情報