linux下日志模块,linux:日志logger命令详解

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" 输出信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值