本文实例讲述了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信息');