搜尋
首頁微信小程式微信開發Python+微信介面實作運維警報

說到維運報警,我覺得都可以寫個長篇歷史來詳細解釋了報警的前世來生,比如最早報警都是用郵件,但郵件實時性不高,比如下班回家總不能人一直盯著郵箱吧,所以郵件這種警報方式不適合用來報緊急的故障,日常磁碟利用率監控什麼的可以用它來報沒問題,網站宕機不能訪問這種故障,用它就明顯不合適了,那對這種業務穩定性要求比較高的業務,後來就發展成了用短信,就是公司買個短信機,提供一個http接口,然後運維人員寫腳本把收集到的異常數據寫入文件,然後腳本即時偵測如果這個檔案不為空,就呼叫簡訊機介面把檔案裡的內容傳送出去,這種簡訊的警報方式持續了幾年,現在轉眼到了行動端時代,隨著微信的橫空出世,這種簡訊的方式現在也慢慢轉變了,為啥呢?最簡單的1條,因為這玩意有成本,用不是白用的,每月就要交短信費的,如果你說這短信費用能有多少,1條不就1毛嗎,但你想想如果機器規模發展到上萬台的公司,每台伺服器依照按從底層硬體監控、系統層監控、應用層這三個維度去部署監控腳本,這裡每項都又分為N個細小項,可想而知每天發的短信數會多麼恐怖,當然了這驚人的數據裡還有一部分是無效報警,但一樣得付錢呀,每月領導批錢的時候都會被報警短信數量所震驚,然後感嘆一下就回覆了OK,所以說在沒有更好的方法前,這種方式有成本但為了業務穩定也必須要投入,但現在微信來了,直接宣布利用我這個平台發訊息免費,因為終端還是手機,及時性又沒有降低,成本又沒有,沒有不用的道理,所以這篇咱們就來看看如何調微信介面來實現日常運維訊息的警報。

首先,你要去註冊一個微信企業號,地址是:https://qy.weixin.qq.com/cgi-bin/loginpage

註冊過程如果是為企業使用要選擇企業,然後上傳企業的資格證明,如果是個人註冊,選擇團隊,然後輸入自己的身份證號即可完成註冊,其它關鍵步驟在註冊過程中已經提示的很清楚了,比如企業號的名字不能修改等。

註冊完進入第二步,在應用中心新建一個應用,例如:維運警報,然後在設定–功能設定–權限管理中點選左邊的維運警報應用,在右邊會出現CorpID和Secret,這個要記好,腳本中會用到,然後「應用程式權限「」選擇維運警報這個應用,「」通訊錄權限「」選擇可讀,到這裡企業號的在平台上的設定完畢,接下來進入程式碼步驟。得到了這個token後才能發訊息,所以我們的腳本分2部分,第一要獲取token,第二是發訊息,程式碼如下:

#! /usr/bin/env python
  
import requests
import json
  
def get_token():
  
  url='https://qyapi.weixin.qq.com/cgi-bin/gettoken'
  values = {'corpid' : 'your corpid' ,
      'corpsecret':'your corpsecret',
       }
  req = requests.post(url, params=values)  
  data = json.loads(req.text)
  return data["access_token"]
  
def send_msg():
  url="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token="+get_token()
  values = """{"touser" : "1" ,
      "toparty":"1",
      "msgtype":"text",
      "agentid":"1",
      "text":{
        "content": "%s"
      },
      "safe":"0"
      }""" %(str("10.1.1.8 is down"))
   
  data = json.loads(values) 
  req = requests.post(url, values)  
  
if __name__ == '__main__':
  send_msg()

腳本用到了第三方模組requests,  這個模組要比python標準模組urllib,urllib2,更為簡潔,可以直接用get(), post(),put(), delete(), head() ,options(),方法對url操作,json模組就是來解析傳回的json串,轉換成python可操作的資料型,關於如何呼叫微信發訊息這篇就寫到這裡,歡迎大家留言交流。

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具