查看其它 1 个回答liukang的回答

liukangliukang  系统分析师 , 日志易

这个问题我们先倒推一下啊:
分析问题需要什么?
分析问题问题肯定需要一些指标和数据啊?那么指标和数据该是哪些东西呢?指标和数据从哪里来呢?
指标肯定有系统层面也会有应用层面。但是通过指标一定能分析出问题吗?不一定,万一开发就想写个bug玩呢?所以也得看下应用的日志。
如果需要分析依赖和调用,那就得下探针或者在日志中打出调用关系。

知道了需要哪些东西该怎么收集呢?
我们既要收集系统指标,又要收集应用指标,还需要收集应用日志。在进行收集的时候我们不想消耗太多的资源。

收集完成怎么分析呢?
如果有了上面的数据只需要将我们的内容进行适当的提取就可以进行串联分析,
比如:
我通过日志发现在某一点交易失败率高了,我只需要看一看此时系统层面的各个指标是否正常就可以迅速判断出是否系统层面影响。再接着我们只需要看看这个链路上的其他内容各个指标是否正常,可以快速判断是哪个环节出问题。
上面进行完成了之后,在接着分析应用的问题,看一眼应用的运行指标情况,再看看日志,几乎在一分钟内就可以判断故障出现在哪里。
甚至在进一步可以做出实时告警。
上面那个方式在分布式环节尤其好使,因为运维人员不用去寻找是那一台主机上的程序出现了问题。
上面所说的分析方式有哪些软件呢?
开源的:ELK
企业版:日志易、splunk
说下这三个优缺点吧:
elk 开源啊,免费啊,但是需要较高的能力去维护(如果说日志量每天几个G那种忽略),也需要有一定的学习能力,毕竟DSL语句不是那么好学的,还有一点,搜索比后者慢很多
日志易:操作简单(真心简单。。),语句就是类SQL。缺点就是收费了。
splunk:美国的日志分析厂商,和日志易也差不多,不过比日志易贵。

互联网服务 · 2019-07-30
浏览1549

回答者

liukang
系统分析师日志易
擅长领域: 系统运维监控数据库

liukang 最近回答过的问题

回答状态

  • 发布时间:2019-07-30
  • 关注会员:3 人
  • 回答浏览:1549
  • X社区推广