The upsilon service API is very simple, but simple is good. It is fully compatible with nagios scripts. This page tells service check developers how to write their own new service checks. If you are looking to use an existing service, see the Service syntax
Upsilon has been used to monitor scripts that are written in perl, php, python and SH. If your language supports standard OS exit codes and printing to stdout (and lets face it, even QBasic supports that), then you can use upsilon to execute it.
Karma based on execution:
- GOOD - Exit code 0 - Indicates success.
- WARNING - Exit code 1 - Indicates warning.
- BAD - Exit code 2 - Indicates failure.
- UNKNOWN - Any other exit code: this will result upsilon reporting "UNKNOWN" for the service. Often is used for services that have a critical error, like a missing Perl/Python library.
Karma based on abnormal service execution:
- TIMEOUT - When a service has not executed within it's allotted timeframe. The timeout can be customised for each service, see Service syntax
- SKIPPED - When a service is skipped by the scheduler, because it's dependant service failed. Useful to skip network-related checks if a check for network connectivity fails. See Service syntax
Graphical interfaces can of course change any of these "karma" levels when showing the result to the users. upsilon-web will "rewrite" the karma levels of some services;