- 日志采集问题排查
- 查看源日志是否有更新
- 检测日志采集器进程
- 检查连接
- 检测日志采集配置
- 在ZK_IP上查看dataid对应的topic
- 检测kafka数据
- 若kafka没有数据,查看gse_data日志
- 查看采集记录
日志采集问题排查
查看源日志是否有更新
确保采集的数据源有日志持续输出注意:文件内容不可直接清空,文件轮转可采用删除或者移动MV。
检测日志采集器进程
ps -ef | grep unifytlogc
若进程不存在,进入采集器目录,手动尝试启动采集器查看是否有错误信息
cd /usr/local/gse/plugins/bin/./unifytlogc -c ../etc/unifytlogc.conf
检查连接
agent机器:有正常ESTABLISHED的链接则ok
- Linux
netstat -antp | grep 58625 | grep ESTABLISHED Windows
netstat -ano | grep 58625
若存在proxy,登陆proxy机器:检测58625端口同上。Linux
netstat -tnp | grep 58625
登陆 GSE后台服务器,检测 gse_data 是否连上9092端口:Linux:
lsof -nP -c dataWorker | grep :9092- Windows:
netstat -ano | grep 9092
检测日志采集配置
cat /usr/local/gse/plugins/etc/unifytlogc.conf
找到对应任务的dataid,(在 tlogcfg->fileds->dataid)
{"tlogcfg":[{"fileds":[{"dataid":123,"condition":[]}],"dataid":123"isNotPack":0,"beJson":1,"ignore_file_end_with":...,"private":{"_plat_id_":1},"dataset":"datatest","clear_file_cycle":157680000,"file":"/tmp/datatest/ddd.log","field_sep":"|","log_type":"logbyline"}],"ipc_socket":"/var/run/ipc.state.report","log_path":"/var/log/gse","data_path":"/var/lib/gse","pidfile_path":"/var/run/gse/unifytlogc.pid","log_level":"ERROR"}
示例 dataid=123
在ZK_IP上查看dataid对应的topic
$dataid替换为上一步查询出来的dataid
/data/bkce/service/zk/bin/zkCli.sh -server zk.service.consul:2181 (ip通常为本机内网IP)get /gse/config/etc/dataserver/data/$dataid
取出data_set和biz_id两个字段,合并在一起例如:
{"server_id": -1, "data_set": "datatest", "partition": 1, "cluster_index": 0, "biz_id": 4, "msg_system": 1}
topic为datatest4
检测kafka数据
在KAFKA机器上
source /data/install/utils.fccd /data/bkce/service/kafkatopic=<上面查询的结果>sh bin/kafka-console-consumer.sh --bootstrap-server $LAN_IP:9092 --topic $topic
等待有没有新的数据产生
若kafka没有数据,查看gse_data日志
登陆GSE Server的机器,看有没有 gse_data 的pid 开头命名的日志。 若有,tail查看日志内容
datapid=$(pgrep -x dataWorker)ls -l /data/bkce/public/gse/data/${datapid}*
查看采集记录
cd /var/lib/gse/db/sqlite3 unifytlogc.db.currentselect * from attribute;
查看实际文件大小
wc filename
