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了,可以根据大家的需求进行调整。
04-监控-手册(Runbook)的更多相关文章
- Ubuntu 16.04监控网络带宽软件
1.系统监控器已经自带了默认的监控功能,包括CPU.内存.带宽.进程等,但带宽的一些详情不能显示出来. 2.使用top命令进行监控进程 sudo top 3.安装Indicator-sysmonito ...
- MySQL 性能监控 4 大指标
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的 4 大指标. 文章系国内 ITOM 管理平台 OneAPM 编译呈现. MySQL 是什么? MySQL ...
- Linux下系统如何监控服务器硬件、操作系统、应用服务和业务
1.Linux监控概述 Linux服务器要保证系统的高可用性,需要实时了解到服务器的硬件.操作系统.应用服务等的运行状况,各项性能指标是否正常,需要使用各种LINUX命令.做到自动化运维就 ...
- MySQL 性能监控4大指标——第一部分
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分将详细介绍前两个指标: 查询吞吐量与查询执行性能.文章系国内 ITOM 管理平台 OneAPM ...
- Linux使用shell脚本监控
(1)性能监控脚本 performance.sh #!/bin/bash #-------------------------------------------------------------- ...
- pscp使用详解 Windows与Linux文件互传工具
pscp使用详解 Windows与Linux文件互传工具 pscp使用方法详解:pscp是putty安装包所带的远程文件传输工具,是一款十分常见windows与linux系统之间文件互传的工具,使用方 ...
- Java 工程师成神之路 | 2019正式版
本文为转载,原文见以下链接:https://mp.weixin.qq.com/s/4AMzq87V6eW3YPgE0mCdSw 1 基础篇 01 面向对象 → 什么是面向对象 面向对象.面向过程 面向 ...
- u-boot-2015.01在tq2440上的初步移植
作者: 彭东林 邮箱: pengdonglin137@163.com QQ: 405728433 开发板: tq2440 工具: Win7 + VMware + Debian6 ...
- 033.[转] Java 工程师成神之路 | 2019正式版
Java 工程师成神之路 | 2019正式版 原创: Hollis Hollis 2月18日 https://mp.weixin.qq.com/s/hlAn6NPR1w-MAwqghX1FPg htt ...
随机推荐
- eclipse的相关操作和使用快捷键
修改字体Window->preferences->General->Appearance->ColorsandFonts ->Basic->text Font 在e ...
- win8.1默认输入法设置
1.右击左下角,选择控制面板 2.选择更改输入法 3.选择高级设置 4.在替代默认输入法,从下拉列表中选择自己已安装的输入法,比如搜狗拼音输入法,qq拼音输入法等其他输入法
- LeetCode704 二分查找
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1. 示例 1: 输入: num ...
- 静默(命令行)安装oracle 11g
CentOS 6 静默安装oracle 11g 我参考的这个,他非常详细:https://blog.csdn.net/JIANG123456T/article/details/77745892 我只是 ...
- linux下的文件类型
在Linux中一切设备皆文件,首先来看一下Linux下的文件都有哪些分类,也就是文件类型 文件类型:普通文件(包括shell脚本,文档,音频,视频).目录文件.设备文件(又细分为字符设备文件和块设备文 ...
- C#使用struct直接转换下位机数据
编写上位机与下位机通信的时候,涉及到协议的转换,比较多会使用到二进制.传统的方法,是将数据整体获取到byte数组中,然后逐字节对数据进行解析.这样操作工作量比较大,对于较长数据段更容易计算位置出错. ...
- Poj-P3468题解【线段树】
本文为原创,转载请注明:http://www.cnblogs.com/kylewilson/ 题目出处: http://poj.org/problem?id=3468 题目描述: 给N个数A1, A2 ...
- 1V升压5V和1.5V升压5V的集成电路芯片
1.5V和1V输入,要升压输出5V的集成电路芯片合适? 干电池标准电压是1.5V,放电电压后面在0.9V-1V左右,如果要选用干电池1.5V升压到5V的合适的芯片,需要满足低压1V或者0.9V更好的低 ...
- RecyclerView 源码分析(二) —— 缓存机制
在前一篇文章 RecyclerView 源码分析(一) -- 绘制流程解析 介绍了 RecyclerView 的绘制流程,RecyclerView 通过将绘制流程从 View 中抽取出来,放到 Lay ...
- mongodb简单运用
mongodb NoSQL(Not Only SQL),意思是"不仅仅是 SQL",指的是非关系型数据库,是对不同于传统的关系型数据库的数据库管理系统的统称. NoSQL 用于超大 ...