tars-log
简介
tars-log 是 phptars 日志模块,用于将日志内容打到本地日志或远程日志
使用说明
安装
使用composer进行安装 composer install phptars/tars-log
配置
可以逐个参数进行配置,也可以通过平台下发的配置文件统一配置
单独配置某个参数
$config = new \Tars\client\CommunicatorConfig(); $config->setLocator("tars.tarsregistry.QueryObj@tcp -h 172.16.0.161 -p 17890"); $config->setModuleName("tedtest"); $config->setCharsetName("UTF-8"); $config->setLogLevel("INFO"); //日志级别:`INFO`、`DEBUG`、`WARN`、`ERROR` 默认INFO $config->setSocketMode(2); //远程日志连接方式:1:socket,2:swoole tcp client 3: swoole coroutine tcp client配置文件初始化参数
$config = new \Tars\client\CommunicatorConfig(); $sFilePath = '项目地址/src/conf'; //配置文件下发路径 $config->init($sFilePath);
输出日志
输出日志提供两种方式,一种直接调用LogServant的logger方式输出远程日志,另一种结合monolog输出远程日志(推荐)
调用
LogServant的logger方式
结合
monolog方式(推荐)
结合ELK
远程日志按应用与服务区分,位于/usr/local/app/tars/remote_app_log/{App}/{ServerName},在实际业务中,可以通过filebeat 或 logstash 将远程日志同步到ElasticSearch。
除此之外monolog 本身提供了ElasticSearchHandler,可以非常方便的把日志直接输出到ElasticSearch。
使用之前需要在composer中引入ruflin/elastica 包。
注:截止到本文更新前,
ruflin/elastica的 release版只支持至 elasticsearch:6.版本,想使用elasticsearch:7.的同学可以使用elasticsearch/elasticsearch包自行封装 handler
示例代码如下:
Last updated