php如何将日志写进syslog
来源:互联网 发布:邓老师c语言视频教程 编辑:程序博客网 时间:2024/06/06 16:27
在做项目的时候们为了方便运维,我们经常需要将系统日志写入系统syslog,下边我们就介绍一下,在linux下php对syslog的操作:
- 在linux中配置syslog
AUTH 普通安全/授权消息
AUTHPRIV 私有安全/授权消息
CRON 定时器进程
DAEMON 守护进程
KERN 内核消息
LOCAL0
...LOCAL7
本地应用,在windows上不支持LPR 行式打印机
MAIL 邮件服务
NEWS 新闻服务
SYSLOG 由syslogd内部产生的消息
USER 通用的用户级信息
UUCP UUCP子系统
vim syslog.conf
,打开syslog的配置文件
在这里,你可以看到syslog的所有配置信息,这里定义了在上一节中提到的每种日志类型存储日志所使用的条件,如:
daemon.* -/var/log/daemon.log
定义了daemon所产生的日志的保存位置,其中daemon为日志类型,“*”代表将所有级别的日志都放到该文件。格式为:
facility。level -日志文件保存的路径,如-/var/log/daemon.log
level包括:
- emerg -该系统不可用
- alert -需要立即被修改的条件
- crit -阻止某些工具或子系统功能实现的错误条件
- err -阻止工具或某些子系统部分功能实现的错误条件
- warning -预警信息
- notice -具有重要性的普通条件
- info -提供信息的消息
- debug -不包含函数条件或问题的其他信息
- none -没有重要级,通常用于排错
- * 所有级别,除了none
接下来执行命令/etc/init.d/sysklogd restart或/etc/init.d/sysklogd reload使新增的配置生效,下面我们可以测试新增的日志规则了:
1.输入命令 logger -p local4.info " my test log"
2.执行命令 tail /var/log/event_log.log
你可以看到自己写入的日志信息:
注意:syslog.conf中local4.info 代表所有info级别以及以上的日志会记录到这里
ok,到现在我们已经在ubuntu中设置好了我们需要的日志,下面我们用php中的syslog将日志写到ubuntu中的syslog中。
下面直接上php代码:
openlog("Event1.0", LOG_PID | LOG_PERROR, LOG_LOCAL4);syslog($level, "LOG MESSAGE: " . $errinfo);closelog();以上各方法的具体用法请查看PHP的API,具体用法不在这里赘述。
其中openlog的第一个参数,是日志标识,该标识会自动加在日志信息的开始,用来表示是什么系统写入的日志。
由于我们想要将日志写入local4.info,所以第三个参数需使用LOG_LOCAL4,该参数表示写入日志的设备信息。
syslog中$level为日志级别,包括:
- LOG_EMERG system is unusable
- LOG_ALERT action must be taken immediately
- LOG_CRIT critical conditions
- LOG_ERR error conditions
- LOG_WARNING warning conditions
- LOG_NOTICE normal, but significant, condition
- LOG_INFO informational message
- LOG_DEBUG debug-level message
第二个参数为具体的日志内容。
- php如何将日志写进syslog
- 将log4j日志写入syslog
- syslog写远端日志超时问题
- 将log4j日志写入Linux syslog
- 用LINUX+SYSLOG-NG+PHP-SYSLOG-NG搭建日志服务器
- 利用syslog将日志写入远端日志服务器
- log4j 写错误等告警日志到syslog中
- log4j将日志写进数据库详解
- MariaDB Audit Plugin 将日志保存到 syslog
- 在chroot环境下将MySQL日志输出到syslog
- 配置log4j和logback将日志记录到syslog
- 如何将Unicode文本写到日志文件中
- 如何将Unicode文本写到日志文件中
- 日志-syslog系统日志
- php写错误日志
- PHP写日志
- PHP写文本日志
- php 写日志
- bit_map数据结构
- shell学习资料:shell十三问
- MFC+MSChart动态显示曲线
- 添加Redo log Member/Group
- 重装Win7时提示“缺少所需的CD/DVD驱动器设备驱动程序”
- php如何将日志写进syslog
- C#文件夹路径获得
- Android如何防止apk程序被反编译
- jquery knockout
- 伪静态的介绍和配置
- Collapsing Margins
- Android APK反编译详解(附图)
- ObReferenceObjectByName蓝屏问题
- 黑马程序员_Java基础-02