graylog+kafka+zookeeper(单机测试及源码),微服务日志查询使用(七)
graylog+kafka+zookeeper(单机测试及源码),微服务日志查询使用(七)
graylog+kafka+zookeeper(单机测试及源码),微服务日志查询使用(七)
- 问题背景
- graylog+kafka+zookeeper(单机测试及源码),graylog组件部署,查找问题分析(一)
- graylog+kafka+zookeeper(单机测试及源码),kafka+zookeeper组件部署(二)
- graylog+kafka+zookeeper(单机测试及源码),graylog测试用例及源码(三)
- graylog+kafka+zookeeper(单机测试及源码),graylog收集kafka(脚本创建发布订阅方式)存储的消息(四)
- graylog+kafka+zookeeper(单机测试及源码),graylog设置URL报警方式(五)
- graylog+kafka+zookeeper(单机测试及源码),graylog+filebeat+sidecars收集log日志(六)
- graylog+kafka+zookeeper(单机测试及源码),微服务日志查询使用(七)
- graylog+kafka+zookeeper(单机测试及源码),仪表板Dashboards创建及使用(八)
- graylog+kafka+zookeeper(单机测试及源码),indices索引和streams流创建及使用,日志定期删除功能(九)
- 方案一 通过logback方式进行发送日志
- 方案二 通过filebeat+sidecar方式
- 方案选择总结
- 心得
- Lyric: 开心的被粘手
问题背景
由于微服务很多,在查询时有些比较频繁,事先设置好常用的查询,操作更友好
graylog+kafka+zookeeper(单机测试及源码),graylog组件部署,查找问题分析(一)
graylog+kafka+zookeeper(单机测试及源码),kafka+zookeeper组件部署(二)
graylog+kafka+zookeeper(单机测试及源码),graylog测试用例及源码(三)
graylog+kafka+zookeeper(单机测试及源码),graylog收集kafka(脚本创建发布订阅方式)存储的消息(四)
graylog+kafka+zookeeper(单机测试及源码),graylog设置URL报警方式(五)
graylog+kafka+zookeeper(单机测试及源码),graylog+filebeat+sidecars收集log日志(六)
graylog+kafka+zookeeper(单机测试及源码),微服务日志查询使用(七)
graylog+kafka+zookeeper(单机测试及源码),仪表板Dashboards创建及使用(八)
graylog+kafka+zookeeper(单机测试及源码),indices索引和streams流创建及使用,日志定期删除功能(九)
方案一 通过logback方式进行发送日志
1 先通过查询条件找出需要的微服务如,以此类推,选择查询时间,点击保存,输入名字
authentication-server微服务的正常日志
app_name:authentication-server AND (level_name:INFO OR level_name:WARN OR level_name:DEBUG)
authentication-server微服务的错误日志
app_name:authentication-server AND level_name:ERROR
这样就可以每次直接查询想要的微服务了
2 点击search,在点击Load
3 点击Load之后,选择需要查询的微服务日志
3 选择authentication-server-INFO,再选择查询时间,点击查询按钮,查询语法
显示如下
方案二 通过filebeat+sidecar方式
1 每台服务需要安装filebeat和sidecar
2 设置查询条件,直接选择查找的日志,因为filebeat方式没有像logback的方式可以设置服务名app_name,并且没有日志等级level_name,所以查询并不方便,也没有traceId,spanId,parentId等,唯一能分服务查询使用的是日志存储的路径名,因为在打印日志时,已经区分了ERROR日志,和INFO日志,具体语法如下:
filebeat_log_file_path:\/usr\/local\/adayun\/authentication\-server\/logs\/app.log
filebeat_log_file_path:\/usr\/local\/adayun\/authentication\-server\/logs\/app-error.log
反斜杠为转义字符
3 sidecar前缀开头的是filebeat+sidecar查询方式
4 选择sidecar-authentication-server-INFO,再选择查询时间,点击查询按钮,显示如下
方案选择总结
-
推荐使用logbcak方式,因为filebeat有非常大的局限性,很多查询条件没有了,比如没有日志等级、微服务名、traceId、spanId、parentId等查询条件
-
使用logback方式,可以根据traceId条件查询,找到一条链路所打印的日志,例如使用查询条件traceId:bd93b472a6acde19,可以一次性找到一条链路的信息
-
如果要使用filebeat追踪链路日志,需要在日志打印的时候,手动添加traceId在message,这样可以作为查询条件使用,但还是推荐logback,这也是官方推荐,可以看到traceId、spanId、parentId等信息,如下所示
心得
- 这样设置之后,用起来很方便,大家有好的方法也可以留言
作为程序员第 24 篇文章,每次写一句歌词记录一下,看看人生有几首歌的时间,wahahaha …
Lyric: 开心的被粘手
更多推荐
所有评论(0)