问题标签 [azure-triggers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 如何获取触发 Azure 数据工厂管道的文件的名称?
我是 ADF 的新手。我需要将 15 个 CSV 文件中的数据加载到 15 个 Azure Sql 数据库表中。在管道中,每次创建 blob 时都会有一个触发器来运行管道。
我想让这个管道动态化。我的 CSV 文件名包含表名。例如,Input_202005 是 csv,表名是 Input。
同样,我还有其他 14 个元数据不同的文件/表。
因为我想在每次创建 blob 时运行管道,所以我不需要元数据和 foreachfile 活动。我希望管道为每个 blob 并行运行。有没有办法知道哪个 blob/文件触发了管道并在不使用触发器中的任何参数的情况下获取文件的名称。我不想使用 15 个触发参数。
还是有更好的解决方案来满足我的要求?任何建议表示赞赏。
azure - 重新播放/重复/重新触发现有文件的 Azure BlobStorage 函数触发器
我刚刚将几十 GB 的文件上传到 Azure CloudStorage。每个文件都应该被 FunctionApp 拾取和处理,以响应BlobTrigger
:
这通常有效,但愚蠢的是,在将所有文件上传到我们的 UAT 系统之前,我没有对该函数进行最终测试......并且上传有问题:(
上传花费了几天时间(由于 CoViD-19,通过我的国内互联网上行链路运行)所以我真的不想重新这样做。
有没有办法“重播” BlobUpload 触发器?这样该功能就会再次触发,就好像我刚刚重新上传了文件一样……无需再次传输任何数据!
c# - Azure Functions:队列触发器需要 Base-64 消息,但未正确处理它们
我有这个Queue Trigger
。预期是当我在 中插入消息时Queue
,触发器必须触发并处理出队的消息。
触发器正在正常激活,但这种奇怪的行为正在发生。该函数显然期望message
被编码为Base-64
.
异常绑定参数 'myQueueItem' <--- 输入不是有效的 Base-64 字符串,因为它包含非 base 64 字符、两个以上的填充字符或填充字符中的非法字符。
我正在使用Azure Queue
库 v.12中的此方法将消息发送到队列,但Azure.Storage.Queues
没有发现将消息编码为Base-64
. 请注意,这_queue
是一个QueueClient
实例。
所以我试图自己编码消息......
......它也不起作用。这是我的代码通过该部分但进一步抛出错误,表明它可以获取消息但未正确解码,因为它是存储中现有 blob 的文件名:
让这个工作的唯一方法是,如果我使用Azure Storage Explorer
选择通过 UI 对消息进行编码,手动将消息发送到队列。
azure - 无法确定触发构建的管道
我正在使用 Azure DevOps 的多存储库功能,记录在这里:
https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/multi-repo-checkout?view=azure-devops
我在一个仓库中有我的 YAML 文件,并且管道指向该 YAML。YAML 为另一个存储库资源设置了触发器,因此当该存储库更新时,将触发管道:
文档声称“Build.SourceBranch”变量将允许我确定 MyRepo 中的哪个分支触发了管道构建:“当对其中一个存储库的更新触发管道时,则基于触发存储库设置以下变量”
然而,情况似乎并非如此。无论哪个分支触发构建,“Build.SourceBranch”始终是“refs/heads/master”,大概是因为保存 YAML 的 repo 将“master”作为其默认分支。
我也找不到任何设置为触发构建的分支名称的环境变量。那么如何获取触发构建的分支的名称呢?如果没有可能的方法,我认为这需要添加!
azure - Azure 数据工厂基于事件的触发器未按预期工作
存储资源管理器版本:1.14.2 内部版本号:20200715.2 平台/操作系统:Windows 10 架构:ia32 回归自:不确定
大家好,
我创建了一个基于事件的触发器来触发一些管道。所以问题是当我尝试通过存储资源管理器手动将 csv 文件添加到指定的 blob 位置时,我的触发器工作正常,但是当像我这样的外部源有一个后端 python 代码将文件推送到 blob 位置时,当这是发生基于事件的触发器不会触发。我刚刚检查了手动上传的内容类型,内容类型是 vnd.ms-excel,基于 python 代码的上传是八位字节流。问题是否与此或任何其他有关。我的存储资源管理器版本是 1.14.2。
azure - 如何在 Mac 上本地运行计时器触发的 Azure Functions?
我想在我的本地开发环境(Node、OS X)中执行一个计时器触发的函数,但它似乎需要对我拥有的 HTTP 触发的函数设置进行一些更改。
这是到目前为止与计时器功能相关的代码:
/cron-job/function.json
定义一个定时器输入绑定,每分钟运行一次。它还引用了代码入口点(从 Typescript 编译):
/cron-job/index.ts
/local.settings.json
当我尝试启动函数应用程序时:
我收到一个错误:
当我将AzureWebJobsStorage
设置添加到local.settings.json
我得到另一个错误:
azure - 同时部署到触发器的管道失败?
有一个触发器设置为在凌晨 5 点运行管道。
我正在研究 Pipeline_C,而另一位开发人员正在研究 Pipeline_D。我们最终在同一时间部署到同一个触发器。
由我触发的部署:
由另一个开发人员触发的部署(在我部署后几分钟):
我知道为什么 Pipeline_C 没有出现在触发器中的原因是因为另一个开发人员在我的部署后没有刷新浏览器并最终将他的管道添加到以前的触发器配置(2 个管道)用新配置覆盖触发器(3 个管道) .
这是一个正当的理由吗?如果是,这个问题有解决方案吗?
azure-functions - 使用多个 Azure Functions QueueTriggers 侦听同一个存储队列
我有一个 Azure Functions QueueTrigger,它在存储队列上侦听如下消息:
QueueTrigger 然后有这样的代码:
我正在使用带有batchSize
of的 Linux 消耗计划,1
因为队列触发器的每次调用可能需要大约 5 分钟,并且我想确保我不会超出内存限制。这个解决方案现在对我来说效果很好,但我担心当客户端数量增加时,消息将开始在队列中累积。是否可以只创建一个也在同一个存储队列上侦听的新 Azure 函数?我认为这没关系,因为每个消息/客户端都有独立于它们的工作,因此如果 Azure Function 应用程序中的任何一个首先接收到消息都没有关系。这对我来说似乎是最具成本效益的解决方案,但我想知道是否有更好的选择或任何我没有想到的负面结果。