Monitoring your application's uptime is important for keeping your application highly available and knowing about application outages when they happen. Engine Yard Cloud provides the ability to monitor an application's external URLs to determine if the application is accessible.
To enable uptime monitoring for an environment:
- Add the FitterHappier gem.
- Update your environment.
- Add the monitored URL to Engine Yard Cloud.
Add the FitterHappier gem
FitterHappier provides actions for monitoring site and/or database availability. The FitterHappier monitoring controller disables unnecessary Rails features like sessions, layouts, and logging, for lightning-fast monitoring URIs.
FitterHappier is packaged as a gem. (Previously FitterHappier was installed as a Rails plugin.)
Add the fitter-happier gem to your Gemfile.
Start your application in development mode and test the following URIs:
FitterHappier Site Check Passed
FitterHappier Site Check Passed @ Wed, 17 Dec 2008 14:27:47 -0800
FitterHappier Site and Database Check Passed @ Wed, 17 Dec 2008 14:27:57 -0800
Schema Version: 20081217141904
Update your environment
After FitterHappier has been successfully installed, commit the changes to your git repository and redeploy your application. Ensure deployment was successful by testing the same URIs from above.
Add the monitored URL to Engine Yard Cloud
You can monitor a single URL per environment. We suggest monitoring the URL
http://yoursite.com/fitter_happier/site_and_database_check for optimal coverage.
- Login to your Engine Yard account.
- Select an environment by clicking the environment name.
- In the Environment page, click HTTP Monitoring.
- Add the URL you want to monitor in the URL to monitor text field.
- Click Add URL.
Engine Yard Cloud pings the URL you provided approximately every 2 minutes. If the application does not return a 200 OK HTTP response, an alert will be created and an email will be sent to the configured email address. When the application comes back online, an email will be sent to confirm availability.