Logs
如何使奇偶校驗寫入日誌?
我正在執行一個奇偶校驗超級節點,最近從 geth 切換,因為奇偶校驗似乎表現得更好,即使在
archive
模式下也是如此。要記錄 geth 的標準輸出,我曾經執行:
geth [options] console 2>>/tmp/geth.log
我嘗試執行類似的奇偶校驗命令,但它不會記錄標準。
~ $ parity --help | grep -A1 log -l --logging LOGGING Specify the logging level. Must conform to the same format as RUST_LOG.
原生地,奇偶校驗允許設置日誌級別。但是我怎樣才能讓奇偶校驗實際寫入日誌?
將 Stderr 和 Stdout 發送到日誌文件
如果要在每次啟動命令時覆蓋日誌文件:
parity [options] > /tmp/parity.log 2>&1
如果要在每次啟動命令時附加到日誌文件:
parity [options] >> /tmp/parity.log 2>&1
查看輸出時將 Stderr 和 Stdout 發送到單獨的日誌文件
如果您想在控制台上查看輸出時將 stderr 和 stdout 記錄到單獨的日誌文件中:
parity [options] > >(tee stdout.log) 2> >(tee stderr.log >&2)
參考如何在使用帶有管道的“tee”時將 stderr 寫入文件?.
如果要創建腳本文件來執行此命令,則必須在文件的第一行使用
#!/bin/bash
(而不是),因為此重定向是特定於 bash 的:#!/bin/sh
#!/bin/bash cd $HOME/Parity parity [options] > >(tee stdout.log) 2> >(tee stderr.log >&2)
將以上內容保存到
$HOME/bin/runParity
中,chmod 700 $HOME/bin/runParity
然後您可以鍵入runParity
(或$HOME/bin/runParity
)來啟動它。