日志采集问题排查

查看源日志是否有更新

​​确保采集的数据源有日志持续输出注意:文件内容不可直接清空,文件轮转可采用删除或者移动MV。

检测日志采集器进程

  1. ps -ef | grep unifytlogc

若进程不存在,进入采集器目录,手动尝试启动采集器查看是否有错误信息

  1. cd /usr/local/gse/plugins/bin/
  2. ./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

检测日志采集配置

  1. cat /usr/local/gse/plugins/etc/unifytlogc.conf

找到对应任务的dataid,(在 tlogcfg->fileds->dataid)

  1. {
  2. "tlogcfg":[
  3. {
  4. "fileds":[
  5. {
  6. "dataid":123,
  7. "condition":[
  8. ]
  9. }
  10. ],
  11. "dataid":123
  12. "isNotPack":0,
  13. "beJson":1,
  14. "ignore_file_end_with":...,
  15. "private":{
  16. "_plat_id_":1
  17. },
  18. "dataset":"datatest",
  19. "clear_file_cycle":157680000,
  20. "file":"/tmp/datatest/ddd.log",
  21. "field_sep":"|",
  22. "log_type":"logbyline"
  23. }
  24. ],
  25. "ipc_socket":"/var/run/ipc.state.report",
  26. "log_path":"/var/log/gse",
  27. "data_path":"/var/lib/gse",
  28. "pidfile_path":"/var/run/gse/unifytlogc.pid",
  29. "log_level":"ERROR"
  30. }

示例 dataid=123

在ZK_IP上查看dataid对应的topic

$dataid替换为上一步查询出来的dataid

  1. /data/bkce/service/zk/bin/zkCli.sh -server zk.service.consul:2181 (ip通常为本机内网IP)
  2. get /gse/config/etc/dataserver/data/$dataid

取出data_set和biz_id两个字段,合并在一起例如:

  1. {"server_id": -1, "data_set": "datatest", "partition": 1, "cluster_index": 0, "biz_id": 4, "msg_system": 1}

topic为datatest4

检测kafka数据

在KAFKA机器上

  1. source /data/install/utils.fc
  2. cd /data/bkce/service/kafka
  3. topic=<上面查询的结果>
  4. sh bin/kafka-console-consumer.sh --bootstrap-server $LAN_IP:9092 --topic $topic

等待有没有新的数据产生

若kafka没有数据,查看gse_data日志

登陆GSE Server的机器,看有没有 gse_data 的pid 开头命名的日志。 若有,tail查看日志内容

  1. datapid=$(pgrep -x dataWorker)
  2. ls -l /data/bkce/public/gse/data/${datapid}*

查看采集记录

  1. cd /var/lib/gse/db/
  2. sqlite3 unifytlogc.db.current
  3. select * from attribute;

查看实际文件大小

  1. wc filename