问题标签 [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.

0 投票
2 回答
57 浏览

azure - 无论创建了多少 blob,如何只执行一次管道?(Azure 数据工厂)

我创建了一个管道,每次创建 blob 时都由触发器执行,问题是进程需要同时上传多个文件的场景,当它发生时,管道执行次数与数量一样多的blob,它会导致数据错误。我试图在主管道中配置一个复制数据活动,以便复制创建的每个 blob,但由于此管道位于第一个管道内,因此它也会执行多次。

预期的结果是管道只执行一次(无论创建了多少 blob),并且复制数据活动能够复制文件夹中的所有 blob。

这是我的管道和触发器配置:

在此处输入图像描述

复制数据配置如下:

在此处输入图像描述

我已经尝试了几个月,这是我所做的另一次尝试:

微软问答

你能告诉我我做错了什么吗?

0 投票
1 回答
79 浏览

azure - Azure 函数主机自动停止且不重新启动

我在多个 Azure 函数应用中看到主机定期停止并自动重新启动。由于我的 Azure 功能应用程序停止了一周,但我需要手动重新启动主机。

在 ApplicationInsights 中运行以下查询:

痕迹片段

  • 23-1-2022 20:08:42.436 作业主机已启动
  • 23-1-2022 20:09:25.668 作业主机已停止
  • 23-1-2022 21:08:48.800 作业主机已启动
  • 23-1-2022 21:11:33.702 作业主机已停止
  • 23-1-2022 22:17:03.286 作业主机已停止
  • 23-1-2022 22:18:39.002 作业主机已启动
  • 23-1-2022 23:10:31.580 作业主机已停止
  • 24-1-2022 06:41:48.024 作业主机已启动
  • 24-1-2022 06:42:44.680 作业主机已停止
  • 24-1-2022 06:43:00.902 作业主机已启动
  • 24-1-2022 07:10:52.220 作业主机已停止

24-1-2022 06:41 的开始是由于手动重新启动我的函数应用程序。在此停止期间未执行任何时间触发器。这种情况每天发生不止一次。没有图案。

有任何想法吗?事件日志没有用,在自动停止和手动重启之间是 nog 登录洞察力。

我该如何解决这个问题?为什么这个功能经常重启?

更新:手动触发器 (http) 正在重新启动主机。

0 投票
1 回答
60 浏览

node.js - 使用 IoT-Hub“EntityPath”触发 Azure 函数

我目前在将函数触发器连接到 IoT-Hub 时遇到问题,一夜之间它以某种方式坏了。函数版本 4。Node.js 版本 14 LTS。

首先我收到一个错误,说我必须使用 web.jobs 版本 4.3.0,我更改了 host.json 以包含它

主机.json

然后它开始给我一个运行时错误,我不知道如何修复,错误:

我在门户中定义了连接字符串,其格式为

最后,我尝试删除删除错误的 EntityPath,但随后没有任何内容出现在该函数中

编辑:我通过将函数版本更改为 3 并将原始 Host.json 恢复为“版本”来修复它:“[2.*, 3.0.0)”。

我不知道运行时版本是如何更改的,即使我创建了新功能,他们也会收到此错误。这可能只是我在工作区中所做的事情导致了这种情况。

0 投票
1 回答
26 浏览

azure - 打开“打开”VMSS 的系统管理标识时如何执行 ARM 模板

每当打开系统托管标识 VMSS(虚拟机规模集)时,如何执行 ARM 模板。

0 投票
1 回答
22 浏览

azure-functions - 带时间触发的函数应用,开启后直接触发。如何防止

我有一个带有时间触发器的函数应用程序,它应该每晚运行一次。该函数看起来与此类似:

由于某些原因,此功能可能需要禁用几天然后再次启用。但是,即使我设置RunOnStartupfalse,即使我在上午 9 点启用了该功能,也会直接触发该功能。

我想阻止它,我该怎么办?

PS 我不想更改 Cron 表达式,因为没有特定日期或特定模式来禁用该功能。这是一件很随意的事情。

0 投票
1 回答
27 浏览

python - 将脚本从 Azure 虚拟机移动到 Azure Function App

我在“azure 虚拟机”上有几个脚本,每天在某个时间运行一次,从多个 Web 服务中提取数据并将提取的数据推送到“用于 postgresql 服务器的 azure 数据库”。

我希望这些脚本从“azure function app”而不是“azure VM”运行。

目前,我在一个 blob 容器中有一个包含所有这些脚本的文件夹。

问题

  1. 是否可以从 blob 容器运行这些脚本?还是更容易下载这些脚本并通过 make 函数运行它们?或其他想法?

  2. 我应该在函数中使用什么触发器?我需要每天运行这些脚本(看起来像一个计时器触发器);这些脚本从 Web 服务获取数据(看起来像一个 http 触发器)。但是可以对一个函数doc使用一个触发器。此外,计时器触发器没有输入/输出文档

  3. 我是否理解正确,在我的情况下,我从 Web 服务检索的数据应该是我的 azure 函数的“输入数据”,当我将它放入 postgresql 数据库时,它应该是同一个 azure 的“输出数据”功能?

我是 Azure 的新手,并尝试了解函数应用程序背后的所有逻辑。所以,欢迎任何帮助!

0 投票
1 回答
18 浏览

.net - Azure 队列触发器立即达到 MaxDequeueCount

我设置了一个天蓝色队列触发器:

每当我通过 QueueClient 将项目添加到队列时:
(RawQueueData 将项目拆分为消息批次)

或者将消息从product-prices-poison移回product-prices队列(使用 Azure 存储资源管理器),触发器立即失败,并显示:

消息已达到 MaxDequeueCount 5。将消息移动到排队产品价格毒药。

同步传递项目也会产生同样的问题。

只有当我使用 Azure 存储资源管理器手动创建消息时,才能成功地让触发器触发和处理项目。

增加 MaxDequeueCount 或批量大小不会产生影响。执行前者之后的消息是:

消息已达到 100000 的 MaxDequeueCount。将消息移动到队列 product-prices-poison。

我还可以使用 QueueClient 手动使项目出列而不会出现任何问题。


我还尝试将接收到的对象类型更改为 QueueMessage、对象和字符串。大多数其他解决方案似乎都专注于更新软件包(我使用的是最新的 - 稳定版 12.8.0)。

编辑:host.json: