You can also use the App Agent Status for app agent availability. But note in addition to the app pool recycles that take place by default every 29 hours, there is also an app pool idle time out that occurs if there’s no traffic on the app after 20 minutes. If that idle occurs, then the agent will be unloaded will no longer report and trigger this alert and look like a false alert (App|Availability = 0). You can address this by turning that setting off by setting timeout value to 0.
You can read about this here under the section Idle Time Out.