ThinkPHP 接入 SeasLog 日志组件

【背景】


为实现开发前期联调bug 定位、线上bug快速定位、快速响应,遂暂为斐讯路由后台 Api 模块添加日志记录支持。

【SeasLog 简介】


1. 国产log组件
2. 简洁配置

3.应用简单、性能强劲
4.分模块、分级别记录日志。
   分模块:如斐讯路由后台分为 Api 模块、后台Admin模块。
   分级别:支持8种日志记录级别,对斐讯路由后台来说日志记录级别定义为—debug、info、emergency 即可。
5.日志记录策略:日志->内存->文件
更详细介绍,github主页:https://github.com/Neeke/SeasLog

【SeasLog安装流程】


 1.打开网址 http://pecl.php.net/
 2.选择seaslog 并点击获取箭头
2836699-35ca6ce40369d0ab.png
09BF40A1-1A0C-4BF8-8589-8E690F97922B.png
3.点击seaslog
2836699-48c69df592dcb26c.png
770A85EE-4100-4C46-BA92-E80842B06D51.png

4.下载最新版本SeasLog

2836699-a7854e70a2a521cd.png
3401D24C-3075-467F-A9C1-BE9E23ED2D05.png

5.安装php seaslog 扩展
5.1解压压缩包

2836699-ae861f881255cfff.png
EDCC1B98-A9E4-465D-89E4-9C22475AB90F.png

5.2使用phpize 编译安装seaslog 外挂模块
什么是phpize?链接如下:http://blog.csdn.net/czhphp/article/details/68067324

2836699-cc8e33c8535f316f.png
C91A3F7A-227F-4E80-8992-49C9D122A7F5.png

由上至下之行前两个命令,执行完phpize 命令之后,会看到文件夹下多出了 configure 文件夹

5.3执行如下命令 ./configure — with-php-config=(服务器上php安装路径)/usr/local/php/bin/php-config
“=” 后面的路径为本地php-config 目录


2836699-a85c33691bce2de3.png
074D8E5A-59B8-48FB-B0EE-2F28557447DA.png

5.4执行如下命令 make && make install 编译 SeasLog 模块

2836699-456d8f4043ffb701.png
F1A69EF8-776E-4E3A-84D2-B515268E9E59.png

5.5 安装成功,安装成功之后,扩展模块所在文件路径如下图所示
/usr/local/Cellar/php55/5.5.38_11/lib/php/extensions/no-debug-non-zts-20121212/ 本机

2836699-12fab8255aa3c44f.png
E54236A9-7D7F-4C33-82EB-0D4423B651DE.png

5.6在php.ini 中配置 seaslog.so 扩展,应该是在etc文件夹下


2836699-efd918b4f4139d6c.png
8DBF1CE2-CBEA-47DD-8A56-16207B849913.png

5.7 重启php应用服务器

5.8 验证 seaslog有没有安装成功,访问phpInfo.php 文件

2836699-da859d5f30ed4680.png
B30137BC-6914-4FD3-B9B1-FAC9C1B724EC.png

SeasLog 为国产日志软件,支持!
gitHub 地址:https://github.com/Neeke/SeasLog
作者自述:https://github.com/Neeke/SeasLog/blob/master/README.md

5.9 在 php.ini 中配置 seaslog 基础配置
关于 SeasLog 的配置跟统一开发环境一致。

5.10 重新访问php info 看是否配置成功

【现阶段SeasLog实践情况】


已在统一开发环境实现斐讯路由App 5.0.0 新增接口的日志记录。
若测试环境配置通过,可立即接入。

【SeasLog 对 接口响应性能的影响】


理论上SeasLog 对接口响应时间肯定会有延迟影响。

但因SeasLog 对应用系统产生的日志是先写入存储到内存,当内存中写入的日志达到阀值(内存中日志达到1000行刷新一次,一次访问结束刷新一次),便刷新日志内容到文件当中。(缓冲区)

性能测试:

虽有理论支持, 建议仍需要做性能测试。

【SeasLog 与 Kibana 结合】


SeasLog 负责生产日志。

Kibana负责消费、分析日志。

烦请运维同事先在测试环境配置、多谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值