面对应用与应用之间复杂的依赖和调用关系,如何快速定位排查问题?

参与8

2同行回答

mornskymornsky研发工程师某银行
在自动化运维中或相关的CMDB中可定义业务应用以及应用之间的关联,出现问题时通过查询相关业务应用,再依次查询相关应用日志和应用记录。应用日志最好做个统一的应用日志管理分析系统,可做更强大专业的日志分析。...显示全部

在自动化运维中或相关的CMDB中可定义业务应用以及应用之间的关联,出现问题时通过查询相关业务应用,再依次查询相关应用日志和应用记录。应用日志最好做个统一的应用日志管理分析系统,可做更强大专业的日志分析。

收起
银行 · 2018-09-26
浏览1930
liukangliukang系统分析师日志易
这个问题我们先倒推一下啊:分析问题需要什么?分析问题问题肯定需要一些指标和数据啊?那么指标和数据该是哪些东西呢?指标和数据从哪里来呢?指标肯定有系统层面也会有应用层面。但是通过指标一定能分析出问题吗?不一定,万一开发就想写个bug玩呢?所以也得看下应用的日志。如果需要...显示全部

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

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

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

收起
互联网服务 · 2019-07-30
浏览1577

提问者

zhuhaiqiang
项目经理银行
擅长领域: 服务器云计算系统运维

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2018-09-25
  • 关注会员:3 人
  • 问题浏览:2949
  • 最近回答:2019-07-30
  • X社区推广