An Azure service that provides an event-driven serverless compute platform.
Hello @Prasanna,
Thanks for reaching out to Microsoft Q&A.
Your CRON expression is correct and runs hourly at minute 15 UTC. Since there were no invocations or logs for nearly 24 hours and execution resumed immediately after a manual restart, this indicates the Functions host stopped processing the timer rather than an issue with your code or schedule.
On the Flex Consumption plan, timer triggers rely on a running host instance and storage-backed schedule monitoring (AzureWebJobsStorage). If the app scales to zero, the host becomes unresponsive, or there is a storage connectivity/lease issue, the timer may not fire until the app is restarted. Restarting forces the host to reinitialize and reacquire the timer lease, which explains the recovery.
This is most likely a host lifecycle or scale-related issue, not a CRON misconfiguration.
Here’s a breakdown of some potential reasons and steps you can take to troubleshoot:
- Function Runtime Not Starting: There may have been an exception that caused the function runtime host to fail to start. You can check Application Insights for any errors during startup:
exceptions
| where customDimensions.Category == "Host.Startup"
- Invocations Timing Out: If your function had ongoing executions that got stuck, it might prevent new invocations from occurring. Check if you have a timeout set in your
host.jsonconfiguration. - Application Insights Logs: Since you mentioned that no logs were generated in Application Insights, ensure that logging is properly set up. You may run a query like this for any invocation failures:
exceptions
| where customDimensions.prop__functionName =~ "*YourFunctionName*"
- Idle Behavior: If there hasn't been any traffic or cache interactions, the function app may go idle, especially in the Consumption plan. The Flex Consumption plan runs functions on demand, which might have led to your function stopping.
Check Application Insights: Make sure it’s enabled and review the logs for any errors or exceptions that popped up during the period it was inactive.
Look at your host.json for timeout settings and ensure they are configured properly. Look at the Azure activity logs to see if there were any restarts or changes made that could correlate with the function’s inactivity.
Hope this helps!
If the resolution was helpful, kindly take a moment to click on and click on Yes for was this answer helpful. And, if you have any further query do let us know.