php高性能日志系统 seaslog 的安装与使用方法分析


Posted in PHP onFebruary 29, 2020

本文实例讲述了php高性能日志系统 seaslog 的安装与使用方法。分享给大家供大家参考,具体如下:

一、什么是日志系统

    一般用于记录系统运行时的信息,一般分为三类:系统日志,应用程序日志,安全日志。日志功能不能影响用户的正常使用。

二、为什么需要日志功能

    1、了解系统运行情况
    2、记录用户操作信息
    3、收集数据

三、为什么选seaslog

    1、高性能(使用C语言)
    2、无需配置
    3、功能完善,使用简单

四、安装seaslog

下载seaslog,根据自已的系统和PHP版本选择,我这里选择windows的php7.0线程安全版本

https://pecl.php.net/package/SeasLog

解压压缩包,把php_seaslog.dll放到php下的ext目录。

修改php.ini文件,添加如下代码

extension=php_seaslog.dll

然后重启服务器,查看phpinfo(),如果有seaslog信息,则说明安装成功。

当然seaslog还有一些基本配置项

;默认log根目录
seaslog.default_basepath = "E:/logs"
;默认logger目录
seaslog.default_logger = default
;是否以type分文件 1是 0否(默认)
seaslog.disting_type = 1
;是否每小时划分一个文件 1是 0否(默认)
seaslog.disting_by_hour = 1
;是否启用buffer 1是 0否(默认)
seaslog.use_buffer = 1
;buffer中缓冲数量 默认0(不使用buffer_size)
seaslog.buffer_size = 100
;记录日志级别 默认0(所有日志)
seaslog.level = 0
;自动记录错误 默认1(开启)
seaslog.trace_error = 1
;自动记录异常信息 默认0(关闭)
seaslog.trace_exception = 0
;日期格式配置 默认"Y:m:d H:i:s"
seaslog.default_datetime_format = "Y:m:d H:i:s"
;日志存储介质 1File 2TCP 3UDP (默认为1)
seaslog.appender = 1
;接收ip 默认127.0.0.1 (当使用TCP或UDP时必填)
seaslog.remote_host = 127.0.0.1
;接收端口 默认514 (当使用TCP或UDP时必填)
seaslog.remote_port = 514

五、seaslog常用方法

配置方法:

setBasePath
getBasePath
setLogger
getLastLogger

写日志方法:

log
info
notice
debug
warning
error

读日志方法:

analyzerCount
analyzerDetail

常用方法使用:

<?php
 
//获取根目录
SeasLog::getBasePath();
//设置根目录
//SeasLog::setBasePath('D:/logs');
 
//不同的模块,设置不同目录
SeasLog::setLogger('Admin');
 
//这条语句会在D:/logs/Admin下生成
//debug.2016122512.log文件
//文件内容为:
//debug | 9552 | 1482641146.119 | 2016:12:25 12:45:46 | 这是一条debug信息
//日志类型 | php进程id | 精确到毫秒的时间戳 | 格式化好的时间 | 内容
SeasLog::debug('这是一条debug信息');
SeasLog::info('这是一条info信息');
 
//统计日志数量
$tmp = SeasLog::analyzerCount('all');
print_r($tmp);
 
//查看日志详情
$tmp = SeasLog::analyzerDetail('debug');
print_r($tmp);
 
//通过日志记录函数
SeasLog::log('debug', '这是一条debug信息');

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP默认安装产生系统漏洞
Oct 09 PHP
一个简单实现多条件查询的例子
Oct 09 PHP
PHP 实现多服务器共享 SESSION 数据
Aug 15 PHP
PHP5.3.1 不再支持ISAPI
Jan 08 PHP
探讨多键值cookie(php中cookie存取数组)的详解
Jun 06 PHP
php命令行用法入门实例教程
Oct 27 PHP
php图片上传类 附调用方法
May 15 PHP
php中引用符号(&amp;)的使用详细介绍
Dec 06 PHP
PHP实现登陆表单提交CSRF及验证码
Jan 24 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
Aug 03 PHP
php服务器的系统详解
Oct 12 PHP
PHP如何通过date() 函数格式化显示时间
Nov 13 PHP
PHP中关于php.ini参数优化详解
Feb 28 #PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 #PHP
php 的多进程操作实践案例分析
Feb 28 #PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
Feb 28 #PHP
php的无刷新操作实现方法分析
Feb 28 #PHP
php下的原生ajax请求用法实例分析
Feb 28 #PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
Feb 27 #PHP
You might like
推荐文章系统(一)
2006/10/09 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
详解php伪造Referer请求反盗链资源
2019/01/24 PHP
javascript getElementsByClassName函数
2010/04/01 Javascript
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
关于setInterval、setTimeout在jQuery中的使用注意事项
2011/09/28 Javascript
解析ScrollPic在ie8下只滚动一遍,然后变为空白 ie6,ie7,chrome,firefox正常
2013/06/26 Javascript
jquery批量控制form禁用的代码
2013/08/06 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
Jquery日历插件制作简单日历
2015/10/28 Javascript
window.location.reload 刷新使用分析(去对话框)
2015/11/11 Javascript
javaScript中的原型解析【推荐】
2016/05/05 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
js实现鼠标拖拽多选功能示例
2017/08/01 Javascript
浅谈Vue.js中的v-on(事件处理)
2017/09/05 Javascript
ES6中Array.find()和findIndex()函数的用法详解
2017/09/16 Javascript
vue页面切换过渡transition效果
2018/10/08 Javascript
JS根据Unix时间戳显示发布时间是多久前【项目实测】
2019/07/10 Javascript
vue自定义树状结构图的实现方法
2020/10/18 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
python选择排序算法实例总结
2015/07/01 Python
python3中替换python2中cmp函数的实现
2019/08/20 Python
OpenCV+face++实现实时人脸识别解锁功能
2019/08/28 Python
Python的控制结构之For、While、If循环问题
2020/06/30 Python
详解CSS3浏览器兼容
2016/12/14 HTML / CSS
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
计算机专业毕业生自荐信范文
2014/03/06 职场文书
综艺节目策划方案
2014/06/13 职场文书
超市创意活动方案
2014/08/15 职场文书
2014年学校党建工作总结
2014/11/11 职场文书
2014年领导班子工作总结
2014/12/11 职场文书
小学教师先进事迹材料
2014/12/15 职场文书
2015共产党员公开承诺书
2015/01/22 职场文书
Python机器学习之决策树和随机森林
2021/07/15 Javascript
vue生命周期钩子函数以及触发时机
2022/04/26 Vue.js