> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chronosphere.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Host

> Operating system metrics from the machine running the Collector, including CPU, memory, disk, file system, network, load, paging, process counts, and uptime.

The Host integration requires CXDOT Collector 1.4.0 or greater.

The Host integration collects operating system metrics from the machine that runs the
Chronosphere XDOT Collector. Use the integration to monitor CPU, memory, disk, file system,
network, load, paging, process counts, and uptime.

## Supported telemetry types

The Host integration supports these telemetry types:

| Type    | Supported |
| ------- | --------- |
| Logs    | No        |
| Metrics | Yes       |
| Traces  | No        |
| Events  | No        |

## Prerequisites

When you deploy the Collector with the Helm chart, the chart mounts the Linux node's file
system read-only at `/hostfs` and configures the integration to use that path. No additional
volume mapping is required.

For another container-based Linux deployment, bind-mount the host's root file system
read-only into the container and set `root_path` to the mount point. For example, mount
the host root at `/hostfs` and set `root_path: /hostfs`. Without this mount, the
integration reports metrics for the container instead of the host.

A Collector that runs directly on the host requires no file system mount.

## Configure

The Host integration requires no target configuration. It monitors the machine where
the Collector runs.

The integration includes the following components:

| Component      | Collects                                                      | Enabled by default | Configurable behavior                                         |
| -------------- | ------------------------------------------------------------- | ------------------ | ------------------------------------------------------------- |
| `cpu`          | CPU time, utilization, and scheduling activity                | Yes                | Enable or disable collection; tune component-specific metrics |
| `memory`       | Physical and virtual memory usage                             | Yes                | Enable or disable collection; tune component-specific metrics |
| `disk`         | Block-device operations, throughput, and I/O time             | Yes                | Enable or disable collection; tune component-specific metrics |
| `filesystem`   | File system capacity, usage, and inode counts                 | Yes                | Enable or disable collection; tune component-specific metrics |
| `network`      | Interface traffic, protocol counters, and connection tracking | Yes                | Enable or disable collection; tune component-specific metrics |
| `load`         | System load averages                                          | Yes                | Enable or disable collection; tune component-specific metrics |
| `paging`       | Paging and swap activity                                      | Yes                | Enable or disable collection; tune component-specific metrics |
| `processes`    | Process counts grouped by state                               | Yes                | Enable or disable collection; tune component-specific metrics |
| `uptime`       | Time since the operating system started                       | Yes                | Enable or disable collection; tune component-specific metrics |
| `netclass`     | Linux network-interface configuration and link state          | Yes                | Enable or disable collection                                  |
| `file_handles` | Linux system-wide file descriptor usage                       | Yes                | Enable or disable collection                                  |
| `process`      | CPU, memory, and I/O metrics for individual processes         | No                 | Enable or disable collection; tune component-specific metrics |

You can also configure collection timing and the root of the host file system for all
components. For the complete list of fields, accepted values, and defaults, consult the
configuration reference on this page.

To configure the Host integration, follow these steps:

1. Optional: Configure the shared settings or individual components. For example:

   ```yaml theme={null}
   config:
     integrations:
       host:
         collection_interval: 30s
         filesystem:
           enabled: false
   ```

2. Optional: Enable detailed per-process metrics only when you need them. These metrics
   accept filters and per-metric toggles, and can substantially increase the number of
   time series. For example, add the following to the `values.yaml` for your Helm chart:

   ```yaml theme={null}
   config:
     integrations:
       host:
         process:
           enabled: true
           config:
             include:
               match_type: regexp
               names:
                 - "^(nginx|postgres)$"
   ```

   The `include` filter selects processes by process name. This example collects
   per-process metrics for processes named `nginx` or `postgres`.

### Validate

To validate the Host integration, follow these steps:

1. In the Live Telemetry Analyzer, filter for `cxdot.integration.name=host`. Confirm
   that the Host metric names appear.

2. In Metrics Explorer, run the following query:

   ```text theme={null}
   count by ("host.name") ({"system.uptime"})
   ```

   Confirm that the query returns the expected time series for each node. Use the
   `host.name` label to identify the node.

For more information about diagnosing a failing integration, see
[Troubleshooting](https://docs.chronosphere.io/ingest/cxdot-collector/troubleshooting).

## Configuration reference

Configure one Host integration instance with the following settings. In Helm values, place these
settings under `config.integrations.host`. In a Collector configuration file, place them under
`cxdot.integrations.host`.

### Optional settings

* **`enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`collection_interval`**
  Type: `duration`. Optional. Default: `60s`.
  How often the Collector collects host metrics.

* **`timeout`**
  Type: `duration`. Optional. Default: `60s`.
  Maximum time allowed for one collection.

* **`root_path`**
  Type: `string`. Optional.
  Root of the host filesystem when the collector runs in a container with the host root
  bind-mounted (for example, `/hostfs`). Passed to every hostmetrics scraper instance so they
  read host stats instead of the container's view. Omit when the collector runs directly on the
  host.

* **`cpu`**
  Type: `object`. Optional.
  Settings for collecting CPU usage metrics.

* **`cpu.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`cpu.config`**
  Type: `object`. Optional. Default:
  `{"metrics":{"system.cpu.physical.count":{"enabled":true},"system.cpu.utilization":{"enabled":true}}}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is. The default enables the CXDOT metric set.

* **`memory`**
  Type: `object`. Optional.
  Settings for collecting memory usage metrics.

* **`memory.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`memory.config`**
  Type: `object`. Optional. Default:
  `{"metrics":{"system.linux.memory.available":{"enabled":true},"system.memory.limit":{"enabled":true},"system.memory.linux.shared":{"enabled":true},"system.memory.utilization":{"enabled":true}}}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is. The default enables the CXDOT metric set.

* **`filesystem`**
  Type: `object`. Optional.
  Settings for collecting filesystem usage metrics.

* **`filesystem.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`filesystem.config`**
  Type: `object`. Optional. Default:
  `{"include_virtual_filesystems":true,"metrics":{"system.filesystem.utilization":{"enabled":true}}}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is. The default enables the CXDOT metric set.

* **`filesystem.config.include_virtual_filesystems`**
  Type: `boolean`. Optional. Default: `true`.
  Include virtual and bind-mounted filesystems. Containerized collectors require this to report
  filesystems from a bind-mounted host root.

* **`network`**
  Type: `object`. Optional.
  Settings for collecting network interface and connection metrics.

* **`network.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`network.config`**
  Type: `object`. Optional. Default:
  `{"metrics":{"system.network.conntrack.count":{"enabled":true},"system.network.conntrack.max":{"enabled":true}}}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is. The default enables the CXDOT metric set.

* **`disk`**
  Type: `object`. Optional.
  Settings for this host metrics scraper.

* **`disk.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`disk.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.

* **`load`**
  Type: `object`. Optional.
  Settings for this host metrics scraper.

* **`load.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.

* **`load.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`paging`**
  Type: `object`. Optional.
  Settings for this host metrics scraper.

* **`paging.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.

* **`paging.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`processes`**
  Type: `object`. Optional.
  Settings for this host metrics scraper.

* **`processes.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.

* **`processes.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`uptime`**
  Type: `object`. Optional.
  Settings for this host metrics scraper.

* **`uptime.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.

* **`uptime.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`netclass`**
  Type: `object`. Optional.
  Settings for collecting per-interface configuration metrics from `/sys/class/net`.

* **`netclass.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`file_handles`**
  Type: `object`. Optional.
  Settings for collecting system-wide file-descriptor counts from `/proc/sys/fs/file-nr`.

* **`file_handles.enabled`**
  Type: `boolean`. Optional. Default: `true`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`process`**
  Type: `object`. Optional.
  Settings for collecting per-process metrics. Off by default: one series set per process is
  high cardinality.

* **`process.enabled`**
  Type: `boolean`. Optional. Default: `false`.
  Whether to enable this configuration block. If true, the Collector runs the integration or
  capability. If false, the Collector doesn't run it.

* **`process.config`**
  Type: `object`. Optional. Default: `{}`.
  Additional scraper settings, passed through to the upstream hostmetrics scraper for this
  capability as-is.


## Related topics

- [Troubleshooting pipelines](/ingest/pipeline/v2/build/troubleshoot.md)
- [Clickhouse  destination plugin](/ingest/pipeline/plugins/destination-plugins/clickhouse.md)
- [Scalyr DataSet destination plugin](/ingest/pipeline/plugins/destination-plugins/scalyr.md)
- [Use monitors to generate alerts and notifications](/investigate/alerts/monitors.md)
- [Prometheus Remote Write destination plugin](/ingest/pipeline/plugins/destination-plugins/prometheus-remote-write.md)
