Linux
將從 bash 腳本呼叫的 php 腳本的輸出發送到 syslog
將從 bash 腳本呼叫的 php 腳本的輸出發送到 syslog
我試圖創建一個呼叫 php 文件(我還沒有創建)的 bash 腳本(由 cron 作業呼叫)。呼叫 php 文件很容易。php 腳本向 stdout 輸出了很多東西,我想將 php 腳本的輸出重定向到記錄器,以便我可以監控遠端 syslog 伺服器中的進度。
我試過類似的東西:
`PHP_SCRIPT_PATH="/some/path"
ME=
basename $0
LOGGER=“logger -p cron.notice -t $ME”
cd $PHP_SCRIPT_PATH
php the_php_script.php &> eval $LOGGER`
也嘗試過:
php the_php_script.php | eval $LOGGER
但都不起作用。
我考慮過的另一種可能的解決方案是將 php 腳本的輸出通過管道傳輸到日誌文件,然後讓另一個 bash 腳本讀取該文件並將每一行寫入記錄器。但我想有一個腳本可以做所有事情:)
有人可以幫忙嗎?
您的呼叫
logger
失敗,因為$LOGGER
不是命令。試試這個:LOGGER=logger LOGGER_OPTS="-p cron.notice -t $ME" php whatever.php | $LOGGER $LOGGER_OPTS