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

Spring Cloud構建微服務架構:分布式服務跟蹤(整合logstash)

開發 開發工具 分布式
引入基于日志的分析系統是一個不錯的選擇,比如:ELK平臺,它可以輕松的幫助我們來收集和存儲這些跟蹤日志,同時在需要的時候我們也可以根據Trace ID來輕松地搜索出對應請求鏈路相關的明細日志。

通過之前的入門示例,我們已經為trace-1和trace-2引入了Spring Cloud Sleuth的基礎模塊spring-cloud-starter-sleuth,實現了為各微服務的日志信息中添加跟蹤信息的功能。但是,由于日志文件都離散的存儲在各個服務實例的文件系統之上,僅僅通過查看日志文件來分析我們的請求鏈路依然是一件相當麻煩的差事,所以我們還需要一些工具來幫助我們集中的收集、存儲和搜索這些跟蹤信息。引入基于日志的分析系統是一個不錯的選擇,比如:ELK平臺,它可以輕松的幫助我們來收集和存儲這些跟蹤日志,同時在需要的時候我們也可以根據Trace ID來輕松地搜索出對應請求鏈路相關的明細日志。

[[224659]]

ELK平臺主要有由ElasticSearch、Logstash和Kiabana三個開源免費工具組成:

  • Elasticsearch是個開源分布式搜索引擎,它的特點有:分布式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。
  • Logstash是一個完全開源的工具,他可以對你的日志進行收集、過濾,并將其存儲供以后使用。
  • Kibana 也是一個開源和免費的工具,它Kibana可以為 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以幫助您匯總、分析和搜索重要數據日志。

Spring Cloud Sleuth在與ELK平臺整合使用時,實際上我們只要實現與負責日志收集的Logstash完成數據對接即可,所以我們需要為Logstash準備json格式的日志輸出。由于Spring Boot應用默認使用了logback來記錄日志,而Logstash自身也有對logback日志工具的支持工具,所以我們可以直接通過在logback的配置中增加對logstash的appender,就能非常方便的將日志轉換成以json的格式存儲和輸出了。

下面我們來詳細介紹一下在快速入門示例的基礎上,如何實現面向Logstash的日志輸出配置:

  • 在pom.xml依賴中引入logstash-logback-encoder依賴,具體如下:
  1. <dependency> 
  2.   <groupId>net.logstash.logback</groupId> 
  3.   <artifactId>logstash-logback-encoder</artifactId> 
  4.   <version>4.6</version> 
  5. </dependency> 
  • 在工程/resource目錄下創建bootstrap.properties配置文件,將spring.application.name=trace-1配置移動到該文件中去。由于logback-spring.xml的加載在application.properties之前,所以之前的配置logback-spring.xml無法獲取到spring.application.name屬性,因此這里將該屬性移動到***加載的bootstrap.properties配置文件中。
  • 在工程/resource目錄下創建logback配置文件logback-spring.xml,具體內容如下:
  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <configuration> 
  3.     <include resource="org/springframework/boot/logging/logback/defaults.xml"/> 
  4.        
  5.     <springProperty scope="context" name="springAppName" source="spring.application.name"/> 
  6.     <!-- 日志在工程中的輸出位置 --> 
  7.     <property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/> 
  8.     <!-- 控制臺的日志輸出樣式 --> 
  9.     <property name="CONSOLE_LOG_PATTERN" 
  10.               value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr([${springAppName:-},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-Span-Export:-}]){yellow} %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/> 
  11.  
  12.     <!-- 控制臺Appender --> 
  13.     <appender name="console" class="ch.qos.logback.core.ConsoleAppender"
  14.         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">            
  15.             <level>INFO</level
  16.         </filter> 
  17.          <encoder> 
  18.             <pattern>${CONSOLE_LOG_PATTERN}</pattern> 
  19.             <charset>utf8</charset> 
  20.        </encoder> 
  21.     </appender> 
  22.  
  23.     <!-- 為logstash輸出的json格式的Appender --> 
  24.     <appender name="logstash" class="ch.qos.logback.core.rolling.RollingFileAppender"
  25.         <file>${LOG_FILE}.json</file> 
  26.         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
  27.             <fileNamePattern>${LOG_FILE}.json.%d{yyyy-MM-dd}.gz</fileNamePattern> 
  28.             <maxHistory>7</maxHistory> 
  29.         </rollingPolicy> 
  30.         <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder"
  31.             <providers> 
  32.                 <timestamp
  33.                     <timeZone>UTC</timeZone> 
  34.                 </timestamp
  35.                 <pattern> 
  36.                     <pattern> 
  37.                         { 
  38.                           "severity""%level"
  39.                           "service""${springAppName:-}"
  40.                           "trace""%X{X-B3-TraceId:-}"
  41.                           "span""%X{X-B3-SpanId:-}"
  42.                           "exportable""%X{X-Span-Export:-}"
  43.                           "pid""${PID:-}"
  44.                           "thread""%thread"
  45.                           "class""%logger{40}"
  46.                           "rest""%message" 
  47.                         } 
  48.                     </pattern> 
  49.                 </pattern> 
  50.             </providers> 
  51.         </encoder> 
  52.     </appender> 
  53.        
  54.     <root level="INFO"
  55.         <appender-ref ref="console"/> 
  56.         <appender-ref ref="logstash"/> 
  57.     </root> 
  58. </configuration> 

對logstash支持主要通過名為logstash的appender實現,內容并不復雜,主要是對日志信息的格式化處理,上面為了方便調試查看我們先將json日志輸出到文件中。

完成上面的改造之后,我們再將快速入門的示例運行起來,并發起對trace-1的接口訪問。此時我們可以在trace-1和trace-2的工程目錄下發現有一個build目錄,下面分別創建了以各自應用名稱命名的json文件,該文件就是在logback-spring.xml中配置的名為logstash的appender輸出的日志文件,其中記錄了類似下面格式的json日志:

  1. {"@timestamp":"2016-12-04T06:57:58.970+00:00","severity":"INFO","service":"trace-1","trace":"589ee5f7b860132f","span":"a9e891273affb7fc","exportable":"false","pid":"19756","thread":"http-nio-9101-exec-1","class":"c.d.TraceApplication$$EnhancerBySpringCGLIB$$a9604da6","rest":"===<call trace-1>==="
  2. {"@timestamp":"2016-12-04T06:57:59.061+00:00","severity":"INFO","service":"trace-1","trace":"589ee5f7b860132f","span":"2df8511ddf3d79a2","exportable":"false","pid":"19756","thread":"http-nio-9101-exec-1","class":"o.s.c.a.AnnotationConfigApplicationContext","rest":"Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@64951f38: startup date [Sun Dec 04 14:57:59 CST 2016]; parent: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@4b8c8f15"

我們除了可以通過上面的方式生成json文件之外,也可以使用LogstashTcpSocketAppender將日志內容直接通過Tcp Socket輸出到logstash服務端,比如:

  1. <appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender"
  2.   <destination>127.0.0.1:9250</destination> 
  3.   ... 
  4. </appender> 

本文完整示例:

讀者可以根據喜好選擇下面的兩個倉庫中查看trace-1和trace-2兩個項目:

【本文為51CTO專欄作者“翟永超”的原創稿件,轉載請通過51CTO聯系作者獲取授權】

戳這里,看該作者更多好文

 

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2018-04-09 13:56:13

微服務架構分布式

2018-03-13 16:42:26

分布式服務跟蹤

2018-03-02 16:11:29

Spring Clou分布式服務跟蹤

2018-04-18 16:07:49

Spring Clou微服務分布式

2018-04-16 14:56:56

微服務架構分布式服務

2017-07-28 16:41:53

Spring Clou微服務架構

2018-05-23 15:58:27

Spring Clou微服務架構

2018-07-19 14:58:14

Spring Clou微服務架構

2021-06-09 09:00:00

微服務架構技術

2017-06-26 09:06:10

Spring Clou微服務架構

2017-09-04 16:15:44

服務網關架構

2020-05-26 11:59:30

日志鏈路微服務架構

2017-07-03 09:50:07

Spring Clou微服務架構

2017-08-10 11:15:05

Spring Clou微服務架構

2017-08-09 15:50:47

Spring Clou微服務架構

2023-09-12 22:58:51

分布式架構微服務

2023-08-25 16:26:49

微服務架構

2017-07-04 17:35:46

微服務架構Spring Clou

2017-06-25 13:33:25

Spring Clou微服務架構

2017-12-20 15:37:39

Spring Clou微服務架構
點贊
收藏

51CTO技術棧公眾號

在线a欧美视频| 成人av电影在线观看| 国产亚洲精品va在线观看| 性做爰过程免费播放| 国产99对白在线播放| 亚洲欧美在线专区| 欧美本精品男人aⅴ天堂| 九色自拍视频在线观看| 精品一二三区视频| 麻豆一区二区三| 欧美成人在线网站| 无码精品一区二区三区在线播放| 三级成人黄色影院| 一区免费观看视频| 国产精品一区二区三区四区五区| 国产乱国产乱老熟300| 国内毛片久久| 在线免费精品视频| 日韩国产精品一区二区| av中文字幕免费| 男女av一区三区二区色多| 尤物yw午夜国产精品视频| 国产麻花豆剧传媒精品mv在线| 亚洲乱亚洲乱妇| 精品一区二区三区在线观看| 久久理论片午夜琪琪电影网| 无码少妇一区二区| 国产一区二区视频在线看 | 一区二区三区伦理片| 欧美黄页免费| 精品久久久久久中文字幕| 亚洲自拍三区| 深夜福利视频网站| 久久精品国产第一区二区三区| 久久久久中文字幕| 午夜黄色福利视频| 色狼人综合干| 欧美大片顶级少妇| www.污污视频| 欧美韩国亚洲| 精品国产1区2区| 国产成人三级视频| 成人福利在线| 久久久精品国产免大香伊| 高清不卡日本v二区在线| 国产91av在线播放| 激情久久五月| 久久精品久久久久| 亚洲精品91在线| 婷婷综合福利| 亚洲国产精品中文| 美女又黄又免费的视频| 色狠狠一区二区三区| 在线一区二区三区四区五区| 国产av天堂无码一区二区三区| 麻豆免费在线视频| 国产精品久久久久毛片软件| 国产精品露出视频| 国产一区二区自拍视频| 欧美aaaaa成人免费观看视频| 69**夜色精品国产69乱| 久久久精品人妻一区二区三区四 | 欧美日韩国产不卡| 麻豆传传媒久久久爱| 丝袜老师在线| 精品国产成人av| 国产精品专区在线| 久久五月精品中文字幕| 亚洲中国最大av网站| 黄色影视在线观看| 婷婷视频在线| 国产精品人妖ts系列视频| 日本精品一区二区三区不卡无字幕| 亚洲av成人精品一区二区三区在线播放| 精品在线免费视频| 成人精品一区二区三区电影黑人| 五月天综合激情网| 午夜在线精品| 国产精品扒开腿做| 在线观看亚洲一区二区| 蜜桃av噜噜一区| 国产精品一区二区三区毛片淫片 | 97人妻天天摸天天爽天天| 久久悠悠精品综合网| 亚洲精品www久久久久久广东| 欧美xxxxx少妇| 人体久久天天| 日韩激情视频在线| 中文字幕成人动漫| 欧美日韩中文一区二区| 中文日韩在线视频| www.av免费| 欧美日韩99| 午夜精品一区二区三区在线 | 日韩av电影国产| 国产日韩久久久| 精品在线播放午夜| 亚洲曰本av电影| 日韩一区免费视频| 91在线精品秘密一区二区| 欧美三级网色| 精品自拍一区| 精品久久久久久亚洲国产300| www.99在线| 亚洲码欧美码一区二区三区| 日韩av在线一区二区| xxx在线播放| 欧美电影免费播放| 久久久久久成人| 中文字幕在线天堂| 国产精品自拍三区| 久久久水蜜桃| 黄页视频在线播放| 亚洲 欧美综合在线网络| 不卡av免费在线| 香蕉成人app| 亚洲欧美成人精品| 久久久精品视频免费观看| 国产精品久久久久久模特| 国产日本欧美一区| 五月婷婷深深爱| 国产精品婷婷午夜在线观看| 成人免费网站入口| 精品美女一区| 日韩高清欧美高清| 波多野结衣在线网址| 夜夜嗨av一区二区三区网站四季av| 国产精品美女免费| 性感美女福利视频| 亚洲品质自拍视频| 五月婷婷狠狠操| 久久av网站| 自拍偷拍亚洲区| 国产一区二区99| 国产河南妇女毛片精品久久久| 欧美日韩一区在线视频| 日韩欧美一起| 欧美精品欧美精品系列| 最近中文字幕在线mv视频在线| 精品成人在线| 亚洲一区二区三区成人在线视频精品| 欧美成人片在线| 亚洲国产另类精品专区| caoporm在线视频| 青草国产精品| 91高清视频免费| 国产高清视频免费观看| 国产精品久久久久天堂| 国内自拍视频网| 日韩高清一级| 高清视频欧美一级| wwwav网站| 亚洲午夜免费电影| 亚洲自拍偷拍精品| 国产精品美女久久久| 久久久久综合一区二区三区| 免费观看欧美大片| 亚洲午夜精品久久久久久性色| 麻豆精品久久久久久久99蜜桃| 91丨九色丨国产丨porny| 日本免费不卡一区二区| 日韩欧美影院| 国产精品视频xxx| 麻豆影院在线| 欧美本精品男人aⅴ天堂| 九九热国产视频| 久久婷婷综合激情| 久久黄色免费看| 欧美亚洲高清| 97超碰人人看人人| 国产自产自拍视频在线观看| 亚洲免费电影一区| 一级黄色大片免费| 亚洲亚洲精品在线观看| 青青草成人免费视频| 琪琪一区二区三区| 少妇一晚三次一区二区三区| 国产一区调教| 国产精品高潮呻吟久久av无限| 免费人成在线观看播放视频| 精品久久久久香蕉网| 日韩电影在线观看一区二区| 国产精品二区一区二区aⅴ污介绍| 精产国品一二三区| 噜噜噜久久亚洲精品国产品小说| 亚洲乱码一区二区三区| 77成人影视| 国产福利视频一区二区| 成人在线直播| 日韩激情片免费| 99精品视频免费看| 色呦呦国产精品| 黄色一级片中国| 国产视频一区二区三区在线观看| 中文字幕一区二区在线观看视频| 一区二区三区导航| 妞干网这里只有精品| 日韩精品免费一区二区三区竹菊| 国产日韩欧美电影在线观看| bl视频在线免费观看| 五月天综合网站| 国内精品久久久久久| 福利视频在线看| 亚洲第一视频网站| 国产尤物在线观看| 91久久久免费一区二区| 国产真人真事毛片| 国产精品超碰97尤物18| 国产精品伦子伦| 国产精品一品二品| 在线视频日韩一区 | 国产精品一级二级| 日韩欧美中文免费| 久一视频在线观看| 专区另类欧美日韩| 国产在线综合视频| 99re这里只有精品首页| 亚洲高清av一区二区三区| 日韩av午夜在线观看| 免费一级特黄特色毛片久久看| 亚洲成av人电影| 视频在线精品一区| 曰本一区二区三区视频| 国产精品有限公司| 日韩在线观看一区二区三区| 国产美女精品视频| 久久久成人av毛片免费观看| 91精品国产高清久久久久久| 高清电影在线观看免费| 欧美猛交免费看| 高清免费电影在线观看| 中文字幕在线亚洲| 福利成人在线观看| 亚洲视频精品在线| 奇米影视888狠狠狠777不卡| 日韩国产高清污视频在线观看| 丰满人妻一区二区三区免费视频| 日韩欧美一区二区在线视频| 97人妻精品一区二区三区软件| 欧美日韩一区二区电影| 成人黄色免费网| 欧美性大战久久久久久久| 91黑人精品一区二区三区| 日本乱人伦一区| 日韩精品一区不卡| 欧美日韩在线一区二区| 男人天堂视频网| 欧美色图第一页| 亚洲一区 中文字幕| 欧美日韩免费在线视频| 一级黄在线观看| 日韩一区二区麻豆国产| 亚洲成熟女性毛茸茸| 精品免费视频.| 凸凹人妻人人澡人人添| 亚洲久久久久久久久久| 久久电影视频| 色哟哟网站入口亚洲精品| 麻豆影院在线| 欧美激情第1页| 香蕉伊大人中文在线观看| 欧美一区二区三区图| 欧美色网在线| 成人黄色在线观看| 综合视频一区| 久久综合中文色婷婷| 精品国产一区二区三区久久久樱花 | 亚洲人精品一区| 久久成人国产精品入口| 亚洲图片欧美视频| 日本在线播放视频| 欧美亚洲一区三区| 国产偷人妻精品一区二区在线| 精品国产乱码久久久久久浪潮| 日本久久一级片| 在线观看91久久久久久| 成人区精品一区二区不卡| 久久久人成影片一区二区三区观看 | 亚州国产精品| 亚洲精品中文综合第一页| 亚洲图片在线| 亚洲黄色av网址| 国产99久久久精品| 亚洲午夜久久久久久久久红桃| 国产精品乱码妇女bbbb| 精品视频一区二区在线观看| 欧美日韩中文字幕综合视频| 国产精品一级视频| 日韩电影大全免费观看2023年上| 91sp网站在线观看入口| 色综合久久久久久中文网| 欧美7777| 国产精品永久入口久久久| 色婷婷热久久| 日本www在线播放| 国内精品免费**视频| 女尊高h男高潮呻吟| 1024成人网色www| 午夜久久久久久久久久影院| 精品盗摄一区二区三区| 91最新在线| 青青草一区二区| 亚洲大奶少妇| 亚洲ai欧洲av| 久久人人精品| 美女伦理水蜜桃4| 1000精品久久久久久久久| 国产第一页在线观看| 亚洲国产成人一区| jizz性欧美| 国产有码一区二区| 精品欧美久久| 国产亚洲欧美在线视频| 国产成人午夜99999| 国产日产在线观看| 在线视频一区二区三区| 午夜福利视频一区二区| 久久97久久97精品免视看| 另类一区二区| 涩涩日韩在线| 日日摸夜夜添夜夜添国产精品| 国产性生活毛片| 亚洲一区二区精品视频| 国产精品久久影视| 中文字幕无线精品亚洲乱码一区 | 蜜臀av一级做a爰片久久| 37p粉嫩大胆色噜噜噜| 午夜精品国产更新| 三级小视频在线观看| 欧美激情a在线| 草草视频在线一区二区| 国产精品88久久久久久妇女| 久久成人综合网| 亚洲欧美另类日本| 欧美日韩一区二区不卡| 夜级特黄日本大片_在线| 国产精品免费一区| 久久综合电影| 天天综合天天添夜夜添狠狠添| 国产精品久久久久久久久久久免费看| 国产99久久久久久免费看| 亚洲人成电影网站色www| 欧美天堂视频| 色乱码一区二区三在线看| 日韩精品乱码av一区二区| 免费看日本黄色片| 欧美日韩免费观看一区二区三区| www.中文字幕久久久| 国产精品欧美一区二区| 日韩伦理一区| 亚洲天堂网2018| 一区二区三区中文字幕电影| 精品国产乱码久久久久久蜜臀网站| 精品中文字幕在线2019| 成人高潮a毛片免费观看网站| 青青青在线视频播放| 91在线云播放| 中文 欧美 日韩| 久久九九国产精品怡红院| 91综合精品国产丝袜长腿久久| 日韩精品在线视频免费观看| 99久免费精品视频在线观看| 特级西西444www大精品视频免费看| 亚洲欧美日韩区| 欧美日韩视频免费看| 4444在线观看| 91在线porny国产在线看| 亚洲GV成人无码久久精品| 色777狠狠综合秋免鲁丝| 麻豆国产一区二区三区四区| 国产精品久久..4399| 久久久精品免费网站| 国产精品视频a| 性欧美视频videos6一9| 欧美极品在线观看| 亚洲a级黄色片| 欧美日韩加勒比精品一区| 成年人在线观看网站| 91免费在线观看网站| 欧美亚洲一区| 国产色无码精品视频国产| 亚洲国产高清福利视频| 99久久er| 日韩精品 欧美| 亚洲欧洲精品成人久久奇米网| 高h调教冰块play男男双性文| 日本精品中文字幕| 小小影院久久| 成人手机在线免费视频| 欧美日韩一区 二区 三区 久久精品| 日本在线视频www鲁啊鲁| 欧美三级电影在线播放| 国产成人午夜精品5599| 国产成人精品亚洲| 国语自产精品视频在线看| 欧美电影一区| 亚洲成人网在线播放| 日韩精品一区二区三区蜜臀 | 秋霞网一区二区三区| 精品黑人一区二区三区久久|