An Azure service that stores unstructured data in the cloud as blobs.
Yes. A common cause is blob-trigger polling behavior rather than an application defect.
Checks that match this symptom:
- Check whether the Function App is on the Consumption plan.
- Blob trigger polling can be delayed by up to 10 minutes if the app has gone idle.
- This often looks like the trigger has stopped, even though the function still works when invoked through its internal queue path.
- Check whether the app is going cold/idle.
- If faster or more reliable blob processing is required, use an App Service plan with Always On enabled.
- A similar reported case was resolved by keeping the function warm or enabling Always On.
- Check the storage account used by
AzureWebJobsStorage.- Blob trigger state is stored in the
azure-webjobs-hostscontainer in that storage account. - Azure Functions keeps blob receipts there so the same blob version is not processed more than once.
- Blob trigger state is stored in the
- Check for stale blob receipts.
- If a blob version was already marked as processed, the trigger will not run again for that same version.
- To force reprocessing, delete the blob receipt for that blob from
azure-webjobs-hosts. - To trigger rescanning sooner, update the
scaninfoblob inazure-webjobs-hosts/blobscaninfo. Any blobs with a last modified time after theLatestScanproperty are scanned again. - Warning: deleting receipts or changing scan info can cause blobs to be processed again.
- Check for poison blob handling.
- If processing failed repeatedly, Azure Functions retries five times by default.
- After that, it writes a message to the
webjobs-blobtrigger-poisonqueue. - If new blobs are ending up there, the trigger is firing but processing is failing.
- Check logs with polling limitations in mind.
- Blob polling relies partly on storage logs, and those logs are created on a best-effort basis. Some events can be missed.
- If more reliable triggering is needed, consider a trigger option other than the classic polling blob trigger.
- Verify deployed configuration matches local settings.
- Confirm the blob path and connection settings in the Function App configuration match the working local configuration.
- Also confirm blobs are being uploaded to the exact container the function is listening to.
A practical troubleshooting path is:
- Confirm hosting plan and whether the app is idling.
- Inspect
AzureWebJobsStorageand theazure-webjobs-hostscontainer. - Check for blob receipts for the affected blobs.
- Check the
webjobs-blobtrigger-poisonqueue. - If the issue is intermittent or happens after idle periods, move to a plan with Always On or keep the app warm.
References:
- Azure Blob storage trigger for Azure Functions (programming-language-csharp)
- Azure Blob storage trigger for Azure Functions (programming-language-javascript)
- Blob trigger deployed to Azure function app not firing - Microsoft Q&A
- Blob Storage Trigger Function App is not working for 1 user but works for the other one. - Microsoft Q&A