Skip to content
Luiz Carlos Cavalcanti edited this page Nov 29, 2018 · 3 revisions

Heartcheck

Check your applications' heart.

About

Endpoint JSON documentation:

https://github.com/locaweb/heartcheck/wiki/Endpoint-Json

How to setup

  1. Include the gem in your Gemfile:

    gem 'heartcheck'
    
  2. Install the gem:

    bundle install
    
  3. Generate some required files according to the framework you are using:

    heartcheck rails
    heartcheck padrino
    heartcheck sinatra
    
  4. After that, follow the instructions, edit the generated files and restart your server.

  5. Done! Now you are able to access [host]/monitoring and check the monitoring JSON!

Routes

  • [host]/monitoring
    • To check if the app and its integrations are avaiable;
    • Directed for verifying the app SLA;
  • [host]/monitoring/info
    • To view some informations that you can configure;
    • Directed for availability check from load balanced and get info about the installed app;
  • [host]/monitoring/functional
    • To check if the app is healty (no async job failed and other checks that aren't related to app availability);
    • Directed for verifying consistency problems within the app;
  • [host]/monitoring/dev
    • Directed for the development team;
    • It's run the essential and functional checks;
  • [host]/monitoring/health_check
    • To check if the app is up and running
  • [host]/monitoring/inspect
    • To get app's general information (name, etc) and dependencies list
    • It runs no actual check, it's intended for infrastructure crawling purposes

How to use

You can see how to use in template that is generated when install: https://github.com/locaweb/heartcheck/blob/master/lib/generators/templates/config.rb

Git tags

Don't forget to tag your work! After a merge request being accepted, run:

1 - (git tag -a "x.x.x" -m "") to create the new tag. 2 - (git push origin "x.x.x") to push the new tag to remote.

Follow the RubyGems conventions at http://docs.rubygems.org/read/chapter/7 to know how to increment the version number. Covered in more detail in http://semver.org/

Merge requests acceptance

Don't forget to write tests to all your code. It's very important to maintain the codebase's sanity. Any merge request that doesn't have enough test coverage will be asked a revision