Azure WebJob Issue after package update – Host is not running

It took me a while to get the solution for this problem and Google gave me nothing when I search the error (warning) message so I thought its worth to share it here with you all.

Problem

Error Message: Host is not running; requests will be queued but not execute until the host is started

Screenshot

Web Job Issue

Solution

It happened because of the breaking changes in Beta 0.5 version. Azure used to have the problem with same name in different region due to their caching. I beleive that some parts of Azure tools like ‘Visual Studio’s publish dialog to azure’ and ‘SCM’ were not built to support the “same name/multiple regions” or multiple subscriptions in mind. I reported about “Problem: Issue with multiple Azure subscriptions with same name” before.

The solution for this issue¬†is to make the class and method public. It’s an unusual practice for console programs but it’s how it is and it works.


public class Program {

private static Logger _logger = LogManager.GetCurrentClassLogger();

public static void Main(string[] args) {
_logger.Info("Test Main Started");
var host = new JobHost();
host.RunAndBlock();
_logger.Info("Test Main Ended");
}

public static async Task TestAsync([QueueTrigger("testqueue")] string _) {
_logger.Info("TestAsync Started");
await Task.Delay(30);
_logger.Info("TestAsync Ended");
}
}

And if you toggle the output of your webjob in SCM, you will see this log below. Then you will know that you need to make the class and methods public.

[INFO] No functions found. Try making job classes public and methods public static.

So, That’s it. Hope it helps saving some of your time.

 

3 thoughts on “Azure WebJob Issue after package update – Host is not running

  1. Thanks – I got this exact error and was struggling to figure it out before finding this post, and now my web job is running! :)

Leave a Reply

Your email address will not be published. Required fields are marked *