サーバーのログの使い方
サーバーで起きたことを読む
書き方
\! tail -n 20 log/postgresql.log \! grep FATAL log/postgresql.log ALTER SYSTEM SET log_connections = 'on'; ALTER SYSTEM SET log_min_duration_statement = '100ms';
logging_collector が on だと、ログは $PGDATA の log_directory(log)の log_filename に書かれます。接続に失敗した本当の理由(パスワードが違う・期限切れなど)は、相手には見せずにログの DETAIL にだけ出ます。log_connections・log_disconnections で接続を、log_min_duration_statement で遅い SQL を記録できます。エラーになった SQL は STATEMENT に出ます。
例
\! tail -n 5 log/postgresql.log \! grep DETAIL log/postgresql.log
実際に打って練習する
PostgreSQL DBA コースの Lv21「サーバーのログを読む」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
すべてのレベルが、プラチナ以上のプランで遊べます。