azure - 如何在本地调试 EventGridTrigger
问题描述
我有一个函数,它是在 blob 上传时触发的 EventGridTrigger。
[FunctionName("EventGridTest")]
public async Task Run([EventGridTrigger] EventGridEvent eventGridEvent,
[Blob("{data.url}", FileAccess.Read, Connection = "xxxxxx")] Stream input, ILogger log)
{
我正在尝试在本地调试此功能。所以当 blob 被上传时,我希望断点能够命中我的代码。我已经安装了 ngrok,并且我有 http 和 https ngrok url,但是如何使用这些端点?
我有一个这样的网址
https://xxxxxx.ngrok.io/runtime/webhooks/EventGridExtensionConfig?functionName=EventGridTest
但是怎么办呢?我必须发布吗?但它的主体是什么。
解决方案
通常我使用本指南来做到这一点:
https://docs.microsoft.com/en-us/azure/azure-functions/functions-debug-event-grid-trigger-local
您必须为您的活动创建一个新订阅;类型为 webb 钩子,然后您必须将该 url 放在端点中。
因此,随着函数在本地运行,您现在可以在 blobstorage 中放置一个新文件,它将触发将在本地调用您的函数的事件,您可以进行调试。
推荐阅读
- c# - C# 反射:如何在不知道委托签名的情况下订阅事件?
- sql - 在 if 语句 Postgres 中检查函数结果
- java - 如何将 gradle 添加到我的高山基础 docker 映像中
- javascript - AssemblyScript:动态本地数组大小
- javascript - Highcharts:如何通过单击和拖动绘制线段而没有图表滚动?
- powershell - 异常的 PowerShell 返回值
- azure-devops - 天蓝色发布管道上的错误:在满足指定要求的池“某些池”中找不到代理:Agent.Version -gtVersion 2.155.1
- cassandra - 使用 yaml 文件作为用户配置文件时,cassandra-stress 工具抛出错误
- sql - 有没有办法根据单元格值检索表列名?
- yii2 - 无法实例化组件或类