Reputation: 331
I am having trouble getting azure function to trigger via ServiceBusQueueTrigger.
Here's what I have:
Azure function:
namespace FunctionApp1
{
public static class Function1
{
[FunctionName("Function1")]
public static void Run([ServiceBusTrigger("ngctestqueue", AccessRights.Manage, Connection = "AzureWebJobsServiceBus")]string myQueueItem, TraceWriter log)
{
log.Info($"C# ServiceBus queue trigger function processed message: {myQueueItem}");
}
}
}
host.json {
}
local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=ngctest2;AccountKey=STORAGE_ACCOUNT_KEY;EndpointSuffix=core.windows.net",
"AzureWebJobsDashboard": "DefaultEndpointsProtocol=https;AccountName=ngctest2;AccountKey=STORAGE_ACCOUNT_KEY;EndpointSuffix=core.windows.net",
"AzureWebJobsServiceBus": "Endpoint=sb://ngcservicebus.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SERVICE_BUS_KEY",
"connection": "Endpoint=sb://ngcservicebus.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SERVICE_BUS_KEY"
}
}
When I run the function via F5 locally, it does not get triggered even though there ARE messages in the queue that have not yet been processed.:
%%%%%%
%%%%%%
@ %%%%%% @
@@ %%%%%% @@
@@@ %%%%%%%%%%% @@@
@@ %%%%%%%%%% @@
@@ %%%% @@
@@ %%% @@
@@ %% @@
%%
%
[10/11/2017 4:51:13 PM] Host has been specialized
Listening on http://localhost:7071/
Hit CTRL-C to exit...
[10/11/2017 4:51:13 PM] Reading host configuration file 'C:\Users\User1\source\r
epos\FunctionApp1\FunctionApp1\bin\Debug\net461\host.json'
[10/11/2017 4:51:13 PM] Host configuration file read:
[10/11/2017 4:51:13 PM] {
[10/11/2017 4:51:13 PM]
[10/11/2017 4:51:13 PM] }
[10/11/2017 4:51:14 PM] Loaded custom extension 'BotFrameworkConfiguration'
[10/11/2017 4:51:14 PM] Loaded custom extension 'SendGridConfiguration'
[10/11/2017 4:51:14 PM] Loaded custom extension 'EventGridExtensionConfig'
[10/11/2017 4:51:14 PM] Generating 1 job function(s)
[10/11/2017 4:51:14 PM] Starting Host (HostId=intelpc-1600078640, Version=1.0.11
232.0, ProcessId=27016, Debug=False, Attempt=0)
[10/11/2017 4:51:14 PM] Found the following functions:
[10/11/2017 4:51:14 PM] FunctionApp1.Function1.Run
[10/11/2017 4:51:14 PM]
[10/11/2017 4:51:14 PM] Executing HTTP request: {
[10/11/2017 4:51:14 PM] "requestId": "755084c1-3501-4e99-8629-8a9a48a60776",
[10/11/2017 4:51:14 PM] "method": "GET",
[10/11/2017 4:51:14 PM] "uri": "/"
[10/11/2017 4:51:14 PM] }
[10/11/2017 4:51:14 PM] Executed HTTP request: {
[10/11/2017 4:51:14 PM] "requestId": "755084c1-3501-4e99-8629-8a9a48a60776",
[10/11/2017 4:51:14 PM] "method": "GET",
[10/11/2017 4:51:14 PM] "uri": "/",
[10/11/2017 4:51:14 PM] "authorizationLevel": "Anonymous"
[10/11/2017 4:51:14 PM] }
[10/11/2017 4:51:14 PM] Response details: {
[10/11/2017 4:51:14 PM] "requestId": "755084c1-3501-4e99-8629-8a9a48a60776",
[10/11/2017 4:51:14 PM] "status": "OK"
[10/11/2017 4:51:14 PM] }
[10/11/2017 4:51:14 PM] Host lock lease acquired by instance ID '000000000000000
00000000017FED4C5'.
Debugger listening on [::]:5858
[10/11/2017 4:51:16 PM] Job host started
Question: What am I doing wrong, why is this not triggering to process the messages that are in the queue?
My dev environment is as follows:
1) Windows 8.1 Pro
2) VS2017 Community 15.3.5
3) Azure Functions CLI 1.0.4
Additional Info In the portal is shows that my queue has no messages, but in Cloud Explorer it shows them. How is that possible?
Any help would really be appreciated.
Thank you.
Upvotes: 1
Views: 2813
Reputation: 9901
To add to @Mikhail's comment, you have messages in an Azure Storage Queue, however, you have an Azure Function that is looking at a Service Bus queue.
Options:
Upvotes: 1
Reputation: 35144
Cloud Explorer shows Azure Storage Queues, not Service Bus Queues. Those are distinct things.
Looks like you have queue with same name in both services. Please align the bindings and where you want your messages to be.
Upvotes: 2