首页 > 编程语言 >hc - python

hc - python

时间:2022-11-16 09:58:53浏览次数:36  
标签:scanner python Grafana guard hc weeks oncallsolution

Grafana alerts 健康检查

我们可以在Grafana的panel中设置alert
当报警触发, 我们有另外的程序会捕捉到它, 并通过创建jira工单的方式, 通报给相应的Team去处理
为了能成功创建jira工单, 我们需要在报警内容中以特定的格式提供Summary/Category/Priority/Description等内容
于是我开发一个程序, 定期检查Grafana上所有alerts的格式是否符合要求. 检查结果以表格形式交付到MySQL, 展示于Grafana

Grafana 定制化报告

这个程序用于统计Grafana上, 当前有多少个Org(Team), 每个Org(Team)创建了多少个Folder, 每个Folder中有多少个Dashboard
报告以表格形式交付到MySQL, 展示于Grafana
后面如果需要, 我们可以探索进更深的层次, 到Dashboard中, 看它里面有哪些内容
我们还可以创建panel, 将历史结果组织起来, 画一个趋势图, 展示出量的变化

Caller 自动拨打电话

这个程序有3个的组件
MonitorQ用于收集High/Critical级别的JIRA工单, 解析其所属Team, 确定oncall人员及电话号码
Scanner用于控制拨打流程, 用户接没接电话, 按没按确认键, 要不要重复拨打, 等等
CallAPI用于整理待拨打数据, 交给下游Genesys去执行拨打电话
另外, 还有一个程序, 叫scaner_guard, 用于保护scanner, 它很重要. 一是容器要存活, 二是容器内部要在正常运转, 不能假死

PROD [root@whdcbosd001 scanner_guard]# ps aux |grep 'scanner_guard' |grep -v 'grep'
root     110143  0.0  0.3 245564 23720 ?        S    Sep21   4:06 /opt/servicedesk/scanner_guard/venv/bin/python3 /opt/servicedesk/scanner_guard/scanner_guard.py
PROD [root@whdcbosd001 scanner_guard]# docker ps -a |grep -E "oncallsolution"
11f72eef486a   caller_api_oncallsolution     "/bin/sh -c '\"python…"   7 weeks ago    Up 7 weeks    0.0.0.0:8008->8008/tcp                           theapi_oncallSolution
388eecf74b28   thescanner_oncallsolution     "/bin/sh -c '\"python…"   7 weeks ago    Up 3 hours                                                     scanner_oncallsolution
a25cdf472188   ticketcol_oncallsolution      "/bin/sh -c '\"python…"   7 weeks ago    Up 7 weeks                                                     ticketcol_oncallsolution
PROD [root@whdcbosd001 scanner_guard]#

标签:scanner,python,Grafana,guard,hc,weeks,oncallsolution
From: https://www.cnblogs.com/albert-huang1/p/hc-python.html

相关文章

  • python课本学习-第五章
    一、列表的概念1、列表的创建列表是由一组任意类型的值组合而成的序列,组成列表的值称为元素,每个元素之间用逗号隔开。列表中的元素是可变的#列表类似于c++中的数组,数......
  • Python - request 报错:raise RemoteDisconnected("Remote end closed connection with
    2022-11-1521:46:20,261INFO[get_data.py(get_product_mode:46)]-当前page======>:255Traceback(mostrecentcalllast):File"D:\jlc_auto_test\fa_search_tes......
  • Python locust工具使用详解
    今年负责部门的人员培养工作,最近在部门内部分享和讲解了locust这个工具,今天再博客园记录下培训细节。相信你看完博客,一定可以上手locust这个性能测试框架了。一、简介1......
  • python神经网络编程
    计算机系统:输入->(计算)->输出建立模型可以模拟事情的运作神经网络的基本思想:持续细化误差值。大的误差需要大的修正值,小的误差需要小的修正值。尝试得到一个答案,并多......
  • Python 文本文件拖上转自适应图片 - 学习笔记(2022.11.16)
    Python文本文件拖上转自适应图片功能:1、支持拖拽执行2、文本文件转为自适应尺寸图片1importre2importos3importsys4importtime5fromPI......
  • 如何正确遵守 Python 代码规范
    前言无规矩不成方圆,代码亦是如此,本篇文章将会介绍一些自己做项目时遵守的较为常用的Python代码规范。命名大小写模块名写法:module_name包名写法:package_nam......
  • python 中 循环结构同时传入多个参数
     001、>>>list1=[("aa",100,400),("bb","kk","yy"),(33,400,500)]>>>fori,j,kinlist1:##利用列表、元组同时传入多个参数...print(i,......
  • python 中统计每一个字符串中每一个字符出现的次数
     001、直接使用字典进行统计>>>str1="aaaabbcdddefff"##测试字符串>>>dict1=dict()>>>foriinstr1:##利用条件分支进行判断.........
  • Python 中的 defaultdict 数据类型
     首先,defaultdict是dict的一个子类。通常Python中字典(dict)是通过键值对来存取的,当索引一个不存在的键时,就会引发keyerror异常。那么,defaultdict就可以解决这个......
  • python中的公共操作和推导式
    #1.公共操作#del删除删除变量或指定容器内数据变量,容器里面的值#+将两个相同类型序列进行连接字符串,列表,元组print('1.公共操作')print('a'+'b')print([......