thinkphp日志结合在线日志分析系统 优雅的查询日志

最开始使用的是thinkphp框架,tp有日志的功能,但是每次要查询日志的时候,都需要ftp到服务器下载下日志用编辑查看。日志数据多的时候,很不方便查找到自己需要的信息。

所以有一定条件下,可以考虑加入日志系统。这样可以使用平台的日志分析功能,方便的查询到自己需要的日志信息。我这里使用的是阿里云的日志服务。

有关thinkphp日志对接到日志服务可以看这个资料 

ThinkPHP 日志

五分钟快速入门

这里记录一下,我的部署过程。文档有点繁杂。

1 开通 日志服务

2 创建一个日志项目 

3 开启全球加速功能(一般使用公网就不用开了)

4 进入日志项目,开启全球加速(上面那个是阿里云功能项的开通,这个是这个 日志项目对应的加速 )

5  服务器安装logtail   

wget http://logtail-release-cn-shenzhen.oss-cn-shenzhen.aliyuncs.com/linux64/logtail.sh -O logtail.sh; chmod 755 logtail.sh; ./logtail.sh install cn-shenzhen-acceleration

6 创建机器组,这个,因为我是使用的其它云的服务器,所以必须要配置为非本账号ECS、自建IDC配置AliUid。

#创建自己ID的文件,如果对应目录不存在,自己创建目录
touch /etc/ilogtail/users/1xxx

Linux Logtail

通过文件/etc/ilogtail/user_defined_id 来设置用户自定义标识。

例如,设置用户自定义标识为shoee,执行如下命令:

#内容与自己定义的机器组的标识一样,自己定的,如shoee,就在下面的文件里写入shoee,并保存
vim /etc/ilogtail/user_defined_id

查看机器组状态。

在机器组列表页面,双击机器组名称,在右侧机器组配置页面查看机器组状态,可以看到使用相同用户自定义标识的服务器列表及其心跳状态。

 

7 logtail的配置,这个比较关键。

thinkphp日志结合在线日志分析系统 优雅的查询日志_第1张图片

 

 

日志路径,这个界面比较友好了。前面部分你直接写父目录就可以,后面写带通配符的文件类型就好(如*.log)

单行模式,thinkphp是多行的,这里要取消。这个选项默认是勾选的。

日志样例,这个需要放3到4条实际日志信息,这个是为了接下来的正式匹配测试用的,很重要。不要放太多数据,会保存不了的。不要多于5条吧。

  thinkphp日志结合在线日志分析系统 优雅的查询日志_第2张图片

提取正则修改一下更符合我的情况

\[\s(\S+?)\s\]\s(\S+)\s+(\S+)\s+(\S+)\s+(.*)

这里要注意,样例里日志,你需要自己在WARN前面加换行符,因为UI的问题,如果你不加,和实际的日志是不一样的,加了就可以正常匹配了。

接下来按照thinkphp 日志文档说明添加对应的正则就好了。具体看上图。 日志抽取内容里的Key,是自己定义的,不过time这个key必须要有,而且是固定的。其它的可以根据value来自己定义。

thinkphp日志结合在线日志分析系统 优雅的查询日志_第3张图片

时间格式也可以手动正则匹配,自动生成的好像是一样的,所以也可以不用自己填写。

 

 

你可能感兴趣的:(php)