Managed Monitoring

The Healthcare Blocks DevOps team proactively monitors customer environments as described in monitoring protocols. The following information presents options for directly monitoring your environment.

CloudWatch Dashboards (Beta)

As of October 2020, new virtual machines include access to an AWS CloudWatch dashboard. See this announcement for details. Note: cAdvisor is still bundled in these machines.

cAdvisor Monitoring Agent

Your Healthcare Blocks virtual machine includes a lightweight monitoring tool - cAdvisor - developed by Google and maintained as an open source project. It collects metrics about CPU, memory, and disk usage at the virtual machine and container level. It also provides a built-in Web interface for viewing the data through a Web browser. 

By default, only the last 10 minutes of metrics are collected and displayed. This time frame tends to be sufficient when observing your app during and after a deployment. 

The cAdvisor Web interface is not exposed to the outside world, so you'll need to create an SSH tunnel on your local machine, mapped to the port being used (1234) for this service. Here's how:

ssh -gN -L 1234:localhost:1234 SSH_USERNAME@SERVER_ADDRESS

where SSH_USERNAME and SERVER_ADDRESS are the values provided to you by Healthcare Blocks after the machine was provisioned.

Now fire up your Web browser and go to http://localhost:1234.

On the Overview page, you'll see dials representing the various metrics being tracked. You'll also see a list of current processes that are sortable by clicking the various column headings. At the top of this page, you'll notice a "Docker Containers" link in blue. Clicking this link will allow you to drill down into each Docker-based container and view its metrics.

To close the tunnel, just terminate the SSH connection (crtl + c). If you need to connect to more than one machine at a time, fire up a separate console and run the tunnel command shown above, changing the first 1234 to a different value, e.g. 1235. That value can be any unused port on your local machine and is the same value you plug into http://localhost:[port number] in your browser.

Other Monitoring Options

Dedicated third-party monitoring solutions are feature rich and can extend our basic monitoring functionality. Options we've vetted and can support include:

Monitoring Uptime of Web Applications

Services such as Uptime Robot provide a free tier and can monitor your URLs from multiple locations.