标签: azure-webjobs

创建WebJob计划时发生错误

我试图发布我的网站以及一些WebJobs,但在Azure网站上创建网站和作业后,我看到VS.NET 2013上的一个错误:

Error   948 An error occurred while creating the WebJob schedule: No website could be found which matches the WebSiteName [mysitename] and WebSiteUrl [http://mysitename.azurewebsites.net] supplied
Run Code Online (Sandbox Code Playgroud)

我的网站有2个WebJobs,1个连续运行并且已经创建并运行,但需要按计划触发的那个就是这个问题.

关于这里可能出错的任何想法?

编辑1

只想添加计划作业创建为"按需"

这是我正在使用的发布设置:

{
  "$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
  "webJobName": "ArchiveShipments",
  "startTime": "2015-01-11T00:00:00+05:30",
  "endTime": null,
  "jobRecurrenceFrequency": "Day",
  "interval": 1,
  "runMode": "Scheduled"
}
Run Code Online (Sandbox Code Playgroud)

我应用AzureSDK后BTW.2.5我发布时没有看到任何错误,但是没有创建预定的WebJob.

azure azure-webjobs azure-webjobssdk

33
推荐指数
3
解决办法
7363
查看次数

AzureWebJobsDashboard配置错误

我使用.NET Framework 4.6在Visual Studio 2015中创建了一个新的Azure WebJob项目.

在app.config中,我设置了三个连接字符串:

  1. AzureWebJobsDashboard
  2. AzureWebJobsStorage
  3. MyDatabaseConnectionString

AzureWebJobsDashboard和AzureWebJobsStorage连接字符串是相同的,它们都指向我的存储帐户.我包含了一个连接字符串 - 因为它们都是相同的,除了"名称".

<add name="AzureWebJobsDashboard" connectionString="DefaultEndpointsProtocol=https;AccountName=mystorageaccountname;AccountKey=thisIsTheLongPrimaryKeyICopiedFromAzurePortalForMyStorageAccount" />
Run Code Online (Sandbox Code Playgroud)

一切看起来都对我,但我收到以下错误:

未正确设置Microsoft Azure WebJobs仪表板的配置.在Microsoft Azure网站配置中,必须使用以下格式设置名为AzureWebJobsDashboard的连接字符串:DefaultEndpointsProtocol = https; AccountName = NAME; AccountKey = KEY指向存储Microsoft Azure WebJobs运行时日志的Microsoft Azure存储帐户.

顺便说一下,我知道web作业正在读取app.config,因为我的代码能够连接到我的数据库并更新一些记录.

知道我做错了什么吗?

c# connection-string azure azure-webjobs azure-webjobssdk

28
推荐指数
1
解决办法
1万
查看次数

为什么我需要在Azure管理门户中而不是在我的WebJob的App.config中为WebJobs配置连接字符串?

我通过右键单击我的WebApp项目并添加一个新的Azure Web项目来创建一个计划的Azure WebJob.我在WebJob项目的App.config中设置了AzureWebJobsDashboard和AzureWebJobsStorage连接字符串.我现在单独留下.cs文件中的默认代码.接下来,我从Visual Studio(顺便提一下2013 Update 4)发布到Azure网站.它创建了WebJob,我可以从Azure管理站点或Visual Studio运行它,并且它是成功的.我可以看到我期望它们的输出日志.但是,Azure WebJob详细信息页面显示以下警告/错误:

确保使用以下格式在Microsoft Azure网站配置中设置名为AzureWebJobsDashboard的连接字符串:DefaultEndpointsProtocol = https; AccountName = NAME; AccountKey = KEY指向存储Microsoft Azure WebJobs运行时日志的Microsoft Azure存储帐户.

未正确设置Microsoft Azure WebJobs仪表板的配置.在Microsoft Azure网站配置中,必须使用以下格式设置名为AzureWebJobsDashboard的连接字符串:DefaultEndpointsProtocol = https; AccountName = NAME; AccountKey = KEY指向存储Microsoft Azure WebJobs运行时日志的Microsoft Azure存储帐户.

它还提供了一个链接,是http://azure.microsoft.com/blog/2013/07/17/windows-azure-web-sites-how-application-strings-and-connection-strings-work/其没有按解释为什么我收到错误消息.

现在,为了消除此警告/错误,我将在Azure管理站点的配置页面中添加相同的AzureWebJobsDashboard连接字符串.

所以,我试图弄清楚我是否做错了什么,或者这只是微软尚未解决的WebJobs中的一个问题.我真的希望能够在App.config中拥有它,而不必记住在我们为不同环境生成的每个网站中设置它.

非常感谢您的时间和帮助.

azure azure-storage azure-webjobs azure-webjobssdk

27
推荐指数
1
解决办法
9694
查看次数

如何为WebJob项目设置连接字符串?

我正在尝试设置一个网站和webjob,但每次我尝试独立于网站发布webjob时都会出错(即Publish as Azure WebJob从上下文菜单中选择)

C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(4270,5):错误:'MyWebJob.Models.MyDataEntities-Web.config连接字符串'参数不能为null或为空.
C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(4270,5):错误:'MyWebJob.Models.MoreDataEntities-Web.config连接字符串'参数不能为null或为空.

部署WebJob有两种选择

当我将我的webjob链接到一个网站项目时,它会在网站上部署而不会出错.但是,当我尝试独立部署它时,我在控制台和错误列表中出现上述错误,但仍然部署了webjob.

如何独立部署我的webjob并摆脱这种持久的"错误"?

azure-web-sites visual-studio-2013 azure-webjobs

27
推荐指数
1
解决办法
6721
查看次数

将Azure Application Insights与Azure WebJob一起使用

Azure文档涵盖了将Azure Application Insights集成到不同应用程序类型(如ASP.NET,Java等)的许多示例.但是,该文档未显示将Application Insights集成到Azure WebJob中的任何示例.

有没有人链接到一个示例或文章,其中包含如何将Azure Application Insights集成到作为控制台应用程序构建的Azure WebJob中?

c# azure azure-webjobs azure-application-insights

27
推荐指数
2
解决办法
1万
查看次数

Azure函数在外部库中使用TraceWriter进行日志记录

如何重用azure函数中可用的TraceWriter对象来记录外部引用的库中的信息?我尝试使用构造函数传入对象并引用TraceWriter类(web.http.tracing).我没有运气,因为课程看起来不同.

c# logging azure-webjobs azure-functions

27
推荐指数
3
解决办法
2万
查看次数

Azure WebJobs ServiceBus返回异常:在授权上下文中找到2个DNS声明

我正在尝试使用Azure WebJob从Azure ServiceBus队列中读取消息,但它正在抛出异常:

Unhandled Exception: System.InvalidOperationException: Found 2 DNS claims in authorization context.
Run Code Online (Sandbox Code Playgroud)

我已经设置了名为"AzureWebJobsServiceBus","AzureWebJobsDashboard"和"AzureWebJobsStorage"的正确连接字符串

WebJob程序代码已更新为使用JobHostConfiguration:

class Program
{
    static void Main()
    {
        var config = new JobHostConfiguration();
        config.UseServiceBus();

        var host = new JobHost(config);
        host.RunAndBlock();
    }
}
Run Code Online (Sandbox Code Playgroud)

而实际的Job方法

public class Functions
{
    public async static Task ServiceBusResizeRequest(
         [ServiceBusTrigger("blah")] string message,             
         TextWriter log
         )
    {            
        await log.WriteLineAsync("got message " + message);
    }

}
Run Code Online (Sandbox Code Playgroud)

我可以通过单独的控制台应用程序成功创建和写入队列.

但是当我运行webjob应用程序时,它会抛出异常.

有任何想法吗?

编辑:使用.net 4.6.1

azure azureservicebus azure-servicebus-queues azure-webjobs azure-webjobssdk

26
推荐指数
2
解决办法
6002
查看次数

Azure WebJob临时文件夹

是否有Azure WebJobs首选机制来获取处理我的blob数据的本地存储文件夹/路径(sqlite数据库)?我可以获取流,但需要将其写入磁盘,以便Sqlite可以打开它的连接.

我知道RoleEnvironment.GetLocalResource意味着与WebRoles一起使用......是否有与WebJobs相同的东西?

c# azure azure-webjobs

23
推荐指数
1
解决办法
5751
查看次数

.NET Core中的Azure WebJob

如何创建面向.NET Core 1.1的Azure WebJob?

在Visual Studio 2017中,我看到Azure WebJob的唯一选项是.NET Framework - 见下文.

在此输入图像描述

在.NET Core下,我没有看到Azure WebJob列出.

在此输入图像描述

azure-webjobs .net-core

23
推荐指数
1
解决办法
1万
查看次数

Azure网站中的项目中不存在目标"ResolveWebJobFiles"

我有一个由Windows Azure组成的项目

  • ASP.NET项目(使用NancyFX)部署为Azure网站
  • 业务逻辑类库
  • 单元测试类库
  • 2台控制台应用

我希望这两个控制台应用程序与Azure网站一起部署为Azure WebJobs.所以我在ASP.NET项目上选择了clikec并选择了Add | 现有项目为Azure WebJob,并添加了具有正确计划的两个控制台应用程序.

一切似乎都很好,2个控制台应用程序现在包含一个带有计划的JSON,ASP.NET项目包含一个带有WebJobs定义的JSON.所有项目都建立得很好.

问题是,当我尝试将ASP.NET项目部署到Azure时,我得到了

The target “ResolveWebJobFiles” does not exist in the project
Run Code Online (Sandbox Code Playgroud)

当作者通过添加解决了这个问题时,我找到了这篇文章

<Import Project="..\packages\Microsoft.Web.WebJobs.Publish.1.0.2\tools\webjobs.targets" Condition="Exists('..\packages\Microsoft.Web.WebJobs.Publish.1.0.2\tools\webjobs.targets')" />
Run Code Online (Sandbox Code Playgroud)

到他的csproj文件,但我的ASP.NET项目的csproj文件已包含此导入.

有什么想法是什么问题?

c# asp.net msbuild azure azure-webjobs

22
推荐指数
4
解决办法
5378
查看次数