////
This file is generated! See scripts/docs_collector.py
////

[[metricbeat-module-system]]
== System Module

The System module allows you to monitor your servers. Because the System module always applies to the local
server, the `hosts` config option is not needed.

[float]
=== Module-Specific Configuration Notes

The System module has these additional config options:

*`processes`*:: When the `process` metricset is enabled, you can use the `processes` option to define a list of
regexp expressions to filter the processes that are reported. For more complex filtering, you should use the
<<configuration-processors, processors>> configuration option.
+
The following example config returns metrics for all processes:
+
[source,yaml]
----
metricbeat.modules:
- module: system
  metricsets: ["process"]
  processes: ['.*']
----
*`cgroups`*:: When the `process` metricset is enabled, you can use the boolean
`cgroups` option to enable the experimental cgroup metrics on Linux.
+
The following example config enables cgroups metrics on Linux.
+
[source,yaml]
----
metricbeat.modules:
- module: system
  metricsets: ["process"]
  cgroups: true
----
*`cpu_ticks`*:: When the `cpu` or `core` metricset is enabled, you can specify `cpu_ticks: true` to report CPU ticks in addition to CPU percentages stats. For example:
+
[source,yaml]
----
metricbeat.modules:
- module: system
  metricsets: ["cpu", "core"]
  cpu_ticks: true
----

It is strongly recommended to not run docker metricsets with a period smaller then 3 seconds. The request to the docker
API already takes up to 2s seconds. Otherwise all the requests would timeout and no data is reported.

[float]
=== Dashboard

The System module comes with a predefined dashboard. For example:

image::./images/metricbeat_system_dashboard.png[]


[float]
=== Example Configuration

The System module supports the standard configuration options that are described
in <<configuration-metricbeat>>. Here is an example configuration:

[source,yaml]
----
metricbeat.modules:
- module: system
  metricsets:
    # CPU stats
    - cpu

    # System Load stats
    - load

    # Per CPU core stats
    #- core

    # IO stats
    #- diskio

    # Per filesystem stats
    - filesystem

    # File system summary stats
    - fsstat

    # Memory stats
    - memory

    # Network stats
    - network

    # Per process stats
    - process

    # Sockets (linux only)
    #- socket
  enabled: true
  period: 10s
  processes: ['.*']
----

[float]
=== Metricsets

The following metricsets are available:

* <<metricbeat-metricset-system-core,core>>

* <<metricbeat-metricset-system-cpu,cpu>>

* <<metricbeat-metricset-system-diskio,diskio>>

* <<metricbeat-metricset-system-filesystem,filesystem>>

* <<metricbeat-metricset-system-fsstat,fsstat>>

* <<metricbeat-metricset-system-load,load>>

* <<metricbeat-metricset-system-memory,memory>>

* <<metricbeat-metricset-system-network,network>>

* <<metricbeat-metricset-system-process,process>>

* <<metricbeat-metricset-system-socket,socket>>

include::system/core.asciidoc[]

include::system/cpu.asciidoc[]

include::system/diskio.asciidoc[]

include::system/filesystem.asciidoc[]

include::system/fsstat.asciidoc[]

include::system/load.asciidoc[]

include::system/memory.asciidoc[]

include::system/network.asciidoc[]

include::system/process.asciidoc[]

include::system/socket.asciidoc[]

