Azure WebJobs (3.x) Continuous job not showing Functions in Dashboard
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
We have an Azure WebJob (3.x) running under an API App in Azure, all Core 2.1. It publishes fine, and runs, but doesn't show any Functions or list the Function Invocations on the dashboard. Which is odd, because the console output for the job does show it detecting a function:
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Run script 'run.cmd' with script host - 'WindowsScriptHost'
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Status changed to Running
[10/17/2018 09:26:19 > fa7c81: INFO]
[10/17/2018 09:26:19 > fa7c81: INFO] D:localTempjobscontinuousSubmissionJob43ucb4rv.ipc>dotnet SubmissionJob.dll
[10/17/2018 09:26:21 > fa7c81: INFO] dbug: Microsoft.Extensions.Hosting.Internal.Host[1]
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting starting
[10/17/2018 09:26:21 > fa7c81: INFO] info: Microsoft.Azure.WebJobs.Hosting.JobHostService[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Starting JobHost
[10/17/2018 09:26:21 > fa7c81: INFO] info: Host.Startup[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Found the following functions:
[10/17/2018 09:26:21 > fa7c81: INFO] SubmissionJob.Functions.ProcessQueueMessageAsync
[10/17/2018 09:26:21 > fa7c81: INFO]
[10/17/2018 09:26:21 > fa7c81: INFO] Application started. Press Ctrl+C to shut down.
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting environment: QA
The Program.cs Program
class looks like this:
public static async Task Main(string args)
{
var builder = new HostBuilder()
.UseEnvironment(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"))
.ConfigureWebJobs(b =>
{
b.AddAzureStorageCoreServices()
.AddAzureStorage()
.AddServiceBus()
.AddEventHubs();
})
.ConfigureAppConfiguration(b =>
{
// Adding command line as a configuration source
b.AddCommandLine(args);
})
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
})
.ConfigureServices((context, services) =>
{
services.AddAutoMapper();
services.AddMemoryCache();
services.AddDbContext<SubmissionsDbContext>(opts =>
opts.UseSqlServer(context.Configuration.GetConnectionString("DefaultConnection")));
// cloud services
services.AddTransient(s =>
CloudStorageAccount.Parse(
context.Configuration.GetConnectionString("AzureQueueConnectionString")));
services.AddTransient<IBlobReadService, AzureBlobReadService>();
services.AddSingleton<IBlobWriteService, AzureBlobWriteService>();
services.AddSingleton<IQueueWriteService, AzureQueueWriteService>();
// submission services
services.AddScoped<ISubmissionStatusService, SubmissionStatusService>();
services.AddSingleton<Functions, Functions>();
// job activator, required in webjobs sdk 3+
services.AddSingleton<IJobActivator>(new WebJobsActivator(services.BuildServiceProvider()));
})
.UseConsoleLifetime();;
var host = builder.Build();
using (host)
{
await host.RunAsync();
}
}
The Functions.cs has a method with the following signature:
public async Task ProcessQueueMessageAsync([QueueTrigger("operations")] CloudQueueMessage incomingMessage, TextWriter log)
...scm.azurewebsites.net/azurejobs/#/jobs/continuous/SubmissionJob shows
Continuous WebJob Details SubmissionJob
Running
Run command: run.cmd
But there's no list of function invocations below it, and the job remains permanently in a Running
state. If I go to the 'Functions' link in Kudu, it says there are no functions/function invocations to display.
Any thoughts?
The bulk of this worked fine in Framework 4.7, though the app builder was clearly different.
c#


add a comment |
We have an Azure WebJob (3.x) running under an API App in Azure, all Core 2.1. It publishes fine, and runs, but doesn't show any Functions or list the Function Invocations on the dashboard. Which is odd, because the console output for the job does show it detecting a function:
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Run script 'run.cmd' with script host - 'WindowsScriptHost'
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Status changed to Running
[10/17/2018 09:26:19 > fa7c81: INFO]
[10/17/2018 09:26:19 > fa7c81: INFO] D:localTempjobscontinuousSubmissionJob43ucb4rv.ipc>dotnet SubmissionJob.dll
[10/17/2018 09:26:21 > fa7c81: INFO] dbug: Microsoft.Extensions.Hosting.Internal.Host[1]
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting starting
[10/17/2018 09:26:21 > fa7c81: INFO] info: Microsoft.Azure.WebJobs.Hosting.JobHostService[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Starting JobHost
[10/17/2018 09:26:21 > fa7c81: INFO] info: Host.Startup[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Found the following functions:
[10/17/2018 09:26:21 > fa7c81: INFO] SubmissionJob.Functions.ProcessQueueMessageAsync
[10/17/2018 09:26:21 > fa7c81: INFO]
[10/17/2018 09:26:21 > fa7c81: INFO] Application started. Press Ctrl+C to shut down.
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting environment: QA
The Program.cs Program
class looks like this:
public static async Task Main(string args)
{
var builder = new HostBuilder()
.UseEnvironment(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"))
.ConfigureWebJobs(b =>
{
b.AddAzureStorageCoreServices()
.AddAzureStorage()
.AddServiceBus()
.AddEventHubs();
})
.ConfigureAppConfiguration(b =>
{
// Adding command line as a configuration source
b.AddCommandLine(args);
})
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
})
.ConfigureServices((context, services) =>
{
services.AddAutoMapper();
services.AddMemoryCache();
services.AddDbContext<SubmissionsDbContext>(opts =>
opts.UseSqlServer(context.Configuration.GetConnectionString("DefaultConnection")));
// cloud services
services.AddTransient(s =>
CloudStorageAccount.Parse(
context.Configuration.GetConnectionString("AzureQueueConnectionString")));
services.AddTransient<IBlobReadService, AzureBlobReadService>();
services.AddSingleton<IBlobWriteService, AzureBlobWriteService>();
services.AddSingleton<IQueueWriteService, AzureQueueWriteService>();
// submission services
services.AddScoped<ISubmissionStatusService, SubmissionStatusService>();
services.AddSingleton<Functions, Functions>();
// job activator, required in webjobs sdk 3+
services.AddSingleton<IJobActivator>(new WebJobsActivator(services.BuildServiceProvider()));
})
.UseConsoleLifetime();;
var host = builder.Build();
using (host)
{
await host.RunAsync();
}
}
The Functions.cs has a method with the following signature:
public async Task ProcessQueueMessageAsync([QueueTrigger("operations")] CloudQueueMessage incomingMessage, TextWriter log)
...scm.azurewebsites.net/azurejobs/#/jobs/continuous/SubmissionJob shows
Continuous WebJob Details SubmissionJob
Running
Run command: run.cmd
But there's no list of function invocations below it, and the job remains permanently in a Running
state. If I go to the 'Functions' link in Kudu, it says there are no functions/function invocations to display.
Any thoughts?
The bulk of this worked fine in Framework 4.7, though the app builder was clearly different.
c#


add a comment |
We have an Azure WebJob (3.x) running under an API App in Azure, all Core 2.1. It publishes fine, and runs, but doesn't show any Functions or list the Function Invocations on the dashboard. Which is odd, because the console output for the job does show it detecting a function:
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Run script 'run.cmd' with script host - 'WindowsScriptHost'
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Status changed to Running
[10/17/2018 09:26:19 > fa7c81: INFO]
[10/17/2018 09:26:19 > fa7c81: INFO] D:localTempjobscontinuousSubmissionJob43ucb4rv.ipc>dotnet SubmissionJob.dll
[10/17/2018 09:26:21 > fa7c81: INFO] dbug: Microsoft.Extensions.Hosting.Internal.Host[1]
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting starting
[10/17/2018 09:26:21 > fa7c81: INFO] info: Microsoft.Azure.WebJobs.Hosting.JobHostService[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Starting JobHost
[10/17/2018 09:26:21 > fa7c81: INFO] info: Host.Startup[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Found the following functions:
[10/17/2018 09:26:21 > fa7c81: INFO] SubmissionJob.Functions.ProcessQueueMessageAsync
[10/17/2018 09:26:21 > fa7c81: INFO]
[10/17/2018 09:26:21 > fa7c81: INFO] Application started. Press Ctrl+C to shut down.
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting environment: QA
The Program.cs Program
class looks like this:
public static async Task Main(string args)
{
var builder = new HostBuilder()
.UseEnvironment(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"))
.ConfigureWebJobs(b =>
{
b.AddAzureStorageCoreServices()
.AddAzureStorage()
.AddServiceBus()
.AddEventHubs();
})
.ConfigureAppConfiguration(b =>
{
// Adding command line as a configuration source
b.AddCommandLine(args);
})
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
})
.ConfigureServices((context, services) =>
{
services.AddAutoMapper();
services.AddMemoryCache();
services.AddDbContext<SubmissionsDbContext>(opts =>
opts.UseSqlServer(context.Configuration.GetConnectionString("DefaultConnection")));
// cloud services
services.AddTransient(s =>
CloudStorageAccount.Parse(
context.Configuration.GetConnectionString("AzureQueueConnectionString")));
services.AddTransient<IBlobReadService, AzureBlobReadService>();
services.AddSingleton<IBlobWriteService, AzureBlobWriteService>();
services.AddSingleton<IQueueWriteService, AzureQueueWriteService>();
// submission services
services.AddScoped<ISubmissionStatusService, SubmissionStatusService>();
services.AddSingleton<Functions, Functions>();
// job activator, required in webjobs sdk 3+
services.AddSingleton<IJobActivator>(new WebJobsActivator(services.BuildServiceProvider()));
})
.UseConsoleLifetime();;
var host = builder.Build();
using (host)
{
await host.RunAsync();
}
}
The Functions.cs has a method with the following signature:
public async Task ProcessQueueMessageAsync([QueueTrigger("operations")] CloudQueueMessage incomingMessage, TextWriter log)
...scm.azurewebsites.net/azurejobs/#/jobs/continuous/SubmissionJob shows
Continuous WebJob Details SubmissionJob
Running
Run command: run.cmd
But there's no list of function invocations below it, and the job remains permanently in a Running
state. If I go to the 'Functions' link in Kudu, it says there are no functions/function invocations to display.
Any thoughts?
The bulk of this worked fine in Framework 4.7, though the app builder was clearly different.
c#


We have an Azure WebJob (3.x) running under an API App in Azure, all Core 2.1. It publishes fine, and runs, but doesn't show any Functions or list the Function Invocations on the dashboard. Which is odd, because the console output for the job does show it detecting a function:
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Run script 'run.cmd' with script host - 'WindowsScriptHost'
[10/17/2018 09:26:19 > fa7c81: SYS INFO] Status changed to Running
[10/17/2018 09:26:19 > fa7c81: INFO]
[10/17/2018 09:26:19 > fa7c81: INFO] D:localTempjobscontinuousSubmissionJob43ucb4rv.ipc>dotnet SubmissionJob.dll
[10/17/2018 09:26:21 > fa7c81: INFO] dbug: Microsoft.Extensions.Hosting.Internal.Host[1]
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting starting
[10/17/2018 09:26:21 > fa7c81: INFO] info: Microsoft.Azure.WebJobs.Hosting.JobHostService[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Starting JobHost
[10/17/2018 09:26:21 > fa7c81: INFO] info: Host.Startup[0]
[10/17/2018 09:26:21 > fa7c81: INFO] Found the following functions:
[10/17/2018 09:26:21 > fa7c81: INFO] SubmissionJob.Functions.ProcessQueueMessageAsync
[10/17/2018 09:26:21 > fa7c81: INFO]
[10/17/2018 09:26:21 > fa7c81: INFO] Application started. Press Ctrl+C to shut down.
[10/17/2018 09:26:21 > fa7c81: INFO] Hosting environment: QA
The Program.cs Program
class looks like this:
public static async Task Main(string args)
{
var builder = new HostBuilder()
.UseEnvironment(Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"))
.ConfigureWebJobs(b =>
{
b.AddAzureStorageCoreServices()
.AddAzureStorage()
.AddServiceBus()
.AddEventHubs();
})
.ConfigureAppConfiguration(b =>
{
// Adding command line as a configuration source
b.AddCommandLine(args);
})
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
})
.ConfigureServices((context, services) =>
{
services.AddAutoMapper();
services.AddMemoryCache();
services.AddDbContext<SubmissionsDbContext>(opts =>
opts.UseSqlServer(context.Configuration.GetConnectionString("DefaultConnection")));
// cloud services
services.AddTransient(s =>
CloudStorageAccount.Parse(
context.Configuration.GetConnectionString("AzureQueueConnectionString")));
services.AddTransient<IBlobReadService, AzureBlobReadService>();
services.AddSingleton<IBlobWriteService, AzureBlobWriteService>();
services.AddSingleton<IQueueWriteService, AzureQueueWriteService>();
// submission services
services.AddScoped<ISubmissionStatusService, SubmissionStatusService>();
services.AddSingleton<Functions, Functions>();
// job activator, required in webjobs sdk 3+
services.AddSingleton<IJobActivator>(new WebJobsActivator(services.BuildServiceProvider()));
})
.UseConsoleLifetime();;
var host = builder.Build();
using (host)
{
await host.RunAsync();
}
}
The Functions.cs has a method with the following signature:
public async Task ProcessQueueMessageAsync([QueueTrigger("operations")] CloudQueueMessage incomingMessage, TextWriter log)
...scm.azurewebsites.net/azurejobs/#/jobs/continuous/SubmissionJob shows
Continuous WebJob Details SubmissionJob
Running
Run command: run.cmd
But there's no list of function invocations below it, and the job remains permanently in a Running
state. If I go to the 'Functions' link in Kudu, it says there are no functions/function invocations to display.
Any thoughts?
The bulk of this worked fine in Framework 4.7, though the app builder was clearly different.
c#


c#


asked Oct 17 '18 at 14:44


Matt StylesMatt Styles
366111
366111
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
The answer to this is twofold.
You can write to the Kudu Dashboard with
var builder = new HostBuilder()
.ConfigureWebJobs(b =>
{
b.AddDashboardLogging();
});
This will work and show function invocations for WebJobs 1.x, 2.x. However, from WebJobs SDK 3.x onwards, this is obsolete. The console output will continue to show in Kudu Dashboard, but functions will not be detected and won't be displayed, nor their invocations. Application Insights is recommended instead.
var builder = new HostBuilder()
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights.
// This may already be configured in Azure Portal if running WebJob udner existing app with App Insights.
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
});
Make sure that you have configured a connection string named AzureWebJobsStorage
with a storage connection string.
See also: https://github.com/Azure/azure-webjobs-sdk/wiki/Application-Insights-Integration
And: https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-get-started#add-application-insights-logging
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
add a comment |
The dashboard logging is not enabled by default.
To enable that feature, please call the AddDashboardLogging
extension method on the webjobs builder instance you're configuring
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
add a comment |
Have you have missed below code
Functions is the name of the function class.
.ConfigureServices((hostBuilderContext, services) =>
{
services.AddScoped<Functions, Functions>();
})
I think this should work.
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f52857635%2fazure-webjobs-3-x-continuous-job-not-showing-functions-in-dashboard%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
The answer to this is twofold.
You can write to the Kudu Dashboard with
var builder = new HostBuilder()
.ConfigureWebJobs(b =>
{
b.AddDashboardLogging();
});
This will work and show function invocations for WebJobs 1.x, 2.x. However, from WebJobs SDK 3.x onwards, this is obsolete. The console output will continue to show in Kudu Dashboard, but functions will not be detected and won't be displayed, nor their invocations. Application Insights is recommended instead.
var builder = new HostBuilder()
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights.
// This may already be configured in Azure Portal if running WebJob udner existing app with App Insights.
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
});
Make sure that you have configured a connection string named AzureWebJobsStorage
with a storage connection string.
See also: https://github.com/Azure/azure-webjobs-sdk/wiki/Application-Insights-Integration
And: https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-get-started#add-application-insights-logging
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
add a comment |
The answer to this is twofold.
You can write to the Kudu Dashboard with
var builder = new HostBuilder()
.ConfigureWebJobs(b =>
{
b.AddDashboardLogging();
});
This will work and show function invocations for WebJobs 1.x, 2.x. However, from WebJobs SDK 3.x onwards, this is obsolete. The console output will continue to show in Kudu Dashboard, but functions will not be detected and won't be displayed, nor their invocations. Application Insights is recommended instead.
var builder = new HostBuilder()
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights.
// This may already be configured in Azure Portal if running WebJob udner existing app with App Insights.
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
});
Make sure that you have configured a connection string named AzureWebJobsStorage
with a storage connection string.
See also: https://github.com/Azure/azure-webjobs-sdk/wiki/Application-Insights-Integration
And: https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-get-started#add-application-insights-logging
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
add a comment |
The answer to this is twofold.
You can write to the Kudu Dashboard with
var builder = new HostBuilder()
.ConfigureWebJobs(b =>
{
b.AddDashboardLogging();
});
This will work and show function invocations for WebJobs 1.x, 2.x. However, from WebJobs SDK 3.x onwards, this is obsolete. The console output will continue to show in Kudu Dashboard, but functions will not be detected and won't be displayed, nor their invocations. Application Insights is recommended instead.
var builder = new HostBuilder()
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights.
// This may already be configured in Azure Portal if running WebJob udner existing app with App Insights.
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
});
Make sure that you have configured a connection string named AzureWebJobsStorage
with a storage connection string.
See also: https://github.com/Azure/azure-webjobs-sdk/wiki/Application-Insights-Integration
And: https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-get-started#add-application-insights-logging
The answer to this is twofold.
You can write to the Kudu Dashboard with
var builder = new HostBuilder()
.ConfigureWebJobs(b =>
{
b.AddDashboardLogging();
});
This will work and show function invocations for WebJobs 1.x, 2.x. However, from WebJobs SDK 3.x onwards, this is obsolete. The console output will continue to show in Kudu Dashboard, but functions will not be detected and won't be displayed, nor their invocations. Application Insights is recommended instead.
var builder = new HostBuilder()
.ConfigureLogging((context, b) =>
{
b.SetMinimumLevel(LogLevel.Debug);
b.AddConsole();
// If this key exists in any config, use it to enable App Insights.
// This may already be configured in Azure Portal if running WebJob udner existing app with App Insights.
var appInsightsKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(appInsightsKey))
{
b.AddApplicationInsights(o => o.InstrumentationKey = appInsightsKey);
}
});
Make sure that you have configured a connection string named AzureWebJobsStorage
with a storage connection string.
See also: https://github.com/Azure/azure-webjobs-sdk/wiki/Application-Insights-Integration
And: https://docs.microsoft.com/en-us/azure/app-service/webjobs-sdk-get-started#add-application-insights-logging
answered Oct 18 '18 at 9:00


Matt StylesMatt Styles
366111
366111
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
add a comment |
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Yes, the functionality was obsoleted in 3.x, but the behavior is the same. Functions should be detected and displayed, so if you're not seeing that, please open an issue at github.com/azure/azure-webjobs-sdk . Application Insights is indeed the recommendation moving forward, and the reason why this was obsoleted.
– Fabio Cavalcante
Oct 18 '18 at 20:58
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Also, the extension and configuration is different prior to 3.x, so that method doesn't apply in those cases.
– Fabio Cavalcante
Oct 18 '18 at 20:59
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
Does that mean that the Kudu dashboard for Webjobs is now obsolete?
– Métoule
Jan 16 at 12:14
add a comment |
The dashboard logging is not enabled by default.
To enable that feature, please call the AddDashboardLogging
extension method on the webjobs builder instance you're configuring
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
add a comment |
The dashboard logging is not enabled by default.
To enable that feature, please call the AddDashboardLogging
extension method on the webjobs builder instance you're configuring
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
add a comment |
The dashboard logging is not enabled by default.
To enable that feature, please call the AddDashboardLogging
extension method on the webjobs builder instance you're configuring
The dashboard logging is not enabled by default.
To enable that feature, please call the AddDashboardLogging
extension method on the webjobs builder instance you're configuring
answered Oct 17 '18 at 16:30


Fabio CavalcanteFabio Cavalcante
9,21122435
9,21122435
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
add a comment |
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
1
1
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
See also this related issue
– David Ebbo
Oct 17 '18 at 17:03
add a comment |
Have you have missed below code
Functions is the name of the function class.
.ConfigureServices((hostBuilderContext, services) =>
{
services.AddScoped<Functions, Functions>();
})
I think this should work.
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
add a comment |
Have you have missed below code
Functions is the name of the function class.
.ConfigureServices((hostBuilderContext, services) =>
{
services.AddScoped<Functions, Functions>();
})
I think this should work.
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
add a comment |
Have you have missed below code
Functions is the name of the function class.
.ConfigureServices((hostBuilderContext, services) =>
{
services.AddScoped<Functions, Functions>();
})
I think this should work.
Have you have missed below code
Functions is the name of the function class.
.ConfigureServices((hostBuilderContext, services) =>
{
services.AddScoped<Functions, Functions>();
})
I think this should work.
answered Jan 3 at 3:09
Ashwinee VaishampayanAshwinee Vaishampayan
138
138
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
add a comment |
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
No. I have registered the Functions class as a Singleton service in the code I posted.
– Matt Styles
Jan 3 at 7:30
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
I had created a timer trigger and was working for me.Can you create a timer trigger and check if its getting triggered.
– Ashwinee Vaishampayan
Jan 4 at 8:48
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
No. This was posted months ago and I'm just using App Insights now.
– Matt Styles
Jan 5 at 5:31
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f52857635%2fazure-webjobs-3-x-continuous-job-not-showing-functions-in-dashboard%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown