每次要一直找新的 PostgreSQL Log 檔名有點麻煩,在這裡作個很簡單的紀錄 ...
把下面這個 Shell Script 的資訊 PGUSER(登入帳號)、PGDATA(資料目錄)、PGDATABASE(登入的資料庫)然後執行,可以比較簡單的找出 Log 檔查看。
#!/bin/bash PGUSER=enterprisedb PGDATA=/opt/PostgresPlus/9.5AS/data PGDATABASE=edb LATEST_LOG="SELECT pg_ls_dir FROM pg_ls_dir('pg_log') ORDER BY (pg_stat_file('pg_log/' || pg_ls_dir)).modification DESC LIMIT 1;" CURRENT_PGLOG_FILE=(`psql -U PGUSER -d "${PGDATABASE}" -c "${LATEST_LOG}" --tuples-only`) tail -f $PGDATA/pg_log/$CURRENT_PGLOG_FILE
顯然,這個 Script 只有在資料庫有在運作的時候才有用處,資料庫要是是關掉的,這就派不上用場了。當然也可以把 Script 的 LATEST_LOG 變數換成在 Shell 裡面列舉最新的 Log 檔案就好了。
參考資料: