精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

亚洲欧洲制服丝袜| 欧美r级电影| 欧美日韩精品在线| 日本精品一区二区| 国产片在线播放| 免费污视频在线| 国产乱码精品一区二区亚洲 | 538精品视频| av中文字幕观看| 亚洲黄页网站| 欧美在线观看一区| 久久久999精品| 做爰高潮hd色即是空| 国产精品一品二区三区的使用体验| 女主播福利一区| 国产丝袜一区二区三区免费视频| www.国产福利| 国模冰冰炮一区二区| 国产尤物av一区二区三区| 国产女主播福利| 亚洲精品日本| 中文字幕九色91在线| 国产精品91av| 久久国内精品| 精品一区二区三区中文字幕视频| 99视频精品免费视频| 国产精品91一区| 国产乱码久久久久久| 精品国产乱码久久久久久蜜坠欲下 | 亚洲xxxx在线| 波多野结衣一区二区三区在线| 欧美激情91| 色多多国产成人永久免费网站| 欧美一区二区三区成人精品| 国产精品高清一区二区 | 国产乱了高清露脸对白| 欧美高清hd| 欧美日韩精品一区二区三区蜜桃 | 亚洲精品福利在线观看| 日韩精品xxx| 高清av一区二区三区| 欧美视频一二三| 欧美这里只有精品| 免费黄网站在线播放| 日本一区二区三区视频视频| 欧美日韩精品一区| 免费国产在线观看| 26uuu精品一区二区三区四区在线| 成人一区二区三区四区| 性欧美videos另类hd| 国产在线播精品第三| 成人黄色影片在线| 国产精品无码在线播放| 精品午夜一区二区三区在线观看| 国产精品久久久久久久久粉嫩av | 91n在线视频| 视频在线不卡免费观看| 中文字幕成人在线| 精品少妇一区二区三区密爱| 色综合蜜月久久综合网| 最新的欧美黄色| 亚洲精品天堂网| 久久精品99久久无色码中文字幕| 中文字幕久久亚洲| 三级在线观看免费大全| 91精品国产自产在线观看永久∴| 久久精视频免费在线久久完整在线看| 强制高潮抽搐sm调教高h| 亚洲欧美网站在线观看| 久久999免费视频| 五月天婷婷网站| 蜜桃久久av| 国产日韩欧美日韩| 成人av无码一区二区三区| 成人avav在线| 人偷久久久久久久偷女厕| 91.xxx.高清在线| 亚洲乱码国产乱码精品精98午夜| 老司机激情视频| 欧美裸体视频| 欧美日韩在线电影| 亚洲av综合色区无码另类小说| 好吊妞国产欧美日韩免费观看网站 | xxxx在线免费观看| 7777精品| 亚洲网在线观看| 欧美精品久久久久性色| 亚洲一区视频| 91久久久久久| 性感美女一级片| 国产精品久久久久久久久快鸭| 伊人再见免费在线观看高清版| aaa在线播放视频| 欧美色网一区二区| 中文字幕18页| 日产精品一区二区| 97免费中文视频在线观看| 中文区中文字幕免费看| 成人午夜视频网站| 视频一区二区三区在线观看| 手机在线免费看av| 欧美在线免费观看亚洲| 高清中文字幕mv的电影| 北条麻妃国产九九九精品小说| 欧美大片免费观看| 最新中文字幕免费| 99在线视频精品| 青少年xxxxx性开放hg| 日韩影片中文字幕| 精品欧美乱码久久久久久1区2区| 久久精品99久久久香蕉| 国产精品久久久精品四季影院| 国产精品综合色区在线观看| 91在线视频导航| 高清毛片在线看| 午夜精品福利一区二区三区av| 国产又黄又猛又粗| 亚洲传媒在线| 久久久久久久久综合| 国产又大又黑又粗| 国产欧美日韩卡一| 少妇高潮喷水久久久久久久久久| 欧美黄视频在线观看| 最新91在线视频| 国产成人自拍偷拍| 久久亚洲精品小早川怜子| 亚洲免费在线精品一区| 久久爱91午夜羞羞| 日韩av综合网| 日韩欧美性视频| 国产成人精品综合在线观看| 一级黄色免费在线观看| 高清在线一区| 这里只有精品丝袜| 波多野结衣在线观看一区| 91片在线免费观看| 国产精品裸体瑜伽视频| 高清精品视频| 91精品国产高清自在线| 亚洲国产精品二区| 亚洲永久精品国产| 欧美少妇性xxxx| 欧美成人精品福利| 翔田千里88av中文字幕| 欧美aⅴ一区二区三区视频| 久久天天狠狠| 中文字幕成在线观看| 日韩成人免费视频| 韩国av免费观看| 99久久精品国产观看| 亚洲 欧美 日韩 国产综合 在线 | 91精品黄色| 在线电影福利片| 欧美一区二区三区四区久久| 成熟的女同志hd| 国产福利一区二区三区视频在线| 国产树林野战在线播放| 日韩三级网址| 欧美激情一区二区三区高清视频| 亚洲成人一级片| 亚洲高清免费视频| 波多野结衣办公室33分钟| 天堂av在线一区| 亚洲精品不卡| 精品久久亚洲| 午夜精品久久久久久久久久久久久 | 久久久成人av毛片免费观看| 中文字幕日韩欧美在线 | 亚洲国语精品自产拍在线观看| 日韩成人免费在线观看| 91丨九色porny丨蝌蚪| jizz欧美激情18| 68国产成人综合久久精品| 国产91精品入口17c| 碰碰在线视频| 在线视频一区二区| 精品免费久久久| 精品动漫一区二区三区| gv天堂gv无码男同在线观看| 国产最新精品免费| 久久精品国产sm调教网站演员| 久久av资源| 91老司机精品视频| 美女高潮在线观看| 日韩一区二区三区在线播放| 午夜精品一二三区| 欧洲生活片亚洲生活在线观看| 日韩欧美123区| 久久网这里都是精品| 涩涩网站在线看| 99精品国产一区二区青青牛奶 | 欧美涩涩视频| 蜜桃视频日韩| 激情五月综合婷婷| 88xx成人精品| av网址在线播放| 国产亚洲精品久久久久久牛牛| 国产日韩在线观看一区| 亚洲成人免费视频| 国产在线免费看| 91免费版在线看| 少妇性l交大片7724com| 日韩精品1区2区3区| 黄色三级中文字幕| 日韩欧美高清| 另类视频在线观看+1080p| 亚洲ww精品| 日韩美女在线观看| 国产在线xxx| 日韩有码在线视频| 九色在线播放| 亚洲激情在线观看| 99久久久久久久| 欧美丝袜自拍制服另类| 日韩精品在线观看免费| 一区二区三区四区在线播放 | 欧美婷婷久久五月精品三区| 欧美一区永久视频免费观看| 成人一二三四区| 欧美性猛交xxxxx免费看| 久久久久无码精品国产| 亚洲视频一区二区在线| 91资源在线播放| 久久尤物电影视频在线观看| 熟女人妻一区二区三区免费看| 老司机一区二区| 高清一区在线观看| 久久精品一本| 亚洲精品无码久久久久久| 亚洲第一伊人| 欧美大黑帍在线播放| 欧美日韩精品一本二本三本| 国产日韩第一页| 色男人天堂综合再现| 一本久久a久久精品vr综合 | 成人免费播放器| 欧美亚洲不卡| 精品一二三四五区| 欧美视频在线观看| 精品人妻大屁股白浆无码| 欧美激情视频一区二区三区免费| 国产系列第一页| 天天操夜夜操国产精品| 在线国产精品网| 图片区亚洲欧美小说区| 国产又黄又爽免费视频| 欧美高清不卡| 久久亚洲精品无码va白人极品| 欧美激情精品久久久六区热门| 国产精品一二三在线观看| 夜间精品视频| 欧美日韩激情四射| 亚洲国产综合在线看不卡| 成年女人18级毛片毛片免费| 狠狠爱成人网| 久久久久久久久久久99| 免费亚洲婷婷| 天天操天天爽天天射| 免费观看在线综合| 中文字幕 欧美日韩| 国产一区二区三区精品视频| 亚洲精品无码一区二区| 97se狠狠狠综合亚洲狠狠| 成人免费无遮挡无码黄漫视频| 欧美激情中文字幕| 欧美色视频一区二区三区在线观看| 中文字幕亚洲区| 久久久美女视频| 色综合久久久久网| 91国偷自产中文字幕久久| 日韩一区国产二区欧美三区| 日本免费一区视频| 亚洲香蕉成视频在线观看 | |精品福利一区二区三区| 加勒比av在线播放| 色综合亚洲欧洲| 国产人妖在线播放| 精品视频在线播放| 日本电影全部在线观看网站视频| 欧美日韩成人在线视频| 国产精品迅雷| 91视频免费网站| 思热99re视热频这里只精品 | 三级外国片在线观看视频| 欧美黑人性生活视频| 美女100%一区| 亚洲一区免费网站| 九色成人国产蝌蚪91| 中文字幕日韩精品久久| 一区二区福利| 樱花草www在线| 久久日一线二线三线suv| 最新av电影网站| 欧美午夜视频一区二区| 国产又粗又猛又黄又爽无遮挡 | 国产九九在线| 欧美激情综合亚洲一二区| 国产超碰精品| 成人在线观看av| 色爱综合网欧美| 成年人免费在线播放| 国产成人亚洲综合a∨婷婷| 亚洲色成人网站www永久四虎| 亚洲精品福利视频网站| 在线免费观看av网址| 亚洲国产欧美一区| 国产一二区在线| 国产黑人绿帽在线第一区| 97se亚洲| 97超碰免费观看| 视频一区国产视频| 成年人的黄色片| 亚洲精品国产成人久久av盗摄| 免费av中文字幕| 亚洲精品成人久久电影| 成人在线播放免费观看| 国产精品久久久久久久9999 | 国产成人8x视频一区二区| 懂色av蜜桃av| 一本色道久久综合狠狠躁的推荐| 性猛交富婆╳xxx乱大交天津| 久久精品国产69国产精品亚洲 | 欧美午夜精品久久久久久超碰 | 97av免费视频| 国产亚洲精品美女久久久久| 福利在线免费视频| 粉嫩av一区二区三区免费观看| 欧美www视频在线观看| av网站在线不卡| 中文字幕av一区二区三区| 少妇太紧太爽又黄又硬又爽| 精品福利在线导航| 色屁屁www国产馆在线观看| 91视频国产高清| 伊人久久大香线| www,av在线| 亚洲女同女同女同女同女同69| 一卡二卡三卡在线| 综合欧美国产视频二区| 不卡亚洲精品| 亚洲第一综合| 久久国产综合精品| 中文乱码字幕高清一区二区| 欧美日韩国产一级| 日本中文字幕电影在线免费观看| 国产主播欧美精品| 天天揉久久久久亚洲精品| 久热在线视频观看| 中文字幕在线不卡视频| 国产丝袜在线视频| 欧美日韩爱爱视频| 老牛精品亚洲成av人片| 久色视频在线播放| 91毛片在线观看| 超碰在线观看91| 日韩中文字幕久久| 96sao精品免费视频观看| 久久最新免费视频| 成人性色生活片| 四虎成人永久免费视频| 亚洲偷熟乱区亚洲香蕉av| 国产一区二区三区四区五区3d| 中文视频一区视频二区视频三区| 国产呦萝稀缺另类资源| 久草视频中文在线| 精品网站999www| 国精品产品一区| japanese在线播放| 91一区二区在线| 亚洲精品国产欧美在线观看| 久久久精品久久| 精品久久ai| 99草草国产熟女视频在线| 一区二区中文视频| 亚洲精品一区二区三区区别| 欧美一区三区三区高中清蜜桃| 不卡日本视频| 国产老头和老头xxxx×| 欧美日韩国产一区二区三区| 国产美女视频一区二区三区| 91香蕉亚洲精品| 国产日韩欧美三级| 内射毛片内射国产夫妻| 欧美videossexotv100| 美女福利一区二区三区| 五月天男人天堂| 91丨porny丨首页| 99国产精品欲| 日本精品视频在线| 欧美大片一区| 国产精品情侣呻吟对白视频| 精品久久五月天| 成人做爰视频www| 日韩日韩日韩日韩日韩| 国产精品久久夜| 亚洲三级中文字幕| 91夜夜揉人人捏人人添红杏| 久久夜色精品| 精品视频在线观看免费| 中文字幕日韩高清|