Configuration

如何防止 PostgreSQL 儲存過程的日誌輸出?

  • January 13, 2011

我正在執行一些用於產生過多日誌輸出的 PostgreSQL 腳本。--quiet通過將參數作為參數傳遞給 psql 命令行客戶端並添加SET client_min_messages='warning';到我的 SQL 腳本的開頭,我設法將大部分輸出減少到可接受的數量。

這適用於大多數基本語句,如 SELECT、INSERT、UPDATE 等。)但是,當我使用 eg 在腳本中呼叫儲存函式時SELECT my_func(my_args);,仍然有類似的日誌輸出

my_func

(這裡省略了很多“-”,因為 SF 認為這是一個標題)

(1 row)

輸出沒用;它只會讓我不得不在腳本執行後向後滾動很長一段時間,並且比發現任何相關的錯誤輸出變得更加困難。

我怎樣才能擺脫它?

由於您似乎是從 psql 執行腳本,所以您可以這樣做

copy ( select my_func(my_args) ) to stdout;

甚至

\copy ( select my_func(my_args) ) to /dev/null

您可以在 psql 命令行上指定“-A -t”以將所有查詢語句的輸出全域靜音到一行。

任何一個

\o /dev/null
SELECT my_func(my_args);

或者

SELECT my_func(my_args) \g /dev/null

引用自:https://serverfault.com/questions/221874