年輕人的第一個go程式:監控資料庫欄位 報警
監控資料庫欄位 釘釘報警
package main
import (
"bytes"
"encoding/json"
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/go-xorm/xorm"
"io/ioutil"
"net/http"
"time"
)
var engine *xorm.Engine
const webhook_url = ""
func dingtoinfo(s string) bool {
content, data := make(map[string]string), make(map[string]interface{})
content["content"] = s
data["msgtype"] = "text"
data["text"] = content
b, _ := json.Marshal(data)
resp, err := http.Post(webhook_url,
"application/json",
bytes.NewBuffer(b))
if err != nil {
fmt.Println(err)
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
return true
}
func recoverName() {
if r := recover(); r != nil {
res := fmt.Sprintf("%s %s", "監控程式 報錯:", r)
dingtoinfo(res)
}
}
func main() {
defer recoverName()
var err error
engine, err = xorm.NewEngine("mysql", "root:xxxxxxxxxxxxxxx@tcp(127.0.0.1:3306)/new?charset=utf8")
if err != nil {
panic(err.Error())
}
gsql := " select up_time from token where type = 0 ;"
gres, gerr := engine.Query(gsql)
if gerr != nil {
panic(gerr.Error())
}
var data string
for _, v := range gres {
data = string(v["up_time"])
}
loc, _ := time.LoadLocation("Asia/Shanghai")
nowTime := time.Now().In(loc)
tm, _ := time.Parse("2006-01-02 03:04:05", data)
ntm := tm.In(loc)
subM := nowTime.Sub(ntm)
fmt.Println("token更新時間 與 系統時間 相差",subM)
subtract := int(subM.Minutes())
if subtract > 20 {
dingtoinfo("異常, 請及時登入檢視 !!!")
}
}
©著作權歸作者所有:來自51CTO部落格作者295631788的原創作品,如需轉載,請註明出處,否則將追究法律責任
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3549/viewspace-2819533/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【python 監控報警】python自動發微信監控報警Python
- 使用Vmalert監控報警
- 大資料技術 - 監控預警大資料
- Prometheus監控報警系統Prometheus
- CentOS 配置OOM監控報警CentOSOOM
- 序列化,資料庫存多個欄位資料資料庫
- 智慧校園:資料機房動環監控報警系統
- MySQL監控-Datadog資料庫監控調研MySql資料庫
- 【SQL】Oracle資料庫SQL監控報告示例SQLOracle資料庫
- 生產區域人數超員監控報警系統
- GO實現資料夾監控Go
- SpringBoot+ Sharding Sphere 輕鬆實現資料庫欄位加解密Spring Boot資料庫解密
- MySQL中修改一個資料庫下包含有某個相同欄位的所有表的欄位長度MySql資料庫
- 資料庫監控---PIGOSS BSM資料庫Go
- 監控資料庫活動資料庫
- 資料庫繁忙程度監控資料庫
- Spark+Kafka實時監控Oracle資料預警SparkKafkaOracle
- 年輕人的第一個VSCode擴充套件VSCode套件
- 兄弟連go教程(19)資料 - 匿名欄位Go
- 怎麼設定資料庫的報警資料庫
- 監控資料庫連線遇到的一個小問題資料庫
- 從零搭建Prometheus監控報警系統Prometheus
- Zabbix監控神通資料庫教程資料庫
- shell監控mysql 8.0資料庫MySql資料庫
- shell監控mysql 5.7資料庫MySql資料庫
- 振弦式感測器資料採集到水庫大壩監測雲平臺進行監控和報警
- 最新!2019 年最好用的 7 款資料庫監控工具資料庫
- mysql-資料庫欄位date datetimeMySql資料庫
- 資料庫設計——冗餘欄位資料庫
- mysql資料庫新增和修改欄位MySql資料庫
- 資料庫表欄位命名規範資料庫
- Python呼叫阿里雲資料庫監控資料Python阿里資料庫
- Prometheus時序資料庫-報警的計算Prometheus資料庫
- MySQL資料庫查詢多個欄位值全部相同的記錄MySql資料庫
- 監控採集上報和儲存監控資料策略
- 查詢/刪除重複的資料(單個欄位和多個欄位條件)
- 資料庫中的圖片欄位怎麼在報表中呈現資料庫
- 資料庫DML監控一例資料庫