<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      【Azure APIM】自建網(wǎng)關(guān)(self-host gateway)收集請求的Header和Body內(nèi)容到日志中的辦法

      問題描述

      使用 Azure API Management(APIM)時(shí),需要記錄每個(gè) API 請求的 HeaderBody,以便進(jìn)行問題排查和審計(jì),如何配置才能完整捕獲這些信息呢?

       

      問題解答

      在配置API的時(shí)候,啟用 trace  策略來收集 inbound / outbound中分別收集請求的Header/Body信息。

      具體操作步驟如下:

      第一步:進(jìn)入API的Policy編輯頁面,分別修改Inbound和Outbound策略

      在Inbound 加入 如下部分內(nèi)容, 分別獲取Request 的Headers 和 Body信息,作為Trace的Message內(nèi)容

        • context.Request.Body.As<string>(preserveContent: true):用于讀取請求體內(nèi)容,并保留原始內(nèi)容供后續(xù)處理。
        • context.Request.Headers.Select(...):用于拼接所有請求頭信息。

      <inbound>

              <base />

              <trace source="request-info" severity="information">

                  <message>@{              

                  var headerOutput = string.Join("\n", context?.Request?.Headers?.Select(h => $"{h.Key}: {string.Join(";", h.Value)}"));

                  var body = context?.Request?.Body?.As<string>(preserveContent: true) ?? "No Body";

                  return $"\n\nRequest Headers:\n{headerOutput}\n\nRequest Body:\n{body}\n\n";

              }</message>

              </trace>

          </inbound>

      在Outbound 加入 如下部分內(nèi)容, 分別獲取Response 的Headers 和 Body信息,作為Trace的Message內(nèi)容

        • context.Response.Body.As<string>(preserveContent: true):用于讀取響應(yīng)體內(nèi)容,并保留原始內(nèi)容供后續(xù)處理。
        • context.Response.Headers.Select(...):用于拼接所有響應(yīng)的頭信息。

          <outbound>

              <base />

              <trace source="response-info" severity="information">

                  <message>@{              

                  var headerOutput = string.Join("\n", context?.Response?.Headers?.Select(h => $"{h.Key}: {string.Join(";", h.Value)}"));

                  var body = context?.Response?.Body?.As<string>(preserveContent: true) ?? "No Body";

                  return $"\n\nResponse Headers:\n{headerOutput}\n\nResponse Body:\n{body}\n\n";

              }</message>

              </trace>

          </outbound>

       

      第二步:以AKS部署部署自建網(wǎng)關(guān)為例,查看日志輸出效果

      image

       

      【end】

      參考資料

      將 Azure API 管理自承載網(wǎng)關(guān)部署到 Azure Kubernetes 服務(wù) : https://docs.azure.cn/zh-cn/api-management/how-to-deploy-self-hosted-gateway-azure-kubernetes-service

       Trace : https://docs.azure.cn/zh-cn/api-management/trace-policy

       

      posted @ 2025-10-12 16:59  路邊兩盞燈  閱讀(14)  評論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 国产成人久久精品流白浆| 午夜免费视频国产在线| 久久91精品牛牛| 国产偷倩视频| 午夜激情小视频一区二区| 一本大道久久香蕉成人网| 盘山县| 吴旗县| 朝鲜女子内射杂交bbw| 日韩乱码人妻无码中文字幕视频 | 午夜成人性爽爽免费视频| 日韩av日韩av在线| 在线 欧美 中文 亚洲 精品| 国产精品电影久久久久电影网| 亚洲av中文乱码一区二| 国产精品无遮挡猛进猛出| h无码精品动漫在线观看| 久久午夜电影网| 又湿又紧又大又爽A视频男| 日本一区二区精品色超碰| 国产尤物AV尤物在线看| 老子午夜精品888无码不卡| 人妻在线无码一区二区三区| 波多野结衣一区二区三区高清av| 久久AV中文综合一区二区| 中文字幕色av一区二区三区| 亚洲第一狼人成人综合网| 成人看的污污超级黄网站免费| 国产午夜成人久久无码一区二区| 亚洲区一区二区三区精品| 久久人人爽人人爽人人片| 男女性杂交内射女bbwxz| 久久丫精品久久丫| 成人网站免费观看永久视频下载| 国产欧美日韩亚洲一区二区三区| 狠狠躁夜夜躁无码中文字幕 | 天堂网在线观看| 麻豆a级片| 亚洲欧洲av人一区二区| 欧美成人免费全部| 久久这里都是精品二|