问题标签 [azure-webjobs-continuous]

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 投票
0 回答
72 浏览

azure - 如何在本地运行具有网络故障恢复能力的 Azure WebJobs?

我有一个小型网站,它依赖于 Azure WebJobs 来完成一些后台任务。由于我的基本计划,WebJobs 在部署到 Azure 后的 1-2 小时内停止工作,因为我需要升级我的计划。

同时,我在本地机器上运行该任务,除非出现无线/网络故障,否则它工作正常,显然它不是网络故障恢复能力。所以当网络备份时它不会继续运行。

我有以下基本设置:

我正在考虑运行另一个控制台应用程序来监视正在运行的 WebJobs 可执行文件,如果它不存在则重新运行进程。但在此之前,我想了解是否可以在 WebJobs 应用程序中配置其他任何内容?我也在考虑 Windows 任务调度程序,但我不想让事情变得过于复杂。

0 投票
1 回答
123 浏览

.net-core - NET 5.0 WebJob 只想写入我的本地 Blob 存储

2021 年已过半,我找到的所有 WebJob 答案都已经过时了。也许我缺少新的皱纹

这张来自我的 Microsoft Azure Storage Explorer 的图片说明了一切:

在此处输入图像描述

在我的机器上,我使用这个appsettings.Development.json文件——允许我的 dotnet 控制台与我的 Azurite 存储实例通信(Azurite 从我的本地 Docker 运行)

在生产中,这些Program.cs行将用我的“真实”连接字符串覆盖上面的内容......

...我已将其保存到我的 Web 应用服务的配置页面中: 在此处输入图像描述

我的 Functions.cs 中的奇异方法被成功检测并调用 - 我正在使用此输出属性写入 Blob 存储

因为该功能被RunOnStartup = true我的仪表板标记,所以很快就会显示该作业是StartedRunning在我发布作业之后 - 但我从未看到 log.txt 文件被写入我的 Blob 存储容器

我错过了什么?

哦..如果你必须知道..这些是我的nugets:

在此处输入图像描述

更新:

添加:我的 Program.cs 的完整来源

更新 2:

日志仪表板的输出

更新 3:终于找到了一些东西 - 不支持 TLS 版本

当我选择查看流式日志时,来自 VS 中的输出窗格的片段

0 投票
1 回答
71 浏览

azure-webjobs - 使用 AzureWebJobsStorage for Web Job Timer Triggers 时如何配置存储帐户的自动故障转移

我有一个在 TimerTrigger 上运行的 Azure Web 作业,用于将一些消息放在服务总线队列上。我已经在 2 个不同的区域上部署了这个 Web 作业,以便在一个区域出现故障的情况下实现高可用性。根据https://github.com/Azure/azure-webjobs-sdk-extensions/wiki/TimerTrigger,我可以看到分布式锁机制运行良好,计时器一次只在一个区域执行,所以有没有重复的请求通过。

但是,两个区域中的 Web 作业都使用相同的公共存储帐户,并且存储帐户仅部署到一个区域。我不能使用 2 个单独的存储帐户,因为那样我就失去了分布式锁定功能。我知道 Azure 为我的存储帐户提供异地冗余存储,因此数据被复制到辅助区域。

我的问题是 - 如果某个区域(特别是存储帐户的主要区域)发生灾难,有没有办法让 Web 作业自动故障转移到辅助端点?现在,我将“AzureWebJobsStorage”应用程序设置指定为存储帐户的共享访问密钥之一。

感谢任何指针!

0 投票
1 回答
207 浏览

azure-webjobs - 同一应用服务上的多个 Web 作业或多个应用服务上的单个 Web 作业?

我需要为我当前的项目部署多个 Web 作业。但是,它们都不会占用太多资源,因此我将使用相同的 App 服务计划。我正试图在

  1. 为每个 Web 作业创建单独的应用服务并将它们全部部署到同一个应用服务计划中
  2. 创建单个应用服务,并将 Web 作业的多个实例部署到同一个应用服务中,使用不同的 Web 作业名称以使其唯一

我知道这个答案可能基于不同的意见,但我希望你能分享一些需要考虑的事情。例如,#1 的一个优点是我更容易在该选项中单独部署每个 Web 作业。还有什么我应该考虑的吗?

谢谢!

0 投票
1 回答
80 浏览

azure - Webapp Webjob 日志未出现在存储容器中

我有一个 web 应用程序,我在配置“AzureWebJobsDashboard”和“Azurewebjobstorage”下配置了应用程序设置,它具有存储帐户及其访问密钥的值。

如本文所述:https ://www.marathonus.com/about/blog/introduction-to-azure-webjobs/ 设置这些设置并重新启动应用服务后,日志应出现在两个存储容器中,如下所示

但是,我只看到创建的 azure-webjobs-hosts 和日志记录只是有时发生。当我通过 Kudu 站点检查网络作业日志时,我可以在作业文件夹下看到日志,我的作业在 txt 文件中。

我在这里做错了什么?

0 投票
1 回答
42 浏览

azure-webjobs - 将触发转换为连续?

我有 ac# .net 4.7.2 触发了 azure web 作业。

我找到了一个手动切换 手动切换的过程,但是我将如何编辑我的 Visual Studio 项目以从触发切换到连续?

我只需要将设置工作从这个:{“schedule”:“cron time”}更改为这个:{}?

0 投票
1 回答
28 浏览

azure-webjobs - 从触发转换为连续?

我有一个被触发的网络作业。我想切换到连续。我使用 ci/cd 进行部署。

这是正确的步骤:

  1. csproj。更改触发为连续
  2. settings.job 只需说 {}

另外,我将更改 c# 主机以使用带有 sleep(xxx) 的循环。

我错过了什么吗?彼得

0 投票
1 回答
269 浏览

azure - 在 YAML 管道中将多个 Azure WebJobs 部署到单个 Azure AppService

我正在尝试拥有一个部署管道,该管道可以同时部署 3 个 Azure WebJobs(连续),它们都是同一解决方案的一部分。我可以通过右键单击部署在 Visual Studio 中执行此操作,并确保我没有清除现有文件。

在 Azure Pipelines 中,我有以下脚本可成功用于单个 WebJob 部署。

但是,如果我复制它并为我的第二个 WebJob 创建一个新管道,它将替换现有的 WebJob,只留下 1 个运行。

我应该在下面的管道中修改什么来构建/部署所有 3 个 WebJobs?

0 投票
1 回答
80 浏览

azure-webjobs - 使 Azure Webjob 计时器触发器不作为单例运行

我有一组工作函数,它们在创建时根据需要从服务总线主题订阅中提取。当通过排队的配置消息创建新订阅时,会创建新的工作人员,该消息会触发作业以启动新工作人员以收听订阅。问题是现在我希望能够在应用程序横向扩展时横向扩展收听订阅的工作人员。由于供应作业仅在单个实例上创建工作器,因此横向扩展的有效性显着降低。

我的想法是创建第二个配置作业,该作业从计时器触发器运行,以将正在运行的作业同步到当前的订阅列表。我在计时器作业中遇到了与服务总线触发器相同的问题,因为它在 Web 作业中作为单例运行,并且每次运行时都可能在同一个作业实例上运行,这意味着我仍然可能有无论我向外扩展多少,每个订阅可能有 2 个作业实例。

我的问题是,是否可以创建一个不作为单例运行的计时器作业?意思是,我可以配置一个计时器作业,对于横向扩展的 Web 作业的每个实例,该作业将以设定的时间间隔运行吗?

0 投票
1 回答
6 浏览

python - AzureWebJob 创建后如何更新它

AzureWebJob通过 Azure 门户手动创建,但现在我需要更新源代码。我没有找到重新上传源代码内容(python 脚本)的方法。是否有任何 CLI 可用于更新作业,或者我必须删除作业并在每次需要更新时重新创建它?

有一些通过 VS 部署的指南,但仅适用于 .NET,有没有类似于 Python 的东西? https://docs.microsoft.com/en-us/azure/app-service/webjobs-dotnet-deploy-vs