本文实例讲述了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文件操作总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
工具:Eclipse,Oracle,smartupload.jar;语言:jsp,Java;数据存储:Oracle。...
本文实例讲述了Laravel框架源码解析之反射的使用。分享给大家供大家参考,具体如...
Elasticsearch 是通过 Lucene 的倒排索引技术实现比关系型数据库更快的过滤。特...
正则忽略大小写 – RegexOptions.IgnoreCase 例如: 复制代码 代码如下: Str = R...
4月11日20:30~22:00通过腾讯会议进行了第二次在线学习讨论我把学习笔记整理一下...
上篇文章给大家介绍了 Java正则表达式匹配,替换,查找,切割的方法 ,接下来,...
复制代码 代码如下: % URL="http://news.163.com/special/00011K6L/rss_newstop....
错误描述: 在开发.net项目中,通过microsoft.ACE.oledb读取excel文件信息时,报...
项目中用到的一些特殊字符和图标 html代码 XML/HTML Code 复制内容到剪贴板 div ...
DELETEFROMTablesWHEREIDNOTIN(SELECTMin(ID)FROMTablesGROUPBYName) Min的话保...