精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

【經驗談】微服務日志的七種優秀實踐

譯文
開發 架構
本文向您介紹如何為微服務應用收集有意義的日志,并妥善保存的一些最佳實踐。

【51CTO.com快譯】微服務架構是一種全新的應用結構,它能夠幫助您通過松耦合的系統,開發、測試、部署和發布彼此相互獨立的各種服務。因此微服務背后的理念是:將大型系統分解成多個獨立的小部分。

通常情況下,每個服務都能通過HTTP的端點與其他服務交互。它們在隱藏技術棧細節的同時,會暴露自己的契約(contract)給其對應的消費者(consumer)角色。例如:服務A可以在調用服務B的同時,也去調用服務C,而只要整個請求鏈是完整的,那么服務A就能夠對發起請求的客戶端做出響應。

微服務架構能夠給我們的系統帶來很多方面的好處,其主要能力包括:使用不同的技術棧、獨立地進行部署、一次只解決一個小問題等。但是,由于它在通信和管理上的復雜性,一般使用微服務的成本會比較高。而且在一個或多個服務出現問題時,微服務會變得更加復雜。如果沒有掌握良好的、且有意義的日志的話,你都無法回答諸如:哪個服務、為什么、和在什么情況下失敗了等問題。

老實說,我本人最憎恨那些由于糟糕的日志策略,所導致的一些“未知”的系統錯誤。下面我們和您分享一些,自己在與微服務打交道時總結出的七種優秀實踐。

1.用唯一性ID來關聯各個請求

請回想一下我們上面提到的服務A、B、C之間的請求調用鏈。在實踐中,我們應當給每一個調用分配一個唯一性的ID,以便標識出每一個請求。

設想您正在記錄每個服務的訪問與錯誤日​​志。如果您發現在服務B上有錯誤,那么您就能知道該錯誤是來自于服務A、還是服務C。

如果錯誤信息足夠詳細的話,您也許不必去重現錯誤。但是多數情況并非如此,您必須通過正確的方式,將各個服務(如服務B)中的所有請求進行錯誤重現。因此,如果您發現了某個與之相關聯的請求,那么您只需要在日志中尋找出它所對應的ID便可。

隨后,您可以順藤摸瓜地從系統中將那些主要請求的某個部分,從服務的全量日志中截取出來。接著,您就可以知道是哪項服務的主請求花費了最多的時間。其可能性包括:可能是某項服務使用到了緩存、或是某項服務不止一次調用了其他服務、以及其他有趣的細節。

2.在響應中包含唯一性ID

微服務的用戶可能會不止一次地碰到同一個錯誤。面對這樣的情況,您應該乘機對客戶端可能接收到的響應進行編碼,以便它能夠將一個唯一性的ID,連同與該錯誤相關的任何其他有用的信息都傳遞出來。當然,這個唯一性的ID完全可以和我們在上面所提到的相關請求保持一致。

因此,在響應的有效載荷中包含與請求相關的唯一性ID,將有助于您和您的客戶更迅速地發現各類問題。同時,您也可以獲悉請求日期、時間和其他細節上的參數,以便您能夠更好地理解自己所碰到的問題。另外,您還可以將請求的ID,添加到諸如“請聯系服務管理員,并報告該問題。”之類的常見補充性錯誤信息之中,以便深入了解到底是什么原因引起該錯誤,進而防止它在未來再次發生。

3.發送日志到集中的位置

在此,讓我們假設您已經對各種有用的日志信息進行了分類。下一步,我們就需要將各類日志發送到一個集中化的位置。

試想一下:如果您每次都需要登錄到各個相互單獨的服務器上,以來讀取不同的日志信息,那么您將不得不花費更多的時間去試圖關聯這些問題。這遠不如您登錄到某一個位置,并一站式地訪問到所有的日志,以定位問題。

此外,您的系統通常會隨著時間的推移,而變得日趨復雜,而各項微服務的數量也會節節攀升。同時,您的各種服務可能會分處不同的服務器或提供商,這都會讓形勢變得更為復雜。

因此,集中式存放日志正在成為業界的常規方法,特別是當您的服務工作在云端、容器、或其他混合環境之中,而某些服務器可能會在無任何通知的情況下下線的時候。例如,在出現異常錯誤,或是內存的消耗水平已經達到100%時,某些容器就會被終止運行。

您可以在服務器中斷之前,通過設置代理,每五分鐘推/拉一次日志,來解決此類問題。您也可以在服務器上配置一個cronjob(定時任務)、sidecar container、或是一個與其他進程共享的文件位置,來集中化各種日志。為了避免日志被篡改,您還可以自行構建一套解決方案,具體請參見鏈接:https://blog.scalyr.com/2017/11/log-management-need/。

可見,將所有服務的日志都集中到一處,會有助于您更容易、且有效地定位各種關聯問題。

4.結構化您的日志數據

在具體實踐中,我們很難為所有的日志數據預先定義好格式。有些日志可能需要比其他日志更多的字段,相反這些字段可能會對那些不需要的日志來說不但多余、而且浪費字節數。

微服務架構是通過使用不同的技術堆棧,來解決此類問題的。不過,這會影響每個服務的日志格式。例如:某一個服務可能是用逗號來分隔不同的字段,而其他日志則使用的是管道或命名空間。

上述方法顯然比較復雜。因此,我們可以通過將自己的日志數據構建成一套標準的格式,如:JavaScript Object Notation(JSON),來簡化解析日志的過程。JSON允許您擁有多層次的數據。在必要的時候,您可以在單個日志的事件中獲取更多的語義信息。

同時,此法也使得對于特定日志格式的解析更加直接。通過對數據采取結構化,就算您的日志里有各種不同的字段,其格式也會變得更加標準。籍此,您也可以在集中化的位置上創建各種搜索,例如:檢索包含有500條及以上,“HTTP_CODE”字段的日志信息??梢哉f,使用結構化的日志方式既能讓您的微服務日志實現標準化,又不失靈活性。

5.為每個請求添加上下文

通常情況下,如果系統能夠提供足夠的信息,那么我們就能夠更好地了解針對某個問題的上下文請求,更快地發現該問題的根本原因。不過,給各種日志添加上下文,也會在代碼層面上產生一些重復性的工作,因為在您所需要的許多日志事件中,已經包含了諸如日期和時間等通用數據信息。因此在我們的代碼中,應當只記錄那些重要的消息、并涉及到一些特定的領域,以使得日志看起來簡單明了。

您可能會想到各種五花八門的數據需要被記錄,但是讓我們通過如下的列表,來告訴您哪些才是真正需要記錄的具體特定領域吧。

  • 日期和時間。當然,如果能夠保證讀取日志的人都在同一時區的話,您大可不必一律采用UTC(世界標準時間)的格式。
  • 堆棧錯誤。您可以將異常對象作為參數傳遞給自己的日志庫。
  • 服務的名稱或代碼,這樣您就可以根據微服務來區分不同的日志。
  • 發生錯誤的函數、類或文件名,這樣您就省去了跟蹤問題出處的時間。
  • 與外部服務交互的各種名稱,例如:您可以獲悉是哪個進程在調用數據庫時出現了問題。
  • 服務器和客戶端請求的IP地址。這些信息將有助于發現那些不健康的服務器、或識別出DDoS類攻擊
  • 應用程序的用戶代理,以便您能判斷是哪些瀏覽器或用戶碰到了問題。
  • 通過HTTP代碼來獲取錯誤的更多語義。這些代碼將有助于創建各類警報。

可見,為每個請求添加上下文,能夠節省您對系統進行排障的時間。

6.將日志存儲到本地

將日志存儲到本地,似乎聽起來和我們前面說的“發送日志到集中的位置”有些矛盾,其實則不然。最初我是將各種日志,直接通過HTTP請求的方式發送到別處的。但是我屢次發現這些流量傳輸占用掉了我大量的出站帶寬,以至于影響到了其他更為重要的微服務調用。

因此,我們需要對日志的外發和本地存儲有所取舍。最終,我之所以選擇了本地存儲,是因為這樣有助于從應用程序中分離日志、并減少上下文的切換。針對數據庫,您可以采取將應用程序與其日志區分不同存儲卷的方式。

例如:亞馬遜的AWS就一個選項,用戶可以使用一種稱為Elastic File System(EFS)的服務,去掛載某個卷。其功能類似于網絡附屬存儲(network-attached storage,NAS)。那么,您可以按需輾轉到另一臺服務器上,掛載相同容量的卷,然后將各種日志轉發到那個集中的位置上。

簡單說來,我們可以使用Docker容器,來實現將所有應用程序的日志都發送到相同的位置。然后匯總、過濾和轉發這些日志的存儲庫,到其他進程或服務那里。

7.記錄重要且有意義的數據,有備無患

如果您是剛開始接觸微服務的日志問題,那么上述最佳實踐可能會對你比較“無感”。但是,只要您足夠細心,在持續使用了微服務一段時間之后,您就可以通過對現有日志信息和方式的評估,逐漸摸索出哪些才是您可以用來發現和解決奇怪問題的有用信息。

同時,在記錄和積累了足夠多的日志數據之后,您還可以伺機采用自動化的警報方式,以節約您通過讀取大量日志來定位問題的時間。當然,自動化警報也能夠幫助您以一種積極主動方式,限制各種錯誤向所有用戶處蔓延。

總之,集中化日志信息,是微服務錯誤分析的必備手段。而為日志添加足夠多的上下文信息,則能夠更好地分辨出那些是有用的日志,那些是無用的信息。

原文標題:Microservices Logging Best Practices,作者:Christian Melendez & David McAllister

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:龐桂玉 來源: 51CTO
相關推薦

2019-09-06 09:00:00

開發技能代碼

2023-02-14 10:37:43

API端點版本

2023-12-22 14:27:30

2022-01-19 11:17:50

服務質量 QoS云服務網絡流量

2021-07-05 10:09:52

IT領導者混合工作

2024-06-07 13:04:02

2025-08-01 09:25:30

2017-01-20 09:43:12

日志告警挖掘

2011-09-09 09:50:40

Oracle

2021-06-17 09:00:00

人工智能機器學習開源

2009-07-01 15:24:24

IT職場經驗談

2020-03-30 14:33:30

中國銀行金融科技實踐

2020-05-29 09:41:26

微服務數據工具

2011-08-15 10:27:48

2011-06-21 16:26:19

SEO內部優化

2015-09-16 10:13:16

游戲性能

2011-04-08 15:52:48

服務器遷移

2024-05-28 07:01:29

2009-09-14 15:04:44

2025-05-13 08:20:58

點贊
收藏

51CTO技術棧公眾號

亚洲精品进入| 国产91足控脚交在线观看| 麻豆精品视频在线观看免费| 搡老女人一区二区三区视频tv| 在线观看免费av网址| 在线中文字幕视频观看| 99riav久久精品riav| 国产精品欧美激情在线播放| 青青草原在线免费观看视频| 先锋影音国产精品| 91 com成人网| 国产成人a亚洲精v品无码| 蜜芽在线免费观看| 91一区二区三区在线观看| 国产精品久久久久久网站| 成年人av电影| av中文字幕一区二区| 精品国产一区二区三区忘忧草 | 国产美女91呻吟求| 久草视频免费在线| 婷婷综合伊人| 亚洲欧洲xxxx| 亚洲熟女一区二区| 日韩一区二区三区高清在线观看| 色视频一区二区| 国产精品久久久久9999爆乳| 中文字幕在线播放| 91麻豆免费看片| 成人资源av| 91麻豆国产在线| 日韩成人dvd| 97碰碰碰免费色视频| caoporn91| 国产精品精品国产一区二区| 一区二区三区黄色| 免费污网站在线观看| 欧亚精品一区| 亚洲福利视频网| 三上悠亚 电影| 国产一区二区三区免费在线| 欧美在线999| 免费裸体美女网站| 欧美亚洲韩国| 欧美性高潮在线| 无码专区aaaaaa免费视频| 午夜在线激情影院| 亚洲靠逼com| 中国黄色录像片| 国产黄a三级三级三级av在线看| 国产午夜精品福利| 日本不卡在线观看| 国产中文在线观看| 国产欧美日韩在线视频| 日本免费高清不卡| 成人性生交大片免费看午夜| 久久久国产一区二区三区四区小说| 国内不卡一区二区三区| 免费国产黄色片| 成人黄色大片在线观看| 国产精品三区四区| 同心难改在线观看| 久久久午夜精品理论片中文字幕| 欧美日韩亚洲免费| 国产最新视频在线观看| 中文字幕免费不卡| 性欧美18一19内谢| 人人超在线公开视频| 亚洲国产日产av| 久久免费视频3| 亚洲1234区| 精品视频一区二区三区免费| 九九热99视频| 亚州一区二区| 日韩精品免费在线视频| 亚洲一区二区三区蜜桃| 日韩视频在线观看| 萌白酱国产一区二区| 久久久国产精华液| 亚洲欧美网站| 成人性生交大片免费观看嘿嘿视频| 99久久精品日本一区二区免费| 夫妻av一区二区| 久久精品国产综合精品| 中文字幕日本在线观看| 一区二区三区四区五区视频在线观看| 欧美综合在线播放| 中韩乱幕日产无线码一区| 欧美另类高清zo欧美| 超碰caoprom| 欧美日韩亚洲在线观看| 久久69精品久久久久久久电影好 | 日韩欧美在线网站| 久久久久麻豆v国产精华液好用吗 在线观看国产免费视频 | 亚洲国产视频一区| 欧美黄色一级片视频| 国产在线视频欧美一区| 精品亚洲精品福利线在观看| 亚洲色图27p| 亚洲激情av| 国产女人18毛片水18精品| www.av导航| 国产三级精品三级| 成人在线播放网址| 四虎国产精品免费久久5151| 亚洲高清色综合| 人与动物性xxxx| 亚洲精选91| 成人字幕网zmw| 欧美欧美欧美| 亚洲影院免费观看| 亚洲欧美自拍另类日韩| 女仆av观看一区| 美女国内精品自产拍在线播放| 五月天激情国产综合婷婷婷| 国产一区二区三区四区在线观看| 免费日韩电影在线观看| 日本在线观看高清完整版| 日本韩国视频一区二区| 国产吃瓜黑料一区二区| 成人看的视频| 97av在线视频免费播放| jlzzjlzzjlzz亚洲人| 国产精品美女久久久久久2018| 久久久久久免费看| 久久99精品久久久野外观看| 中文字幕在线成人| 久久久久久久久久久影院| 福利一区在线观看| 成年在线观看视频| 国产免费av国片精品草莓男男| 亚洲性无码av在线| 色av性av丰满av| 99久久99精品久久久久久 | 久久精品一区二区国产| 国产在线一区二| 国产网红女主播精品视频| 欧美一区二区三区啪啪| 国产亚洲精品久久久久久豆腐| 视频在线观看91| 欧美最大成人综合网| 久久精品女人天堂av免费观看| 亚洲国产日韩欧美在线99| 欧美黑人精品一区二区不卡| 国产一区二区按摩在线观看| 日本特级黄色大片| 色综合一区二区日本韩国亚洲 | 日韩成人av电影| 精品亚洲夜色av98在线观看| 国产成人在线免费视频| av欧美精品.com| 欧美日韩亚洲一| 亚洲v天堂v手机在线| 91精品国产91久久久久| 视频午夜在线| 欧洲色大大久久| 日本免费网站视频| 国产一区二三区好的| 麻豆视频传媒入口| 久久国产精品免费一区二区三区| 欧美成人激情在线| 亚洲经典一区二区| 午夜在线成人av| 国产aⅴ激情无码久久久无码| 老司机午夜精品视频在线观看| 热舞福利精品大尺度视频| www.精品国产| 另类少妇人与禽zozz0性伦| 国产xxxx孕妇| 婷婷综合久久一区二区三区| 久久丫精品国产亚洲av不卡| 蜜臀国产一区二区三区在线播放| 亚洲精品中文字幕乱码三区不卡| 在线视频成人| 久久久久久久久91| 毛片免费在线| 56国语精品自产拍在线观看| 国产精品a成v人在线播放| 久久综合色婷婷| 九九热免费在线观看| 禁久久精品乱码| 欧美亚洲国产免费| 国产视频网站一区二区三区| 91精品成人久久| 麻豆视频在线观看免费| 亚洲成人黄色网| 亚洲午夜无码久久久久| 亚洲男人的天堂一区二区| 六十路息与子猛烈交尾| 精品亚洲成a人| 91丨porny丨探花| 久久中文字幕二区| 国产精品一区二区在线观看 | 极品尤物一区二区| 国产盗摄视频一区二区三区| 久久久久久久久久久福利| 欧美激情偷拍自拍| 久久一区二区三区欧美亚洲| 日韩免费大片| 欧美最猛性xxxxx(亚洲精品)| 免费观看在线黄色网| 亚洲国产私拍精品国模在线观看| 国产亚洲久一区二区| 亚洲高清在线视频| 欧美特黄一级片| 久久久久久久久伊人| 久久发布国产伦子伦精品| 老**午夜毛片一区二区三区| 国产高清不卡无码视频| 色综合咪咪久久网| 久久精品人成| youjizz欧美| 91免费在线视频网站| 亚洲成a人片| 久久免费视频在线观看| 黄色在线观看网站| 亚洲午夜激情免费视频 | 亚洲丝袜一区在线| 国产91免费看| 欧美一区二区三区日韩视频| 国产偷人爽久久久久久老妇app| 午夜精品国产更新| 欧美黑人一级片| 自拍偷自拍亚洲精品播放| 国产jjizz一区二区三区视频| 成人成人成人在线视频| 极品人妻一区二区| 国产精品亚洲午夜一区二区三区 | 99久久999| 国产精品黄色av| 成人av免费电影网站| 午夜精品久久久久久久男人的天堂| www.久久ai| 久久精品成人动漫| 最新av网站在线观看| 亚洲日韩欧美视频| 九色视频在线播放| 国产一区二区欧美日韩| 高清av电影在线观看| 亚洲人永久免费| 黄色视屏网站在线免费观看| 亚洲免费福利视频| 国产高清在线看| 国产小视频91| 9191在线观看| 久久精品99久久久久久久久| 麻豆传媒在线免费| 久久亚洲综合国产精品99麻豆精品福利| 最新国产在线观看| 久久精品视频在线| 性欧美videos高清hd4k| 久久久久日韩精品久久久男男| 久草在线新免费首页资源站| 欧美激情国产精品| av中文资源在线资源免费观看| 97国产在线视频| 成人香蕉视频| 国产欧美va欧美va香蕉在| 人人玩人人添人人澡欧美| 亚洲xxxx3d| 成人知道污网站| 欧美日韩精品免费观看视一区二区| 亚洲人成亚洲精品| 少妇免费毛片久久久久久久久| 国产精品国内免费一区二区三区| 国产又粗又大又爽的视频| 欧美三级视频| 日本毛片在线免费观看| 日韩精品五月天| 九九热精品国产| 成人成人成人在线视频| 深爱五月激情网| 中文字幕亚洲区| 成人观看免费视频| 欧美性猛xxx| 亚洲在线免费观看视频| 日韩精品一区二区三区三区免费| 天堂在线视频免费观看| 国产一区二区三区三区在线观看| 免费在线观看av网站| 久久久久久久久久婷婷| 日韩电影网站| 91在线观看网站| 婷婷成人影院| 青少年xxxxx性开放hg| 亚洲欧洲视频| 欧美日韩一区二区三区69堂| 风流少妇一区二区| 精品手机在线视频| 亚洲国产wwwccc36天堂| 伊人网免费视频| 亚洲黄色av女优在线观看| 一级毛片视频在线| 97久久精品人人澡人人爽缅北| 久久天天久久| 国精产品一区二区| 亚洲综合色网| 爆乳熟妇一区二区三区霸乳| 国产成人精品三级| 无码少妇一区二区| 午夜精品免费在线| 91片黄在线观看喷潮| 日韩精品在线播放| 羞羞的视频在线看| 国产欧美 在线欧美| 午夜精品福利影院| 欧美美女黄色网| 麻豆久久久久久| aaaaa一级片| 亚洲一区二区美女| 91无套直看片红桃| 亚洲午夜久久久影院| 激情在线视频播放| 成人xvideos免费视频| 国产精品免费99久久久| 中文字幕无码精品亚洲资源网久久| 狠狠色丁香九九婷婷综合五月| 精品人妻少妇嫩草av无码| 亚洲午夜精品久久久久久久久| 97caocao| 色香阁99久久精品久久久| 美女福利一区二区| 精品无人区一区二区三区| 国产精品99一区二区| 三日本三级少妇三级99| 国产精品三级久久久久三级| 天干夜夜爽爽日日日日| 亚洲激情 国产| 福利成人导航| 国产精品区免费视频| 欧美激情aⅴ一区二区三区| 亚洲日本黄色片| 国产精品久久久久久亚洲毛片| 免费看毛片网站| 日韩久久午夜影院| av剧情在线观看| 精品一区二区三区自拍图片区 | 国产91精品青草社区| 麻豆精品少妇| 国产视频九色蝌蚪| 91网站黄www| youjizz在线视频| 亚洲日本aⅴ片在线观看香蕉| 亚洲女色av| 欧美xxxx黑人又粗又长密月| 奶水喷射视频一区| 深爱五月激情网| 日本精品视频一区二区三区| 国产一二三在线观看| 国产精品一区二区三| 欧美成人milf| 激情久久综合网| 亚洲精品高清在线观看| 亚洲成a人片在线| 97精品一区二区视频在线观看| 亚洲aa在线| 婷婷免费在线观看| 亚洲色图视频网| 日韩一区二区三区不卡| 3344国产精品免费看| 少妇精品久久久一区二区三区| 日韩亚洲在线视频| 国产精品久久久久久久午夜片| 精品国产av 无码一区二区三区| 久99九色视频在线观看| 麻豆一区一区三区四区| 岳毛多又紧做起爽| 亚洲国产精品传媒在线观看| 国产又黄又爽视频| 欧美国产在线电影| 亚洲区小说区图片区qvod按摩| 99re精彩视频| 亚洲国产日韩精品| 福利成人在线观看| 91精品视频大全| 最新日韩欧美| 国产在线免费av| 欧美成va人片在线观看| 成人欧美大片| 日本三级中文字幕在线观看| 成人看片黄a免费看在线| www.国产毛片| 久久艹在线视频| 伊人成综合网yiren22| 日本77777| 狠狠色狠狠色综合日日小说| 日韩三级影院| 久久艹中文字幕| 精品在线你懂的| 在线免费黄色av| 美女啪啪无遮挡免费久久网站| 欧美调教视频| 日本精品一区在线| 欧美性jizz18性欧美| a视频在线播放| 欧美一区激情视频在线观看| 国产黄色精品视频| 青娱乐在线免费视频| 久久久久五月天| 亚洲影视一区二区三区| 色婷婷在线影院|