国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

在Istio中,到底怎么獲取 Envoy 訪問日志?

這篇具有很好參考價值的文章主要介紹了在Istio中,到底怎么獲取 Envoy 訪問日志?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

Envoy 訪問日志記錄了通過 Envoy 進(jìn)行請求 / 響應(yīng)交互的相關(guān)記錄,可以方便地了解具體通信過程和調(diào)試定位問題。

環(huán)境準(zhǔn)備

部署 httpbin 服務(wù):

kubectl apply -f samples/httpbin/httpbin.yaml

部署 sleep 服務(wù):

kubectl apply -f samples/sleep/sleep.yaml 

httpbin 服務(wù)作為接收請求的服務(wù)端, sleep 服務(wù)作為發(fā)送請求的客戶端。

還需要開啟 Envoy 訪問日志,執(zhí)行以下命令修改 istio 配置:

kubectl -n istio-system edit configmap istio

編輯yaml文件的對應(yīng)配置:

data:
  mesh: |-
    accessLogEncoding: JSON
    accessLogFile: /dev/stdout

其中,accessLogEncoding表示 accesslog 輸出格式,Istio 預(yù)定義了 TEXTJSON 兩種日志輸出格式。默認(rèn)使用 TEXT,通常改成 JSON 以提升可讀性;accessLogFile:表示 accesslog 輸出位置,通常指定到 /dev/stdout (標(biāo)準(zhǔn)輸出),以便使用 kubectl logs 來查看日志。

保證yaml文件后,配置隨即生效。

文章持續(xù)更新,微信搜索「萬貓學(xué)社」第一時間閱讀,關(guān)注后回復(fù)「電子書」,免費(fèi)獲取12本Java必讀技術(shù)書籍。

測試訪問日志

sleep 服務(wù)中向 httpbin 服務(wù)發(fā)出請求:

export SLEEP_POD=$(kubectl get pods -l app=sleep -o 'jsonpath={.items[0].metadata.name}')
kubectl exec "$SLEEP_POD" -c sleep -- curl -sS http://httpbin:8000/headers

返回結(jié)果如下:

{
  "headers": {
    "Accept": "*/*", 
    "Host": "httpbin:8000", 
    "User-Agent": "curl/7.81.0-DEV", 
    "X-B3-Parentspanid": "ed0178f3e1f48dd1", 
    "X-B3-Sampled": "0", 
    "X-B3-Spanid": "6c38b689ee5ab0c8", 
    "X-B3-Traceid": "f17ce19c174cae85ed0178f3e1f48dd1", 
    "X-Envoy-Attempt-Count": "1", 
    "X-Forwarded-Client-Cert": "......"
  }
}

執(zhí)行以下命令,查看sleep 服務(wù)的Envoy日志:

kubectl logs -l app=sleep -c istio-proxy

可以看到sleep服務(wù)對httpbin服務(wù)的調(diào)用的日志:

{
     "authority": "httpbin:8000",
     "bytes_received": 0,
     "bytes_sent": 533,
     "connection_termination_details": null,
     "downstream_local_address": "172.24.146.239:8000",
     "downstream_remote_address": "172.24.158.25:49350",
     "duration": 3,
     "method": "GET",
     "path": "/headers",
     "protocol": "HTTP/1.1",
     "request_id": "ea40d320-348f-4f58-86d4-da157b0e0cca",
     "requested_server_name": null,
     "response_code": 200,
     "response_code_details": "via_upstream",
     "response_flags": "-",
     "route_name": "default",
     "start_time": "2022-07-04T10:00:09.401Z",
     "upstream_cluster": "outbound|8000||httpbin.istio-demo.svc.cluster.local",
     "upstream_host": "172.24.158.96:80",
     "upstream_local_address": "172.24.158.25:41812",
     "upstream_service_time": "2",
     "upstream_transport_failure_reason": null,
     "user_agent": "curl/7.81.0-DEV",
     "x_forwarded_for": null
}

執(zhí)行以下命令,查看httpbin 服務(wù)的Envoy日志:

kubectl logs -l app=httpbin -c istio-proxy

可以看到httpbin服務(wù)被sleep服務(wù)調(diào)用的Envoy日志:

{
     "authority": "httpbin:8000",
     "bytes_received": 0,
     "bytes_sent": 533,
     "connection_termination_details": null,
     "downstream_local_address": "172.24.158.96:80",
     "downstream_remote_address": "172.24.158.25:41812",
     "duration": 2,
     "method": "GET",
     "path": "/headers",
     "protocol": "HTTP/1.1",
     "request_id": "ea40d320-348f-4f58-86d4-da157b0e0cca",
     "requested_server_name": "outbound_.8000_._.httpbin.istio-demo.svc.cluster.local",
     "response_code": 200,
     "response_code_details": "via_upstream",
     "response_flags": "-",
     "route_name": "default",
     "start_time": "2022-07-04T10:00:09.401Z",
     "upstream_cluster": "inbound|80||",
     "upstream_host": "172.24.158.96:80",
     "upstream_local_address": "127.0.0.6:33665",
     "upstream_service_time": "1",
     "upstream_transport_failure_reason": null,
     "user_agent": "curl/7.81.0-DEV",
     "x_forwarded_for": null
}

看到這么多參數(shù),是不是有點(diǎn)懵逼?沒關(guān)系接下來,我們詳細(xì)看看!

文章持續(xù)更新,微信搜索「萬貓學(xué)社」第一時間閱讀,關(guān)注后回復(fù)「電子書」,免費(fèi)獲取12本Java必讀技術(shù)書籍。

刨析Envoy日志

名稱 HTTP TCP
authority 請求授權(quán)頭 未實(shí)現(xiàn)(“-”)
bytes_received 接收到消息體字節(jié)數(shù) 在連接上從下游接收的字節(jié)數(shù)
bytes_sent 發(fā)送的包體字節(jié)數(shù) 在連接上發(fā)送給下游的字節(jié)數(shù)
connection_termination_details 連接中斷詳情 連接中斷詳情
downstream_local_address 下游連接的本地地址 下游連接的本地地址
downstream_remote_address 下游連接的遠(yuǎn)程地址 下游連接的遠(yuǎn)程地址
duration 請求從起始時間到最后一個字節(jié)發(fā)出的持續(xù)總時長(以毫秒為單位) 下游連接的持續(xù)總時長(以毫秒為單位)
method HTTP請求方法 未實(shí)現(xiàn)(“-”)
path HTTP請求路徑 未實(shí)現(xiàn)(“-”)
protocol 協(xié)議,目前不是 HTTP/1.1 就是 HTTP/2 未實(shí)現(xiàn)(“-”)
request_id 由envoy創(chuàng)建的 X-REQUEST-ID 請求頭的值 未實(shí)現(xiàn)(“-”)
requested_server_name 設(shè)置在 ssl 連接套接字上表示服務(wù)器名稱指示 (SNI) 的字符值 未實(shí)現(xiàn)(“-”)
response_code HTTP 響應(yīng)碼 未實(shí)現(xiàn)(“-”)
response_code_details TTP 響應(yīng)狀態(tài)碼詳情提供關(guān)于響應(yīng)狀態(tài)碼的附加信息。 未實(shí)現(xiàn)(“-”)
response_flags 響應(yīng)或者連接的附加詳情 響應(yīng)或者連接的附加詳情
route_name 路由名 路由名
start_time 請求開始時間(包括毫秒) 下游連接開始時間(包括毫秒)
upstream_cluster 上游主機(jī)所屬的上游集群 上游主機(jī)所屬的上游集群
upstream_host 上游主機(jī) URL 上游主機(jī) URL
upstream_local_address 上游連接的本地地址 上游連接的本地地址
upstream_transport_failure_reason 如果上游因傳輸套接字而連接失敗,從傳輸套接字中提供失敗原因。 未實(shí)現(xiàn)(“-”)
user_agent User-Agent請求頭的值 未實(shí)現(xiàn)(“-”)
x_forwarded_for X-Forwarded-For請求頭的值 未實(shí)現(xiàn)(“-”)

清理

刪除 httpbinsleep 服務(wù):

kubectl delete -f samples/httpbin/httpbin.yaml
kubectl delete -f samples/sleep/sleep.yaml 

微信公眾號:萬貓學(xué)社

微信掃描二維碼

關(guān)注后回復(fù)「電子書」

獲取12本Java必讀技術(shù)書籍文章來源地址http://www.zghlxwxcb.cn/news/detail-479707.html

在Istio中,到底怎么獲取 Envoy 訪問日志?

到了這里,關(guān)于在Istio中,到底怎么獲取 Envoy 訪問日志?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微服務(wù)治理框架(Istio)的認(rèn)證服務(wù)與訪問控制

    微服務(wù)治理框架(Istio)的認(rèn)證服務(wù)與訪問控制

    本博客地址:https://security.blog.csdn.net/article/details/130152887 1.1、基于JWT的認(rèn)證 在微服務(wù)架構(gòu)下,每個服務(wù)是無狀態(tài)的,由于服務(wù)端需要存儲客戶端的登錄狀態(tài),因此傳統(tǒng)的session認(rèn)證方式在微服務(wù)中不再適用。理想的實(shí)現(xiàn)方式應(yīng)為無狀態(tài)登錄,流程通常如下: 1、客戶端請求某服

    2023年04月15日
    瀏覽(18)
  • 5個 Istio 訪問外部服務(wù)流量控制最常用的例子,你知道幾個?

    5個 Istio 訪問外部服務(wù)流量控制最常用的例子,你知道幾個?

    5 個 Istio 訪問外部服務(wù)的流量控制常用例子,強(qiáng)烈建議 收藏 起來,以備不時之需。 部署 sleep 服務(wù),作為發(fā)送請求的測試源: 在 Istio 外部,使用 Nginx 搭建 duckling 服務(wù)的v1和v2兩個版本,訪問時顯示簡單的文本: 執(zhí)行如下命名訪問外部服務(wù) httpbin.org : 返回結(jié)果如下: 此時的

    2024年02月08日
    瀏覽(23)
  • k8s webhook實(shí)例,java springboot程序?qū)崿F(xiàn) 對Pod創(chuàng)建請求添加邊車容器 ,模擬istio實(shí)現(xiàn)日志文件清理

    k8s webhook實(shí)例,java springboot程序?qū)崿F(xiàn) 對Pod創(chuàng)建請求添加邊車容器 ,模擬istio實(shí)現(xiàn)日志文件清理

    大綱 背景與原理 實(shí)現(xiàn)流程 開發(fā)部署my-docker-demo-sp-user服務(wù)模擬業(yè)務(wù)項目 開發(fā)部署my-sidecar服務(wù)模擬邊車程序 開發(fā)部署服務(wù)my-docker-demo-k8s-operator 提供webhook功能 創(chuàng)建MutatingWebhookConfiguration 動態(tài)準(zhǔn)入配置 測試邊車注入效果 背景: 原理: 涉及項目 my-docker-demo-sp-user 模擬業(yè)務(wù)項目

    2024年02月15日
    瀏覽(23)
  • 【Linux基本指令(3)】幾十條指令快速入手Linux/到底什么是日志?/指令的運(yùn)行原理到底是什么?

    【Linux基本指令(3)】幾十條指令快速入手Linux/到底什么是日志?/指令的運(yùn)行原理到底是什么?

    本文思維導(dǎo)圖: head 與 tail 就像它的名字一樣的淺顯易懂,它是用來顯示開頭或結(jié)尾某個數(shù)量的文字區(qū)塊,head 用來顯示檔案的開頭至標(biāo)準(zhǔn)輸出中而 tail 想當(dāng)然爾就是看檔案的結(jié)尾。 語法: head [參數(shù)]… [文件]… 功能: head 用來顯示檔案的開頭至標(biāo)準(zhǔn)輸出中,默認(rèn)head命令打印

    2024年02月06日
    瀏覽(15)
  • tls指紋之到底怎么判斷是否有tls、到底怎么對抗tls

    tls指紋之到底怎么判斷是否有tls、到底怎么對抗tls

    以下只是搬運(yùn)下我公眾號的東西。很早就發(fā)過了。原帖地址: tls指紋之到底怎么判斷是否有tls、到底怎么對抗tls (qq.com) 有的圈內(nèi)朋友,不經(jīng)過我的允許,刪減摘錄我公眾號的內(nèi)容,這里就不提誰了,心里清楚,還能獲得一些關(guān)注和流量。很無語,所以我還不如自己也發(fā)發(fā)。

    2024年02月15日
    瀏覽(29)
  • 到底什么是哈希值,哈希值到底是怎么生成的,有什么用?

    哈希值,即HASH值,通常用一個短的隨機(jī)字母和數(shù)位組成的字串來代表,是一組任意長度的輸入信息通過哈希算法得到的“數(shù)據(jù)指紋”,即進(jìn)行加密運(yùn)算得到的一組二進(jìn)制值。 因?yàn)殡娔X在底層機(jī)器碼是采用二進(jìn)位的模式,因此通過哈希算法得到的任意長度的二進(jìn)位值映像為較

    2024年02月19日
    瀏覽(18)
  • 到底怎么個DAO

    截止 2021 年 12 月 30 日,已經(jīng)有 188 個 DAO 管理著 115 億美元以上的資產(chǎn)和近 200 萬成員。這些范圍從幫助管理一些最大的加密協(xié)議的 DAO,到圍繞投資、社交社區(qū)、媒體和慈善等事業(yè)組織的較小的 DAO。其中,市值超過 100 萬美元的 DAO 達(dá)到了56 個,占賽道市值的 33.9%,市值介于

    2023年04月09日
    瀏覽(15)
  • 淺談網(wǎng)絡(luò)到底是怎么回事-上

    堅決抵制日本無視全球人民健康,文明長遠(yuǎn)發(fā)展,極其自私自利,向海洋傾倒核污水的行為 本專欄更新速度慢,簡單講講那些特別散亂雜的知識,歡迎各位朋友訂閱專欄 感謝一路相伴的朋友們 博主這段時間可能不會關(guān)注大家的留言和私信了,因?yàn)橐獋淇剂?,希望大家理?/p>

    2024年02月10日
    瀏覽(15)
  • 單元測試到底是什么?應(yīng)該怎么做?

    單元測試到底是什么?應(yīng)該怎么做?

    單元測試(unit testing),是指對軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證。至于“單元”的大小或范圍,并沒有一個明確的標(biāo)準(zhǔn),“單元”可以是一個函數(shù)、方法、類、功能模塊或者子系統(tǒng)。 單元測試通常和白盒測試聯(lián)系到一起, 如果單從概念上來講兩者是有區(qū)別的,不過

    2024年02月08日
    瀏覽(19)
  • 微服務(wù)到底該怎么樣部署呢?

    微服務(wù)到底該怎么樣部署呢?

    微服務(wù)應(yīng)用程序可以以多種方式運(yùn)行,每種方式都有不同的權(quán)衡和成本結(jié)構(gòu)。適用于跨越幾個服務(wù)的小型應(yīng)用程序可能不足以用于大型系統(tǒng)。 從簡單到復(fù)雜,以下是運(yùn)行微服務(wù)的五種方式: 單機(jī)多進(jìn)程:購買或租用服務(wù)器并將微服務(wù)作為進(jìn)程運(yùn)行。 多臺機(jī)器,多進(jìn)程:顯而

    2023年04月09日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包