Upsilon is a distributed, flexible, and extensible system monitoring application. Being distributed means you run service checks on Upsilon nodes in your network where it makes sense, either on every server or on a management network, inside or outside the firewall. You can run checks on secure, hard to reach networks, and push those results to a central server. You can optionally execute "agentless" checks just by using SSH. Being flexible means that if you can script it, you can monitor it. Unlike most monitoring systems, the monitoring scripts are external to the main server, so you can use Upsilon to execute your monitoring scripts in an extremely robust way. Upsilon has been used to monitor many different things and is API-compatible with all nagios monitoring scripts. Being extensible means you can add monitoring checks to Upsilon at runtime without needing to restart the server. The upsilon-node and upsilon-web projects both have their own REST APIs.