zoukankan      html  css  js  c++  java
  • 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信息');
    
  • 相关阅读:
    MySQL(2)---Explain
    MySQL(1)---索引
    php 的 PHPExcel1.8.0 使用教程
    通过html5 的EventSource来进行数据推送
    centos6.6 下 安装 php7 按 nginx方式
    IIS PHP Warning: Unknown: open(c:\php\tmp\sess_xxx, O_RDWR) failed: Permission denied (13) in Unknown on line 0
    动态加载JS,并执行回调函数
    nginx 504 gateway time out
    php 账号不能同时登陆,当其它地方登陆时,当前账号失效
    php 函数中静态变量的问题
  • 原文地址:https://www.cnblogs.com/jkko123/p/6294555.html
Copyright © 2011-2022 走看看