如何在Azure Insights中存储并获取Azure Function应用的HTTP表单数据
Azure Function v4 采集POST Form表单数据到Azure Monitor解答
实现难度评估
难度极低,仅需少量代码调整即可完成,无法仅通过Azure平台侧配置开启
核心说明
- Azure Application Insights的默认HTTP依赖项采集逻辑,出于安全、性能以及隐私合规的默认设计,只会采集请求的基础元数据(请求URL、请求方法、状态码、耗时、URL查询参数),不会自动采集POST请求体/Form表单内容,也没有提供开箱即用的配置开关可以直接开启该能力。
- 你只需要对代码做少量修改就能实现需求:
- 在函数中发起POST请求的位置,先将Form表单数据序列化为字符串(注意提前移除密码、密钥等敏感字段,避免敏感信息泄露),通过当前遥测上下文的自定义属性接口写入即可:
- C# 运行时可直接调用
Activity.Current?.AddTag("Request.PostFormData", 序列化后的表单字符串) - 其他语言运行时使用对应版本的Application Insights SDK提供的自定义遥测属性写入接口即可
- C# 运行时可直接调用
- 发布上线后,你就可以在Azure Monitor的依赖项日志的
customDimensions字段中查看到写入的Form数据,和故障请求直接关联排查即可。
- 在函数中发起POST请求的位置,先将Form表单数据序列化为字符串(注意提前移除密码、密钥等敏感字段,避免敏感信息泄露),通过当前遥测上下文的自定义属性接口写入即可:
内容的提问来源于stack exchange,提问作者YMC
相关产品推荐
相关产品推荐

