问题标签 [azure-webjobssdk]

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 投票
1 回答
513 浏览

azure - Azure Webjobs:重放成功的函数行为

我刚开始使用 Azure Webjobs 发送电子邮件通知,说明使用我开发的工具完成的检查成功。Webjob 由控制器发送的 CloudQueueMessage 触发。到目前为止,基本上一切正常。

但现在我想知道如何使用 Webjobs 仪表板中的“重播功能”按钮:我尝试使用此按钮重播成功的 CloudQueueMessage(并因此重新发送电子邮件)。
消息被添加到队列中并触发了我的 Webjob,但如果检查 CloudQueueMessage,一些先前设置的属性(如 Id 和 PopReceipt)为空。是什么导致了这种行为?

我需要 ID,因为在我的 Webjob 中,我使用“UpdateMessage()”来设置消息的处理状态。

0 投票
1 回答
153 浏览

c# - Webjob 未使用正确的配置发布

在发布期间,我选择了测试作为配置,但在我单击发布后它会自动更改为“发布”。发布完成后,它转换回“测试”。

点击这里查看完整图片 在此处输入图像描述

0 投票
1 回答
1067 浏览

azure - 切换到新插槽后,连续的 Azure Web 作业是否会重新启动?

在 Azure 中交换部署槽时,Web 作业是否会重新启动?如果是这样,它们是否使用目标配置或源配置值重新启动?

就我而言,我不希望 Web 作业在暂存槽中运行。为了解决这个问题,我有以下代码:

我只是不确定在使用正确的 AppSettings 交换后是否会重新启动网络作业。如果没有,那么这根本不起作用,因为 EnableWebJobs 将保持为 false。

0 投票
1 回答
109 浏览

azure - Azure 存储队列 WebJob 永不停止

我有一个在 Azure 上运行的 WebApp,WebApp 的目的是处理来自 Azure 存储队列的作业。它设置为始终开启。问题是,当我在 Azure 管理门户中停止 WebApp 时,作业实际上并没有停止。

我实例化了这项工作:

处理队列的函数是:

我有跟踪日志记录,所以我可以看到这项工作实际上从未停止过。

0 投票
1 回答
589 浏览

azure-webjobssdk - JobHost.CallAsync() and disposed TextWriter

Playing with Azure WebJobs SDK, when I trigger my function with CallAsync() on JobHost instance, the TextWriter and CancellationToken instances passed into my function get disposed in a second, which makes it useless for logging and monitoring of cancellation state.

For debugging I run my code as console app. The code within Main() looks like:

Here is the function (without logic):

In the function ProcessAggregationsAsync() there is an infinite loop which does some logic (monitoring azure tables and processing some data) and works fine. The problem starts when I add code to check cancellation token or log some characteristics into provided log (TextWriter) they are disposed. Not immediately, it writes 2 entries into log (azure table "azure-webjobs-hosts") but then it fails.

What could be wrong? Why those objects get disposed?

0 投票
1 回答
1231 浏览

azure - Azure 中单个 VM 上的多个连续 Webjob 实例

我在 Azure 网站上运行了一个连续的 Webjob。它负责在从 QueueTrigger 检索项目后做一些工作。我正在尝试提高从队列中处理项目的速率。当我扩展我的应用服务计划时,处理速率会按预期增加。

我担心的是,仅仅为了运行我的 Webjob 的额外实例而为额外的虚拟机付费似乎是一种浪费。我正在寻找在单个服务器上运行同一 Webjob 的多个实例的选项/最佳实践。

我已经尝试在 Main() 中的单个线程中启动多个 JobHost,但要么不起作用,要么我做错了什么......由于看起来每个线程都试图访问“WebJobSdk”,Webjob 将无法运行。标记'。我当前的解决方案是多次发布我的 Webjob,每次在“webjob-publish-settings.json”中稍微修改“webJobName”,以便在发布时将同一个项目视为不同的 Webjob。到目前为止,这很好用,希望每次我需要进行任何更新时都会产生大量额外的工作。

最终,我正在寻找一些关于完成此任务的推荐方法的建议。理想情况下,我希望通过代码运行多个实例,并且只需要在需要更新代码时发布一次。

有什么想法吗?

0 投票
1 回答
421 浏览

asp.net - 访问 Web 应用程序 EF 数据库的 ASP.NET Webjobs 错误

我正在.net中开发一个网络作业,它将经常访问和更改相关的网络应用程序。我已将 db 连接字符串从 web 应用程序上的 Web.config 文件复制到 webjob 应用程序上的应用程序。以下代码尝试从 webjob 访问数据库。

函数.cs:

这一行来自上一个函数

触发以下错误:

接下来是 App.config 和 Web.config 中的连接字符串。现在我正在我的开发人员设备上运行这个网络作业,所以它应该访问本地数据库。

你能看出什么不对吗?相同的 db 查询在 MVC Web 应用程序中确实有效。我在网上找不到任何访问 EF 数据库的网络作业示例。

0 投票
3 回答
2957 浏览

azure-webjobs - Azure Web Job-远程服务器返回404

我有一个连续运行的网络作业,它监听一个start队列并停止queue它们各自的功能。Web 作业中有 3 个预定义进程,start队列包含一条消息,其中提到要启动的进程名称,而stop队列包含一条消息,其中提到要停止的进程名称。

自从过去 4 周以来,当 webjob 停止一个进程时,它会崩溃并重新启动,并出现上述异常。

webjob 甚至不包含任何删除 blob 文件的代码。

在调试时,调试器在抛出异常时没有指向任何特定的行,因此我不知道实际原因是什么。

PS:在此之前它曾经完美运行,并且每个函数的主体都包含在 try catch 块中。catch 块不会重新抛出异常,而只是记录堆栈跟踪并继续。

编辑

我必须检查以下容器是否在那里

在此处输入图像描述

在 webjob 的存储中,还更新了Microsoft.Web.WebJobs.Publishnuget 包。我真的不确定这是否确实解决了问题

0 投票
1 回答
1298 浏览

c# - 在 WebJobs SDK 中使用带有 ServiceBusTrigger 的 Singleton 属性

我正在使用Microsoft.Azure.WebJobsMicrosoft.Azure.WebJobs.ServiceBus包来捕获 ServiceBus 主题事件。

功能代码如下 -

但是,我收到此错误

如果我删除 Singleton 属性,一切正常!

我试过像 -

但是,它没有帮助。

有什么问题(并修复)?

0 投票
2 回答
5411 浏览

azure - Azure Webjob - 访问本地文件系统

我有一个遗留的 exe,它采用本地机器文件路径,处理它并再次在本地路径中生成输出文件。这可以在 Azure Webjob 上运行吗?

我正在考虑编写一个包装 exe,它从 blob 存储下载文件 -> 将其存储在本地文件系统中 -> 使用本地文件路径调用旧版 exe -> 获取输出并将其再次上传到 blob。

这种方法会奏效还是有局限性?