在团队纷纷谈起工作效率的时候,对运维工作者,他们通常喜欢用「故障的平均解决时间」来衡量团队的工作效率。然而这往往是不正确的。一个迅速解决大量突发事故的团队十分高效,而实际上这更有可能意味着该团队的基础设施十分脆弱易损。那我们应该使用什么标准来衡量团队的工作效率呢?

本文系国内 ITOM 管理平台 OneAPM 翻译整理自Dan Turchin 2015 撰写的文章
《What is MTTR?Or why not to feed the baby cognac》

MTTR(平均恢复前时间)是什么?我们不已字面的角度去回答它,这个提问更倾向于它的哲学意义。基于解决突发事故的时间来测量评估工作效率已经过于绝对,显得老旧。就如同大海中的一帆孤舟,漂泊不定,不知方向。

如同禅宗关于只手之声的谜语一般,解谜的要点是首先提问如下问题:

  • 什么是突发事故?
  • 解决突发事故意味着什么?
  • 解决问题是不是越快越好?

我的答案如下:

什么是突发事故?

(突发事故)是对人、进程或事物有负面影响的,被某些非预期行为触发的问题。它们通常是更严重问题的征兆,经常可能导致系统或者业务发生毁灭性的的灾难。并且通常能经由常规方式修复,比如重启机器、重新连接、重启程序三部曲。

但是对于IT运维的目标,并不是通过修复自己制造的问题而获取赞誉,而是经营一个不会出现大量突发事故的健康的服务器环境。由「平均恢复前时间」所驱动的生产运作系统管理通常会误认为,一个迅速解决大量突发事故的团队十分高效,而实际上这更有可能意味着该团队的基础设施十分脆弱易损。

解决突发事故意味着什么?

通常认为解决突发事故是积极举措。然而事实上解决突发事故时,正确的做法是首先判定被评估对象。以「平均恢复前时间」为评估手段可能会掩饰警示,将红灯变为安全的绿灯。其他度量手段,例如平均故障间隔时间,对于判定基础设施是否保持一贯健康运行状态而言,是更佳的度量指标。

迅速解决突发事故是否总是最佳选择?

在IT领域,仅评估影响业务正常运行的时间无异于给婴儿浸有白兰地的奶嘴。虽然孩子迅速停止哭泣,但他的爸爸却可能因此入狱(然而妈妈绝对不会作出给婴儿喂酒的糟糕决断)。

那么,什么是 MTTR(平均恢复前时间)?

(平均恢复前时间)是讨论运营卓越性的基点。它的价值在每个企业中不尽相同,且是众多评价健康进程和基础设施的指标之一。最好的统计方法是计算全时段所有突发事件在「未解决状态」下的时长,而不是事件「被解决」状l态下的时长除以突发事件总数。在后一种情况下,(系统正常运行)持续时间是基于机器时间戳(区别于运营人员提供的状态改变点)进行计算的,此时机器会使用监测数据(作为基线),重启的相同突发事件(或称为震荡)总会被认定为独立突发事件。

请不要把这篇文章看做是 IT 技术准则的无端攻击,请将它看作是一封邀请信,邀请你花半个小时来评估 MTTR 否是与商业价最契合的度量手段。

OneAlert 是北京蓝海讯通科技有限公司旗下产品,中国首个 SaaS 模式的云告警平台,集成国内外主流监控/支撑系统,实现一个平台上集中处理所有IT事件,提升IT可靠性。想了解更多信息,请访问 OneAlert 官网

本文转自 OneAPM 官方博客

MTTR是什么?或者说为什么别给婴儿喝白兰地的更多相关文章

  1. ORACLE MTTR

    实例恢复时间:指的是将数据文件的最后一个检查点(检查点位置)推进到控制文件中记录的最新SCN 所需的时间.管理员可以通过设置MTTR 目标以及调整重做日志组的大小来控制该时间.MTTR 指导:Mean ...

  2. 浅析设备管理的MTTR,MTTF,MTBF计算方法

    一般来说,对于设备的关键性指标的统计,国际惯例中有三个指标用来进行统计,它们分别是: MTTR(Mean Time To Repair),平均修复时间.计算方法是:总的故障时间/故障次数.计算公式为: ...

  3. Apache HBase MTTR 优化实践

    HBase介绍 HBase是Hadoop Database的简称,是建立在Hadoop文件系统之上的分布式面向列的数据库,它具有高可靠.高性能.面向列和可伸缩的特性,提供快速随机访问海量数据能力. H ...

  4. 实验:Oracle直接拷贝物理存储文件迁移

    实验目的:Oracle直接拷贝物理文件迁移,生产库有类似施工需求,故在实验环境简单验证一下. 实验环境: A主机:192.168.1.200 Solaris10 + Oracle 11.2.0.1 B ...

  5. ORA 各种oraclesql错误

    ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出 ...

  6. UDAD 用户故事驱动的敏捷开发 – 演讲实录

    敏捷发展到今天已经在软件行业得到了广泛认可,但大多数敏捷方法都是为了解决某一特定问题而总结出来的特定方法或实践,一直缺乏一个可以将整个开发过程串接起来的成体系的方法.用户故事驱动的敏捷开发(User ...

  7. KPI:Key Performance Indicator

    通信中KPI,是Key Performance Indicators的缩写,意思是关键性能指标.performance 还有绩效:业绩的意思,但显然不适用于这种场合. 通信中KPI的内容有:掉话率.接 ...

  8. [转]Oracle10g数据库自动诊断监视工具(ADDM)使用指南

    第一章 ADDM简介                 在Oracle9i及之前,DBA们已经拥有了很多很好用的性能分析工具,比如,tkprof.sql_trace.statspack.set even ...

  9. 基于SSH框架的网上商城的质量属性

    常见质量属性 1.性能 性能就是一个东西有多快,通常指响应时间或延迟. 响应时间:从发出请求到收到响应所用的时间,比如用户点击网页中的超链接或桌面应用程序中的按钮 延迟:消息从A点到B点,通过你的系统 ...

随机推荐

  1. android 73 下载图片

    package com.ithiema.imageviewer; import java.io.InputStream; import java.net.HttpURLConnection; impo ...

  2. GUI之CCControlExtension

    Introduction CCControl is inspired by the UIControl API class from the UIKit library of CocoaTouch. ...

  3. PureMVC(JS版)源码解析(十):Controller类

          这篇博客我们继续讲解PureMVC的三大核心类(View/Controller/Model)——Controller类.根据PureMVC模块设计,Controller类保存所有的Comm ...

  4. android开发之记录ListView滚动位置

    这个问题本身不难,但是由于项目中的需求太过于复杂,结果导致这个问题变得不是那么容易实现.在网上一搜,结果如下: 我不知道是who copy who?反正介绍的所谓的三种方法,第一种都是无法运行的,很明 ...

  5. Spring定时任务,Spring4整合quartz2.2,quartz-scheduler定时任务

    Spring4整合quartz2.2,quartz-scheduler定时任务,Spring定时任务 >>>>>>>>>>>>& ...

  6. JS时间戳

    var timestamp1 = Date.parse(new Date()); var timestamp2 = Date.parse(new Date()); var times = timest ...

  7. Linq扩展方法之Aggregate 对序列应用累加器函数

    Linq扩展方法之Aggregate  对序列应用累加器函数; 函数模板:// 函数名:对序列应用累加器函数. // Parameters:参数要求 // source:要聚合的 System.Col ...

  8. 在sql2008的实例 中 编写存储过程 读取 版本为sql2005 的实例 中的某个数据库里的数据

     --创建链接服务器 exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' exec sp_addlinkedsrvl ...

  9. JQM 页面滚动加载

    1 应用场景:文章比较长,只加载部分,当到页面底部触发获取更多数据. 2 如图,监听滚动条的位置,触发事件,转化为求X的长度, 3 实例代码: //滚动条到底加载更多 $(document).on(& ...

  10. sql - 选出指定范围的行

    Select no=Identity(int,1,1),* Into #temptable From dbo.tName order by fName --利用Identity函数生成记录序号 Sel ...