您的位置:首页 > 运维架构 > Linux

linux日志logger命令详解

2017-01-23 10:55 381 查看
logger是一个shell命令接口,可以通过该接口使用Syslog的系统日志模块,还可以从命令行直接向系统日志文件写入一行信息。

----------------------------------------------------------

logger 语法

logger [options] [messages]
  **options (选项):**
    -d, --udp  

        使用数据报(UDP)而不是使用默认的流连接(TCP)

    -i, --id   

        逐行记录每一次logger的进程ID

    -f, --file file_name

        记录特定的文件

    -h, --help 

        显示帮助文本并退出

    -n, --server 

        写入指定的远程syslog服务器,使用UDP代替内装式syslog的例程

    -P, --port port_num

        使用指定的UDP端口。默认的端口号是514

    -p, --priority priority_level

        指定输入消息的优先级,优先级可以是数字或者指定为 "facility.level" 的格式。比如:"-p local3.info " local3 这个设备的消息级别为info。默认级别是 "user.notice"

    -s, --stderr

        输出标准错误到系统日志。

    -t, --tag tag

        指定标记记录

    -u, --socket socket

        写入指定的socket,而不是到内置系统日志例程。

    -V, --version

        现实版本信息并退出


**messages:**写入log文件的内容消息,可以与-f配合使用。

logger 以0退出表示成功,大于0表示失败。

日志级别

facility:
    auth:             用户授权

    authpriv:         授权和安全

    cron:             计划任务

    daemon:           系统守护进程

    kern:             与内核有关的信息

    lpr                与打印服务有关的信息

    mail               与电子邮件有关的信息

    news               来自新闻服务器的信息

    syslog             由syslog生成的信息

    user               用户的程序生成的信息,默认

    uucp               由uucp生成的信息

    local0~7           用来定义本地策略


level:
    alert          需要立即采取动作

    crit           临界状态

    debug          调试

    emerg          系统不可用

    err            错误状态

    error          错误状态

    info           正常消息

    notice         正常但是要注意


示例:

$ logger System Rebooted  #往系统日志例程中写入“System Rebooted”可在/var/log/syslog中查看

写入到指定的log文件中。



示例:
vim /etc/rsyslog.conf     #在最后一行加入local3.* /var/log/my_test.log   意思是来自local3的所有消息都记录到/var/log/my_test.log中。

service rsyslog restart   #重启rsyslog服务

logger -i -t "my_test" -p local3.notice "test_info" 

cat /var/log/my_test.log  
    May 5 21:27:37 gino-virtual-machine my_test[3651]: test_info

-i 在每行都记录进程ID

-t my_test每行记录都加上“my_test”这个标签

-p local3.notice 设置记录的设备和级别

"test_info"  输出信息

1。修改文件:

编辑syslog.conf,

vim /etc/syslog.conf

在第一行加入local3.none,使得设备local3的日志不记录在messages文件里,

# Log anything (except mail) of level info or higher.

# Don't log private authentication messages!

*.info;mail.none;authpriv.none;cron.none;local1.none;local3.none   /var/log/messages

将设备local3的所有级别的信息都记录在userlog文件里,

#user log

local3.*   /var/log/userlog

重新加载syslog服务的配置文件

[root@KEVEIN Slides]# service syslog restart

Reloading syslogd... [ OK ]

Reloading klogd... [ OK ]

2。测试

测试机器的环境:

OS:Red Hat Enterprise Linux 5 update 3

Network: 192.168.0.100/24  Gateway:192.168.0.1

[root@KEVEIN Slides]# ping 192.168.0.1 | logger -it logger_test -p local3.notice &

[2] 22484

命令logger -it logger_test -p local3.notice中的参数含义:

-i 在每行都记录进程ID

-t logger_test 每行记录都加上“logger_test”这个标签

-p local3.notice 设置记录的设备和级别

[root@KEVEIN Slides]# tail -f /var/log/userlog

Oct 6 12:48:43 kevein logger_test[22484]: PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.

Oct 6 12:48:43 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=1 ttl=253 time=49.7 ms

Oct 6 12:48:44 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=2 ttl=253 time=68.4 ms

Oct 6 12:48:45 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=3 ttl=253 time=315 ms

Oct 6 12:48:46 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=4 ttl=253 time=279 ms

Oct 6 12:48:47 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=5 ttl=253 time=347 ms

Oct 6 12:48:49 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=6 ttl=253 time=701 ms

Oct 6 12:48:50 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=7 ttl=253 time=591 ms

Oct 6 12:48:51 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=8 ttl=253 time=592 ms

Oct 6 12:48:52 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=9 ttl=253 time=611 ms

Oct 6 12:48:53 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=10 ttl=253 time=931 ms

ping命令的输出成功输出到/var/log/userlog文件中,实验成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: