先從別的地方抄過來全部的解釋,如下:
**options (選項(xiàng)):** -d, --udp 使用數(shù)據(jù)報(bào)(UDP)而不是使用默認(rèn)的流連接(TCP) -i, --id 逐行記錄每一次logger的進(jìn)程ID -f, --file file_name 記錄特定的文件 -h, --help 顯示幫助文本并退出 -n, --server 寫入指定的遠(yuǎn)程syslog服務(wù)器,使用UDP代替內(nèi)裝式syslog的例程 -s, --stderr 輸出標(biāo)準(zhǔn)錯(cuò)誤到系統(tǒng)日志。 -t, --tag tag 指定標(biāo)記記錄 -u, --socket socket 寫入指定的socket,而不是到內(nèi)置系統(tǒng)日志例程。 -V, --version 顯示版本信息并退出 -P, --port port_num 使用指定的UDP端口。默認(rèn)的端口號是514 -p, --priority priority_level 指定輸入消息日志級別,優(yōu)先級可以是數(shù)字或者指定為 " facility.level" 的格式!
下面開始逐一實(shí)驗(yàn)每個(gè)參數(shù)的用法。
-d不清楚怎么使用
-i,記錄進(jìn)程id,隨便寫個(gè)小列子,代碼如下:
#!/bin/bash logger -i "this is a test --i" logger "this is a test --" sleep 100
在/var/log/messages文件中,會(huì)有如下記錄:
2018-03-27T10:54:17.838653+08:00|notice|root[9433]|this is a test --i 2018-03-27T10:54:17.839606+08:00|notice|root[-]|this is a test --
-f選項(xiàng)沒發(fā)現(xiàn)什么特別之處。
-n太復(fù)雜,暫時(shí)還沒有用到。
-s,輸出標(biāo)準(zhǔn)錯(cuò)誤,并且將信息打印到系統(tǒng)日志中。
linux-xdYUnA:/home/test/shell # logger -i -s "abc"
root[5105]: abc
在message日志中記錄如下:
2018-03-27T11:06:47.705041+08:00|notice|root[5105]|abc
注意:文字格式中的參數(shù)不要使用引號標(biāo)記,二夠造器函數(shù)的參數(shù)則要使用引號標(biāo)記。如果你要記錄更多的錯(cuò)誤日志或者自己要記錄一些系統(tǒng)級日志,您可以參看php的日志記錄函數(shù)error_log,記錄更多的日志,F(xiàn)在要求我們開發(fā)的記錄日志的組件,除了要支持?jǐn)?shù)據(jù)庫記錄和文本文件記錄兩種方式外,我們還需要在不同的應(yīng)用環(huán)境中增加一些額外的功能linux命令,比如需要記錄日志信息的錯(cuò)誤嚴(yán)重級別,需要記錄日志信息的優(yōu)先級別,還有日志信息的擴(kuò)展屬性等功能。
linux-xdYUnA:/home/test/shell # logger -i -t xingmuxin -s "this is a test" xingmuxin[23054]: this is a test linux-xdYUnA:/home/test/shell # logger -i -t "xingmuxin" -s "this is a test" xingmuxin[25200]: this is a test
linux-xdYUnA:/home/test/shell # logger -i -s "this a test"
root[16997]: this a test
上一個(gè)教程:Linux命令詳解之—less命令
下一個(gè)教程:Linux crontab命令詳解