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 相关文章推荐
桌面中心(三)修改数据库
Oct 09 PHP
php5数字型字符串加解密代码
Apr 24 PHP
php 如何获取数组第一个值
Aug 06 PHP
php教程之魔术方法的使用示例(php魔术函数)
Feb 12 PHP
php操作mysql数据库的基本类代码
Feb 25 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
php Imagick获取图片RGB颜色值
Jul 28 PHP
PHP中单引号与双引号的区别分析
Aug 19 PHP
PHP验证终端类型是否为手机的简单实例
Feb 07 PHP
php实现的读取CSV文件函数示例
Feb 07 PHP
lnmp安装多版本PHP共存的方法详解
Aug 02 PHP
php上传后台无法收到数据解决方法
Oct 28 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
php数组生成html下拉列表的方法
2015/07/20 PHP
PHP中使用curl伪造IP的简单方法
2015/08/07 PHP
php 字符串中是否包含指定字符串的多种方法
2018/04/12 PHP
PHP中strtr与str_replace函数运行性能简单测试示例
2019/06/22 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
Prototype使用指南之dom.js
2007/01/10 Javascript
Node.js开发指南中的简单实例(mysql版)
2013/09/17 Javascript
JS实现在网页中弹出一个输入框的方法
2015/03/03 Javascript
原生javascript 学习之js变量全面了解
2016/07/14 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
Bootstrap基本组件学习笔记之进度条(15)
2016/12/08 Javascript
JS实现留言板功能[楼层效果展示]
2017/12/27 Javascript
微信小程序App生命周期详解
2018/01/31 Javascript
es6函数中的作用域实例分析
2020/04/18 Javascript
express异步函数异常捕获示例详解
2020/11/30 Javascript
在Python的Django框架中编写编译函数
2015/07/20 Python
python 添加用户设置密码并发邮件给root用户
2016/07/25 Python
python使用tornado实现简单爬虫
2018/07/28 Python
python学习之hook钩子的原理和使用
2018/10/25 Python
Python实现深度遍历和广度遍历的方法
2019/01/22 Python
python反编译学习之字节码详解
2019/05/19 Python
python通过http下载文件的方法详解
2019/07/26 Python
Python使用GitPython操作Git版本库的方法
2020/02/29 Python
PyQt5事件处理之定时在控件上显示信息的代码
2020/03/25 Python
什么是python的必选参数
2020/06/21 Python
Python爬虫爬取博客实现可视化过程解析
2020/06/29 Python
澳大利亚婴儿、幼儿和儿童在线设计师商店:Smooch Baby
2019/02/16 全球购物
专升本个人自我评价
2013/12/22 职场文书
大学运动会入场词
2014/02/22 职场文书
感恩父母的演讲稿
2014/05/06 职场文书
校园环保建议书
2014/05/14 职场文书
电气工程及其自动化专业求职信
2014/06/23 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
python自动统计zabbix系统监控覆盖率的示例代码
2021/04/03 Python
Go语言安装并操作redis的go-redis库
2022/04/14 Golang