问题描述

在APIM中,通过门户上的 Test 功能,可以非常容易的查看请求的Trace信息,帮助调试 API 对各种Policy,在InboundBackend, Outbound部分的耗时问题,对其进行错误消息的排查。

但是,当调用APIM 请求遇见错误,且不容易通过门户Test复现,需要在真实的请求中添加Trace,如何实现呢?

问题解答

问题的关键在于调用APIM请求时,Request Header 中必须包含的参数 Ocp-Apim-Trace, 并设置值为True。需要注意的是Ocp-Apim-Trace 需要和 Ocp-Apim-Subscription-Key 配对出现,才能起效。 当请求发送后,请求从APIM的响应(Response)的Header中会包含 ocp-apim-trace-location,它的值就是该请求的Trace文件在Stroage Account存储的URL,下载到本地后即可查看Trace内容。

Request Header:

Ocp-Apim-Subscription-Key: 【需要替换为您使用APIM的订阅Key,附录中介绍如何获取】
Ocp-Apim-Trace: true

Response Hader:

ocp-apim-apiid: echo-api
ocp-apim-operationid: create-resource
ocp-apim-subscription-key: 1c29xxxxxxxxxxxxxxxxxx14
ocp-apim-subscriptionid: master
ocp-apim-trace-location: https://apimstxxxxxxxxxxxxxxxxxyes.blob.core.chinacloudapi.cn/apiinspectorcontainer/hgtE3oZBC-JQDrgxxxxx

动画展示通过Postman设置 Ocp-Apim-Trace 和获取Trace文件:

附录一:如何从APIM门户中获取到 Ocp-Apim-Subscription-Key

登录Azure APIM门户 --> 进入左侧 Subscriptions目录,在Subscriptions 列表中选择与当前使用API对应的Subscription Key

参考资料

教程:使用请求跟踪调试 APIhttps://docs.azure.cn/zh-cn/api-management/api-management-howto-api-inspector

Azure API 管理中的订阅: https://docs.azure.cn/zh-cn/api-management/api-management-subscriptions

最新文章

  1. Linux系统调用和库函数调用的区别
  2. poj 2104 K-th Number (划分树入门 或者 主席树入门)
  3. 有关try..catch..finally处理异常的总结
  4. 学习Python的三种境界
  5. poj 1678 I Love this Game!
  6. 计算CRC校验值(CRC16和CRC32)(网络传输检验)
  7. javax.el.PropertyNotFoundException: Property 'aDesc' not found on type
  8. 查看android进程信息
  9. LaTeX入门教程(二)
  10. Extjs 解决grid分页bug问题
  11. tensorflow 模型保存和加载
  12. FlatList 核心运用
  13. Ajaxpro使用的方法
  14. 【项目 · Wonderland】会议一 · 可达鸭
  15. linux环境java入门
  16. 【读书笔记】iOS-流式音频与Pandora Radio之路
  17. 利用vue写一个复选框的组件
  18. web api中访问数据库的内存释放问题
  19. Flask初级(八)flash与前台交互get post 简介
  20. ROS Learning-009 beginner_Tutorials ROS服务 和 ROS参数

热门文章

  1. 巩固javawbe第二天
  2. 巩固javaweb的第二十三天
  3. flink-----实时项目---day06-------1. 获取窗口迟到的数据 2.双流join(inner join和left join(有点小问题)) 3 订单Join案例(订单数据接入到kafka,订单数据的join实现,订单数据和迟到数据join的实现)
  4. 【2021赣网杯web(一)】gwb-web-easypop
  5. pyqt5 的串口编写进度
  6. Oracle中的job(定时任务)
  7. 11-如何通过newman生成不同类型的测试报告
  8. spring中JDBCTemplate的简单应用
  9. 4.Vue.js-起步
  10. podman wsl2在windows重启后出错