“线上服务停了,要重启一下”?久经职场做研发的程序员,视线会逐渐转移到线上应用的运行状态。设想一下,如果你在半夜两点正在酣眠美梦时,微信群里突然炸开锅:“服务停了,先重启。。。”,对于有起床气的你而言,美梦终结,是否能忍?
今天主要分三大块:应用状态监控、基于应用日志的监控、升华部分(老司机,带你飞),稍微聊一下应用监控相关的知识。
Tips:
1. 今天的内容相当的烧脑,请提前喝足六个核桃!
2. 但我相信坚持阅读到最后,你肯定不虚此行!
一. 应用服务状态监控
生产上应用服务的运行一般要求 7 x 24,稳定运行率达到 99.99%。其中除了保证应用本身的健壮性外,当然还需要依赖一些守护程序做监控。不然一旦服务出现假死了怎么办?
首先我们能想到的,便是通过寥寥几行 linux 命令,组成一个小而精悍的 shell 文件,偶尔再配上 crontab 定时任务,来完成应用服务的进程守护。不扯别的,打开常用的monitor.sh 脚本一探究竟(以 tomcat 为例)。

麻雀虽小五脏俱全,让我们解剖一下麻雀。
-
如何判断应用处于假死?
通过配置健康检查 url,专门用于心跳检测,当每次访问时正常返回 200 状态码,就认为应用还可以正常提供服务。如果返回的不是 200 状态码,则判断应用的进程 ID 是否存在,存在则说明处于假死状态

本文详述了线上应用的监控方法,从应用服务状态监控和基于日志的监控两个方面展开,包括使用shell脚本进行服务状态检查和自动重启,以及日志归集工具如Filebeat和Flume的使用。最后提及APM应用性能监控的重要性,推荐了Zipkin、Pinpoint和Skywalking等组件。
最低0.47元/天 解锁文章
294

被折叠的 条评论
为什么被折叠?



