I have set up a Function App on Azure under an App Service Plan (Premium functions - ae north).
The function app misbehaves after being live for sometime.
App Service Plan:
"location": "UAE North"
- There are a total of 13 functions within the app that are created to be fired at different intervals (two times/three times/six times every 24 hours).
- The Functions app has been developed, debugged and deployed via VScode and work as intended initially when deployed.
- The basic use case of the funtion app is to call relevant API endpoints, pre-process and transform data and push it to an external cloud data warehouse. Everytime an app is fired, an email is triggered via sendgrid to inform the status of the ETL activity to the monitoring user.
- The first time the functions are triggered, the app is designed to ingest the historic data based on certain parameters configured during deployment
- The apps are also designed to ensure that at any given point in time, they run for not longer than 60 min
- There are some temporary files being staged in /tmp folder, but, the last time i checked they are minimal and are designedto be overwritten during consequtive every run
The Funtion app works perfectly fine and suddenly stops firing.
This has happened in two instances and both the times, a simple act of restarting the app gets it back up and running as intended.
There are two ways i get to know if the app have stopped firing, the emails on the status is not triggered and i also ensure to cross validate the latest injestion dates on the cloud data warehouse to cross off email client issue.
I have noticed that this happens during every for some reason i dont understand. Although its happend only twice now.
I have checked the logs to see if there are any programming errors or execptions that has caused the trigger of mails or update of Data warehouse, there is no evidence of that. As mentioned, a simple act of restarting the app get everything up and running without any issues
I am trying to understand why this happens and this is not a scalable option to move forward with the solution.
Self taught programmer here with little development experience currently familiarizing myself with the azure ecosytem. Please go easy on the comments