加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

运维老司机:问题排查经验总结

发布时间:2018-12-09 14:17:17 所属栏目:外闻 来源:今日头条
导读:副标题#e# 看似无章可循问题进行排查时可以说是世界上最紧张且难度、强度最大的工作之一,尤其面对极高收入的业务、海量服务运营,带来极大的恐慌感并引发肾上腺素飙升,压力的存在可能诱发我们犯下的低级失误。克服这种白痴般的本能,我们需要克制自己快要

编写有效的错误日志,建立日志标准。正常程序中打错误日志主要是为了更好地排查问题和解决问题,提供重要线索和指导。但是在实际中打的错误日志内容和格式变化多样,错误提示上可能残缺不全、没有相关背景、不明其义,使得排查解决问题成为非常不方便或者耗时的操作。而实际上只要开发稍加用心,也需就会减少排查问题的很多无用功。如何编写有效的错误日志,建立日志标准,也是非常有利于问题分析的。

定位问题避免二次损害,当某个看似难以捉摸的难题出现时,本能可能是重启,尽快让系统恢复正常。虽然这样的方式经常能够解决问题而且起效神速,但同时也很可能把情况推向令人难以置信的恶化深渊。问题排查手段包括重新启动不稳定系统、尝试自动记录数据库、文件系统修复等等,这些方式往往确实能搞定难题并让系统重回生产轨道,但同时也没准导致数据恢复努力付之东流,毁掉确定问题根本原因的机会甚至大大延长关键性系统的停机时间。保留现场也非常重要,跟破案现场要要求现场勘察、样本采集、排查、锁定如出一辙,对于难以重现问题,尽量创造条件保留了可以用于故障重现的数据或现场。

线上环境复杂多变,虽然这一点并不能马上解决问题起到直接作用,但坚持这种处理思路,为开发和测试创造条件,降低因难以重现的疑难故障的挂起率,最终有助于业务的长期稳定。

建立集中的数据可视平台,不至于遇到问题才开始着手分析,若是对业务没有足够的了解又没有数据依赖,就很可能在解决问题时雪上加霜。

建立沙箱影子系统,模拟复杂多变的现网环境,规避线上影响,重现或压测问题,如tcpcopy、dubbocopy等

搭建开源的日志可视方案,协助我们去解决最后”一公里”的问题,常见如ELK、Log.io等

善其事必先利其器,常见系统排查工具perf、iptraf、netperf、tcpdump、gdb、pstack、jstack、strace,top、iotop、tsar等

……

结语

总结这几年处理问题的一些思路和经验,可以归纳提炼如下几句:

收集信息,随时记录

协调资源,把控影响

冷静判断,沉着分析

大胆假设,谨慎尝试

积极总结,以备后用

运维专家或许是每个运维人追寻的梦想,他们敏锐的嗅觉似乎总能揪出系统故障的根本原因。这种快速反应、准确定位的能力源自多年来处理复杂系统难题的经验积累与个人知识储备,而且其成功很难被复制。虽然没有哪家机构愿意为其颁发认证资质,尽管如此,这仍然是大家所乐于追寻的一种“超自然”的本领。

【编辑推荐】

  1. 线上Linux服务器运维安全策略经验分享
  2. Linux如何分析和排查系统故障——分析日志文件
  3. 通过服务器信息维护进行“半自动化”运维
  4. IT运维背后的逻辑
  5. 服务器故障定位方法与解决方案,运维专家教你快速排查问题!
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读