# 9.2 Infrastructure health

OpenCRVS monitoring tools let you measure and view critical metrics such as available disk space, used memory and total CPU load. This information can be used to proactively increase the available resources when the demand increases. These metrics are collected by a tool called [Metricbeat](https://www.elastic.co/beats/metricbeat) and stored in ElasticSearch.

{% hint style="info" %}
Notice that these metrics are not stored indefinitely. The default installation of OpenCRVS keeps both the metric measurements and system logs only for 3 days. The rollover policy is configured in the `infrastructure/monitoring/beats/rollover-policy.json` file. This file can be overwritten in the country config Docker compose files
{% endhint %}

![](/files/EMbKKn3OhwaS3zxD6kES)

### Available disk space

To see the amount of available disk space, navigate to **Metrics Explorer** (Observability -> Metrics -> Metrics Explorer). You can see the current usage of different storage devices by selecting a Max value of `system.filesystem.used.pct` grouped by `host.hostname` and `system.filesystem.device_name`

![](/files/Jb0jE3FZAwyJQBCPEdw0)

The default installation of OpenCRVS uses an encrypted disk for data storage on all nodes named `/dev/mapper/cryptfs` . You filter the listed devices to only show these disks by using the following search clause:

`system.filesystem.device_name : "/dev/mapper/cryptfs"`

![](/files/EMbKKn3OhwaS3zxD6kES)

### Common infrastructure metrics

|                      | Value   | Metric                         | Grouped by                                                            | Filtered by                                             |
| -------------------- | ------- | ------------------------------ | --------------------------------------------------------------------- | ------------------------------------------------------- |
| Available disk space | Max     | `system.filesystem.used.pct`   | `host.hostname` `system.filesystem.device_name`                       | `system.filesystem.device_name : "/dev/mapper/cryptfs"` |
| CPU usage            | Average | `system.process.cpu.total.pct` | `host.hostname`                                                       |                                                         |
| Memory usage         | Max     | `docker.memory.usage.pct`      | `host.hostname docker.container.labels.com_docker_swarm_service_name` |                                                         |

#### Read more

* [Host metrics](https://www.elastic.co/guide/en/observability/master/host-metrics.html)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.opencrvs.org/setup/7.-monitoring/7.2-infrastructure-health.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
