国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Node.js+ELK日志規(guī)范的實(shí)現(xiàn)

2024-05-06 15:39:04
字體:
供稿:網(wǎng)友

一般前端開發(fā)同學(xué),對日志其實(shí)不太敏感,畢竟前端大多數(shù)情況下,不太關(guān)心日志。即使有,也可能調(diào)用一些第三方的統(tǒng)計,比如百度統(tǒng)計或者別的等。在 Node.js(下文中簡稱node) 推進(jìn)過程中,也發(fā)現(xiàn)我們平常打日志太隨意,該打的日志沒有打,打的一些關(guān)鍵日志缺少必要上下文信息,導(dǎo)致在線上定位問題的時候很困難。

本文主要梳理了目前我們團(tuán)隊(duì)在nodejs開發(fā)中日志方面存在的問題,以及通過統(tǒng)一日志規(guī)范,希望達(dá)到什么樣的效果。

問題

node日志不規(guī)范,打日志太隨意 沒有良好的日志格式、約定的字段,在 ELK 里不能很好的解析&檢索 (PS: ELK文章在路上) 由于node對接的后端服務(wù)化,調(diào)用鏈不清晰,定位問題困難 數(shù)據(jù)部門對node日志的使用,沒有明確的記錄。node修改了日志,導(dǎo)致統(tǒng)計數(shù)據(jù)異常

目標(biāo)

規(guī)范日志打印字段&格式,便于 ELK 檢索 增強(qiáng)node上下游(nginx/后端)日志格式,加入惟一 requestId,方便微服務(wù)下定位問題 統(tǒng)計應(yīng)用運(yùn)行情況,性能數(shù)據(jù) 維護(hù)數(shù)據(jù)部門對node日志的使用情況

實(shí)現(xiàn)方案

日志類型

參考一些日志的最佳實(shí)踐,目前將node日志分為如下幾種類型(scope):

desc: 系統(tǒng)啟動、運(yùn)行過程中,打的日志,表明系統(tǒng)的一些啟動日志、啟動參數(shù)等,也包含在 不能 捕獲到http上下文的時候,打的日志 stat: 系統(tǒng)性能統(tǒng)計日志,應(yīng)用會定時收集一些性能信息,便于查詢應(yīng)用當(dāng)前狀態(tài) visit: 每個http請求相關(guān)的日志,會包含惟一的 requestId,定位該請求相關(guān)的所有日志 biz: 業(yè)務(wù)數(shù)據(jù)相關(guān)日志,主要提供給數(shù)據(jù)統(tǒng)計使用

日志級別

只使用 FATAL、ERROR、WARN、INFO 和 DEBUG 等級。

FATAL - 導(dǎo)致程序退出的嚴(yán)重系統(tǒng)級錯誤,不可恢復(fù),當(dāng)錯誤發(fā)生時,系統(tǒng)管理員需要立即介入,一般應(yīng)用代碼 不 使用。 ERROR - 運(yùn)行時異常以及預(yù)期之外的錯誤,也需要立即處理,但緊急程度低于FATAL,當(dāng)錯誤發(fā)生時,影響了程序的正確執(zhí)行。需要注意的是這兩種級別屬于服務(wù)自己的錯誤,需要管理員介入,用戶輸入出錯不屬于此分類,請求后端、讀文件、數(shù)據(jù)庫等超時、返回錯誤結(jié)構(gòu),屬于ERROR WARN - 預(yù)期之外的運(yùn)行時狀況,表示系統(tǒng)可能出現(xiàn)問題。對于那些目前還不是錯誤,然而不及時處理也會變成錯誤的情況,也可以記為WARN,如磁盤過低。 INFO - 有意義的事件信息,記錄程序正常的運(yùn)行狀態(tài),比如收到請求,成功執(zhí)行。通過查看INFO,可以快速定位WARN,ERROR, FATAL。INFO不宜過多,通常情況下不超過 DEBUG 的10%。 DEBUG - 與程序運(yùn)行時的流程相關(guān)的詳細(xì)信息以及當(dāng)前變量狀態(tài)。

日志格式/字段

日志格式統(tǒng)一采用 JSON ,便于 ELK 解析處理。 日志中的各個字段的值,都應(yīng)該盡量使用 英文 ,不使用中文。 日志具體字段,分為 基礎(chǔ)數(shù)據(jù) + 擴(kuò)展數(shù)據(jù)。基礎(chǔ)數(shù)據(jù),是底層日志框架自帶的,所有日志都會包含。擴(kuò)展數(shù)據(jù),不同類型的日志,包含不同的字段。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 和田市| 合阳县| 商洛市| 安岳县| 宁远县| 沙洋县| 米脂县| 南宁市| 昌图县| 怀安县| 泰宁县| 商河县| 陕西省| 格尔木市| 昌吉市| 西丰县| 瓮安县| 通许县| 大理市| 富顺县| 舒兰市| 临泽县| 安丘市| 杨浦区| 杨浦区| 石景山区| 南木林县| 东海县| 武威市| 万盛区| 铜陵市| 山阴县| 乌审旗| 正宁县| 漾濞| 汉中市| 伊吾县| 九龙城区| 舒城县| 小金县| 嘉祥县|