日志记录工具

日志是每个项目中必不可少的,通过日志的分析,可以方便用户了解系统或软件、应用的运行情况,从而帮助我们完善系统。
目前功能比较全面的第三方PHP开源日志框架有Monolog、SeasLog、log4php等,其中以log4php最为著名,设计精良、格式完美、文档完善、功能强大;Monolog功能较全而且易于扩展,被集成在很多PHP开源框架之中;SeasLog功能也很强大并且有着C语言般的卓越性能,而且是国人所创。当然还有很多小巧实用的开源日志框架,如KLogger,简单易用,很适合小项目中使用。
Monolog
Monolog是php下比较全又容易扩展的记录日志组件。目前有包括Symfony 、Laravel、 CakePHP等诸多知名php框架都内置了Monolog。
Monolog可以把你的日志发送到文件,sockets,收件箱,数据库和各种web服务器上。一些特殊的组件可以给你带来特殊的日志策略。
每个Logger实例都有一个通道和日志处理器栈。每当你添加一条日志记录,它会被发送到日志处理器栈。 你可以创建很多Logger,每个Logger定义一个通道(db,请求,路由),每个Logger有很多日志处理器。这些通道会过滤日志。
每个日志处理器都有一个Formatter(内置的日志显示格式处理器)。你还可以设定日志级别。
日志级别
– DEBUG:详细的debug信息
– INFO:感兴趣的事件。像用户登录,SQL日志
– NOTICE:正常但有重大意义的事件。
– WARNING:发生异常,使用了已经过时的API。
– ERROR:运行时发生了错误,错误需要记录下来并监视,但错误不需要立即处理。
– CRITICAL:关键错误,像应用中的组件不可用。
– ALETR:需要立即采取措施的错误,像整个网站挂掉了,数据库不可用。这个时候触发器会通过SMS通知你。
SeasLog
SeasLog是用C语言编写的PHP扩展库,功能强大而且性能极高,但是需要把它集成配置到php.ini,使用之前的准备工作稍有些烦琐。
SeasLog功能非常丰富,基本能满足大项目日志系统的各项需求
– 分模块、分级别
– 配置简单
– 日志格式清晰易读
– 应用简单、性能很棒
– 便捷、规范的log记录
– 高效的海量log分析
– 可配置、多途径的log预警
– 可配置的默认log目录与模块
– 指定log目录与获取当前配置
– 初步的分析预警框架
– 高效的日志缓冲、便捷的缓冲debug
– 遵循 PSR-3 日志接口规范
– 自动记录错误信息
– 自动记录异常信息
– 连接TCP端口发送
– 连接UDP端口发送
 
seaslog的安装 
//1.下载扩展
wget http://pecl.php.net/get/SeasLog-1.6.8.tgz

//2.解压文件
tar -zxvf SeasLog-1.6.8.tgz


//3.编译
phpize  产生一个configure文件

//4. 检测
./configure--with-php-config=/usr/bin/php-config
//--with-php-config 自己的配置文件

//5. 安装
make && make install

//6. 在php.ini文件中配置SeasLog信息
extension=seaslog.so


//其他参数也可以进行配置,需要的可以查看官网进行相应的配置
easlog.default_basepath
 = /var/log/

seaslog.default_logger
 = default

seaslog.disting_type
 = 1

seaslog.disting_by_hour
 = 1

seaslog.use_buffer
 = 1

seaslog.buffer_size
 = 100

seaslog.level
 = 0

seaslog.trace_error
 = 1

seaslog.trace_exception
 = 0

seaslog.default_datetime_format
 = "%Y:%m:%d %H:%M:%S"

//7.重启服务器
service nginx reload
or
service php-fpm reload

 

 
个人观点:
Monolog:大项目首选推荐,基本需要的功能都有。
SeasLog:如果你特别在意日志的性能问题,并且不嫌组件库配置麻烦,就选择SeasLog,大项目中可以尝试,小项目就算了,别折腾。
Log4php:不推荐使用,官方基本已经不更新了,如果你非常熟悉log4j,倒是可以尝试使用。
KLogger:如果你只需要记录一下debug、info、notice之类的信息而不需要做其它进一步处理,强烈推荐KLogger。

转载于:https://www.cnblogs.com/xingxia/p/php_logs.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值