github.com/netdata/go.d.plugin@v0.58.1/modules/logstash/integrations/logstash.md (about)

     1  <!--startmeta
     2  custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/logstash/README.md"
     3  meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/logstash/metadata.yaml"
     4  sidebar_label: "Logstash"
     5  learn_status: "Published"
     6  learn_rel_path: "Data Collection/Logs Servers"
     7  most_popular: False
     8  message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE"
     9  endmeta-->
    10  
    11  # Logstash
    12  
    13  
    14  <img src="https://netdata.cloud/img/elastic-logstash.svg" width="150"/>
    15  
    16  
    17  Plugin: go.d.plugin
    18  Module: logstash
    19  
    20  <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
    21  
    22  ## Overview
    23  
    24  This collector monitors Logstash instances.
    25  
    26  
    27  
    28  
    29  This collector is supported on all platforms.
    30  
    31  This collector supports collecting metrics from multiple instances of this integration, including remote instances.
    32  
    33  
    34  ### Default Behavior
    35  
    36  #### Auto-Detection
    37  
    38  This integration doesn't support auto-detection.
    39  
    40  #### Limits
    41  
    42  The default configuration for this integration does not impose any limits on data collection.
    43  
    44  #### Performance Impact
    45  
    46  The default configuration for this integration is not expected to impose a significant performance impact on the system.
    47  
    48  
    49  ## Metrics
    50  
    51  Metrics grouped by *scope*.
    52  
    53  The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
    54  
    55  
    56  
    57  ### Per Logstash instance
    58  
    59  These metrics refer to the entire monitored application.
    60  
    61  This scope has no labels.
    62  
    63  Metrics:
    64  
    65  | Metric | Dimensions | Unit |
    66  |:------|:----------|:----|
    67  | logstash.jvm_threads | threads | count |
    68  | logstash.jvm_mem_heap_used | in_use | percentage |
    69  | logstash.jvm_mem_heap | committed, used | KiB |
    70  | logstash.jvm_mem_pools_eden | committed, used | KiB |
    71  | logstash.jvm_mem_pools_survivor | committed, used | KiB |
    72  | logstash.jvm_mem_pools_old | committed, used | KiB |
    73  | logstash.jvm_gc_collector_count | eden, old | counts/s |
    74  | logstash.jvm_gc_collector_time | eden, old | ms |
    75  | logstash.open_file_descriptors | open | fd |
    76  | logstash.event | in, filtered, out | events/s |
    77  | logstash.event_duration | event, queue | seconds |
    78  | logstash.uptime | uptime | seconds |
    79  
    80  ### Per pipeline
    81  
    82  These metrics refer to the pipeline.
    83  
    84  Labels:
    85  
    86  | Label      | Description     |
    87  |:-----------|:----------------|
    88  | pipeline | pipeline name |
    89  
    90  Metrics:
    91  
    92  | Metric | Dimensions | Unit |
    93  |:------|:----------|:----|
    94  | logstash.pipeline_event | in, filtered, out | events/s |
    95  | logstash.pipeline_event | event, queue | seconds |
    96  
    97  
    98  
    99  ## Alerts
   100  
   101  There are no alerts configured by default for this integration.
   102  
   103  
   104  ## Setup
   105  
   106  ### Prerequisites
   107  
   108  No action required.
   109  
   110  ### Configuration
   111  
   112  #### File
   113  
   114  The configuration file name for this integration is `go.d/logstatsh.conf`.
   115  
   116  
   117  You can edit the configuration file using the `edit-config` script from the
   118  Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/configure/nodes.md#the-netdata-config-directory).
   119  
   120  ```bash
   121  cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
   122  sudo ./edit-config go.d/logstatsh.conf
   123  ```
   124  #### Options
   125  
   126  The following options can be defined globally: update_every, autodetection_retry.
   127  
   128  
   129  <details><summary>Config options</summary>
   130  
   131  | Name | Description | Default | Required |
   132  |:----|:-----------|:-------|:--------:|
   133  | update_every | Data collection frequency. | 1 | no |
   134  | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no |
   135  | url | Server URL. | http://localhost:9600 | yes |
   136  | timeout | HTTP request timeout. | 1 | no |
   137  | username | Username for basic HTTP authentication. |  | no |
   138  | password | Password for basic HTTP authentication. |  | no |
   139  | proxy_url | Proxy URL. |  | no |
   140  | proxy_username | Username for proxy basic HTTP authentication. |  | no |
   141  | proxy_password | Password for proxy basic HTTP authentication. |  | no |
   142  | method | HTTP request method. | GET | no |
   143  | body | HTTP request body. |  | no |
   144  | headers | HTTP request headers. |  | no |
   145  | not_follow_redirects | Redirect handling policy. Controls whether the client follows redirects. | no | no |
   146  | tls_skip_verify | Server certificate chain and hostname validation policy. Controls whether the client performs this check. | no | no |
   147  | tls_ca | Certification authority that the client uses when verifying the server's certificates. |  | no |
   148  | tls_cert | Client TLS certificate. |  | no |
   149  | tls_key | Client TLS key. |  | no |
   150  
   151  </details>
   152  
   153  #### Examples
   154  
   155  ##### Basic
   156  
   157  A basic example configuration.
   158  
   159  <details><summary>Config</summary>
   160  
   161  ```yaml
   162  jobs:
   163    - name: local
   164      url: http://localhost:9600
   165  
   166  ```
   167  </details>
   168  
   169  ##### HTTP authentication
   170  
   171  HTTP authentication.
   172  
   173  <details><summary>Config</summary>
   174  
   175  ```yaml
   176  jobs:
   177    - name: local
   178      url: http://localhost:9600
   179      username: username
   180      password: password
   181  
   182  ```
   183  </details>
   184  
   185  ##### HTTPS with self-signed certificate
   186  
   187  HTTPS and self-signed certificate.
   188  
   189  <details><summary>Config</summary>
   190  
   191  ```yaml
   192  jobs:
   193    - name: local
   194      url: https://localhost:9600
   195      tls_skip_verify: yes
   196  
   197  ```
   198  </details>
   199  
   200  ##### Multi-instance
   201  
   202  > **Note**: When you define multiple jobs, their names must be unique.
   203  
   204  Collecting metrics from local and remote instances.
   205  
   206  
   207  <details><summary>Config</summary>
   208  
   209  ```yaml
   210  jobs:
   211    - name: local
   212      url: http://localhost:9600
   213  
   214    - name: remote
   215      url: http://192.0.2.1:9600
   216  
   217  ```
   218  </details>
   219  
   220  
   221  
   222  ## Troubleshooting
   223  
   224  ### Debug Mode
   225  
   226  To troubleshoot issues with the `logstash` collector, run the `go.d.plugin` with the debug option enabled. The output
   227  should give you clues as to why the collector isn't working.
   228  
   229  - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on
   230    your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.
   231  
   232    ```bash
   233    cd /usr/libexec/netdata/plugins.d/
   234    ```
   235  
   236  - Switch to the `netdata` user.
   237  
   238    ```bash
   239    sudo -u netdata -s
   240    ```
   241  
   242  - Run the `go.d.plugin` to debug the collector:
   243  
   244    ```bash
   245    ./go.d.plugin -d -m logstash
   246    ```
   247  
   248