zoukankan      html  css  js  c++  java
  • 04-监控-手册(Runbook)

    前言

    好的手册在当警报触发时,便于快速定位问题。在更复杂的环境中,团队中的每个人都不会对每个系统都有所了解,而且Runbook是传播这些知识的一个载体,更是好方法。

    手册 == RunBook, 请了解。

    1、编写RunBook的注意事项

    为特定服务编写了一个好的Runbook,大致需要一下几点:

    • 这项服务是什么,它的作用是什么?
    • 谁是项目负责?
    • 它有什么依赖关系?
    • 它的基础设施是什么样的?
    • 它发出什么指标和日志,它们是什么意思?
    • 为它设置了什么警报,为什么?

    对于每个警报,我们可以包含指向该服务的Runbook的链接。当有人响应警报时,他们将打开Runbook并了解正在发生的事情,警报的含义以及潜在的补救步骤。

    与许多好东西一样,Runbook很容易被滥用。如果警报的补救步骤与复制粘贴命令一样简单,那么说明已经开始滥用Runbook。对于上面说的情况应该自动执行该修复或解决基础问题,然后完全删除警报。

    Runbook用于解决某些问题时需要人工判断和诊断的时间。

    2、基于Web App的RunBook示例

    当然,这是一个示例,你完全可以根据你的情况进行完善与调整。下面我们来看下Demo。

    服务名:Demo App

    Demo App 是通过Python框架Flask进行开发,主要作用是Blog信息展示;服务主要依赖组件有Redis(缓存),MySQL(数据存储);服务采用Uwsgi+Nginx形式作为部署架构。

    Metadata

    代码库位于http://10.0.0.1/app/blog

    服务责任人:Evan

    问题升级

    如果需要协助来解决此服务的问题,则服务所有者无法协助,问题升级联系备用人员XX。有关联系说明,请参阅公司联系表。

    外部依赖

    依赖公共Js库mount.js来实现国际化时间;

    依赖外部CDN进行加速,CDH域名:XXXX,CDH服务商:XXX。

    内部依赖性

    Nginx服务,运行在10.0.0.7的服务器上;

    Redis服务,运行在10.0.0.7的服务器上,DB库是:3;

    MySQL服务,运行在10.0.0.8(Master),10.0.0.9(Slave);数据库名称:flask_blog

    技术栈

    • Flask (1.0.1)
    • Nginx (1.13.16)
    • Redis(4.3.1)
    • MySQL(5.6.40)

    监控指标与日志

    指标如下:

    • 用户登录(计数)
    • 用户注销(计数)
    • 发布创建(计数)
    • 删除(计数)
    • 评论创建(计数)
    • 评论删除(计数)
    • 发布时间(计时器)
    • 删除时间(计时器)
    • 用户注册时间(计时器)
    • 用户登录时间(计时器)
    • 用户注销时间(计时器)

    应用日志内容:

    • 用户使用用户ID,状态(成功/失败)和IP地址登录
    • 使用用户ID,状态(成功/失败)和IP地址发布创建
    • 使用用户ID,状态(成功/失败)和IP地址创建注释

    警报

    问题:用户登录失败率

    原因:当用户登录失败率在5m时间内超过5%时,此警报将触发。可能的原因是部署不当(检查最近的部署)或暴力攻击(检查用户登录日志是否有攻击迹象)。

    问题:用户登录时间过长

    原因:当用户登录所需的时间超过一秒时,将触发此警报。检查最近的错误部署或MySQL性能问题。

    问题:发布时间太长

    原因:当用户创建帖子所需的时间超过一秒时,将触发此警报。检查最近的错误部署或MySQL性能问题。

    问题:评论创造时间太长

    原因:当用户创建评论所需的时间超过一秒时,将触发此警报。校验对于最近的错误部署或MySQL性能问题。

    上面就是Demo了,可以根据大家的需求进行调整。

  • 相关阅读:
    springAOP实现原理
    cglib用法
    git 用法
    java基础算法之快速排序
    记一次与a标签相遇的小事
    java设计模式之建造者模式
    HashMap源码分析
    Linux下安装nginx
    java设计模式之策略模式
    java设计模式之中介者模式
  • 原文地址:https://www.cnblogs.com/evan-blog/p/10264037.html
Copyright © 2011-2022 走看看