热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

写进syslog_解析php如何将日志写进syslog

关注微信公众号PHP技术大全每天精彩分享不间断在做项目的时候们为了方便运维,我们经常需要将系统日志写入系统syslog,下边我们就介绍一下,

关注微信公众号

PHP技术大全

每天精彩分享不间断

在做项目的时候们为了方便运维,我们经常需要将系统日志写入系统syslog,下边我们就介绍一下,在linux下php对syslog的操作:在linux中配置syslog

在linux中,facility(设备)有以下几种:AUTH 普通安全/授权消息

AUTHPRIV 私有安全/授权消息

CRON 定时器进程

DAEMON 守护进程

KERN 内核消息

LOCAL0 ... LOCAL7  本地应用,在windows上不支持

LPR  行式打印机

MAIL  邮件服务

NEWS  新闻服务

SYSLOG  由syslogd内部产生的消息

USER  通用的用户级信息

UUCP  UUCP子系统

登录linux系统,进入/etc目录,输入:

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

下面我们在配置文件中定义一个自己设备的日志规则:local4.info   -/var/log/

接下来执行命令/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技术大全,成长不止一点点!

分享出去,让知识地带无限蔓延!



推荐阅读
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了Arction客户案例——LightningChart被集成到BodeAnalyzerSuite中!相关的知识,希望对你有一定的参考价值。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • tomcat的log文件夹下有以下几种日志:1、catalina.YYYY-MM-DD.logcatalina引擎输出的日志;catalina是tomc ... [详细]
author-avatar
tina1314520hqg_552
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有