這裡簡單介紹下基於阿里雲日誌服務的報警設定
1:首先通過loghub輸出到阿里雲日誌服務
2:基於日誌服務這裡簡單介紹兩種報警
2.1:基於阿里雲本身提供的報警設定
2.1.1:進入需要查詢的標籤頁面,在輸入框輸入查詢語句。例如:
*|select inst_id,request_uri,requestid,duration where duration > 8000
這樣就查詢出來符合條件的日誌啦,當然查詢的條件必須加入到索引裡
2.1.2:右上角 另存為快速查詢,起個名字就完事啦
2.1.3:右上角 另存為報警,快遞查詢名就選剛才2.1.2的名字,報警動作這裡 自己選擇,我一般都是通過釘釘,寫入釘釘機械人的位址即可
2.2:基於阿里雲api
如果你想嘗試通過api去寫**實現以上步驟也完全ok
defget_log_duration():topic =""query ="duration"from = int(time.time()) - 60
to = int(time.time())
endpoint ='cn-hangzhou.log.aliyuncs.com'# 選擇與上面步驟建立project所屬區域匹配的endpoint
accesskeyid =''# 使用您的阿里雲訪問金鑰accesskeyid
accesskey =''# 使用您的阿里雲訪問金鑰accesskeysecret
project =''# 上面步驟建立的專案名稱
logstore =''# 上面步驟建立的日誌庫名稱
# 構建乙個client
client = logclient(endpoint, accesskeyid, accesskey)
req4 = getlogsrequest(project, logstore, from, to, topic, query)
res4 = client.get_logs(req4)
# if res4 is not none and res4.is_completed():
# print "is_completed"
ifres4is notnone:
returnmap(lambdax: x.contents, res4.get_logs())
defget_max_duration():
info = get_log_duration()
date =
forlineininfo:
dura = line.get("duration")
uri = line.get("requesturi")
reqid = line.get("requestid")
inst_id = line.get("inst_id")
timestamp = line.get("@timestamp")
ifint(dura) > int(date["duration"]):
date["duration"] = dura
date["requesturi"] = uri
date["requestid"] = reqid
date["inst_id"] = inst_id
date["timestamp"] = timestamp
ifdate["duration"] > 4000:
returndate
date = get_max_duration()
下面就是報警**,在上篇 阿里雲統計每日消費 已有釘釘報警,這裡就不做介紹啦,當然必須在資料存在的情況下再做報警,否者就退出。
阿里雲日誌服務基礎
標籤 空格分隔 阿里雲 地域為阿里雲的服務節點。使用者通過在不同的阿里雲region部署服務,讓自己的服務距離客戶更近,獲得更低的訪問延時及更好的使用者體驗。目前阿里雲在全國各地擁有多個region。專案為日誌服務中的基本管理單元,用於資源隔離和控制。使用者可以通過專案來管理某乙個應用的所有日誌及相...
oracle 報警日誌詳解
oracle報警日誌是乙個非常重要的日誌,其有兩種實現方法 1 通過全域性表來實現,這種方法有一種缺點,就是在關閉資料庫後或者資料庫宕機後就不能在使用了 2 通過外部表來實現,這種方法避免了方法一種的情況。特此以方法二為例進行解析。建立外部表的過程,檢視日誌路徑,建立目錄,此目錄是日誌存放的目錄,o...
阿里雲日誌服務使用教程
日誌服務 log service,簡稱 log 是針對日誌類資料的一站式服務,在阿里巴巴集團經歷大量大資料場景錘煉而成。您無需開發就能快捷完成日誌資料採集 消費 投遞以及查詢分析等功能,提公升運維 運營效率,建立 dt 時代海量日誌處理能力。核心功能如下 實時採集與消費 loghub 功能 通過ec...