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

     1  <!--startmeta
     2  custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/pika/README.md"
     3  meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/pika/metadata.yaml"
     4  sidebar_label: "Pika"
     5  learn_status: "Published"
     6  learn_rel_path: "Data Collection/Databases"
     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  # Pika
    12  
    13  
    14  <img src="https://netdata.cloud/img/pika.svg" width="150"/>
    15  
    16  
    17  Plugin: go.d.plugin
    18  Module: pika
    19  
    20  <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
    21  
    22  ## Overview
    23  
    24  This collector monitors Pika servers.
    25  
    26  It collects information and statistics about the server executing the following commands:
    27  
    28  - [`INFO ALL`](https://github.com/OpenAtomFoundation/pika/wiki/pika-info%E4%BF%A1%E6%81%AF%E8%AF%B4%E6%98%8E)
    29  
    30  
    31  
    32  
    33  This collector is supported on all platforms.
    34  
    35  This collector supports collecting metrics from multiple instances of this integration, including remote instances.
    36  
    37  
    38  ### Default Behavior
    39  
    40  #### Auto-Detection
    41  
    42  This integration doesn't support auto-detection.
    43  
    44  #### Limits
    45  
    46  The default configuration for this integration does not impose any limits on data collection.
    47  
    48  #### Performance Impact
    49  
    50  The default configuration for this integration is not expected to impose a significant performance impact on the system.
    51  
    52  
    53  ## Metrics
    54  
    55  Metrics grouped by *scope*.
    56  
    57  The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
    58  
    59  
    60  
    61  ### Per Pika instance
    62  
    63  These metrics refer to the entire monitored application.
    64  
    65  This scope has no labels.
    66  
    67  Metrics:
    68  
    69  | Metric | Dimensions | Unit |
    70  |:------|:----------|:----|
    71  | pika.connections | accepted | connections |
    72  | pika.clients | connected | clients |
    73  | pika.memory | used | bytes |
    74  | pika.connected_replicas | connected | replicas |
    75  | pika.commands | processed | commands/s |
    76  | pika.commands_calls | a dimension per command | calls/s |
    77  | pika.database_strings_keys | a dimension per database | keys |
    78  | pika.database_strings_expires_keys | a dimension per database | keys |
    79  | pika.database_strings_invalid_keys | a dimension per database | keys |
    80  | pika.database_hashes_keys | a dimension per database | keys |
    81  | pika.database_hashes_expires_keys | a dimension per database | keys |
    82  | pika.database_hashes_invalid_keys | a dimension per database | keys |
    83  | pika.database_lists_keys | a dimension per database | keys |
    84  | pika.database_lists_expires_keys | a dimension per database | keys |
    85  | pika.database_lists_invalid_keys | a dimension per database | keys |
    86  | pika.database_zsets_keys | a dimension per database | keys |
    87  | pika.database_zsets_expires_keys | a dimension per database | keys |
    88  | pika.database_zsets_invalid_keys | a dimension per database | keys |
    89  | pika.database_sets_keys | a dimension per database | keys |
    90  | pika.database_sets_expires_keys | a dimension per database | keys |
    91  | pika.database_sets_invalid_keys | a dimension per database | keys |
    92  | pika.uptime | uptime | seconds |
    93  
    94  
    95  
    96  ## Alerts
    97  
    98  There are no alerts configured by default for this integration.
    99  
   100  
   101  ## Setup
   102  
   103  ### Prerequisites
   104  
   105  No action required.
   106  
   107  ### Configuration
   108  
   109  #### File
   110  
   111  The configuration file name for this integration is `go.d/pika.conf`.
   112  
   113  
   114  You can edit the configuration file using the `edit-config` script from the
   115  Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/configure/nodes.md#the-netdata-config-directory).
   116  
   117  ```bash
   118  cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
   119  sudo ./edit-config go.d/pika.conf
   120  ```
   121  #### Options
   122  
   123  The following options can be defined globally: update_every, autodetection_retry.
   124  
   125  
   126  <details><summary>Config options</summary>
   127  
   128  | Name | Description | Default | Required |
   129  |:----|:-----------|:-------|:--------:|
   130  | update_every | Data collection frequency. | 5 | no |
   131  | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no |
   132  | address | Pika server address. | redis://@localhost:9221 | yes |
   133  | timeout | Dial (establishing new connections), read (socket reads) and write (socket writes) timeout in seconds. | 1 | no |
   134  | username | Username used for authentication. |  | no |
   135  | password | Password used for authentication. |  | no |
   136  | tls_skip_verify | Server certificate chain and hostname validation policy. Controls whether the client performs this check. | no | no |
   137  | tls_ca | Certificate authority that client use when verifying server certificates. |  | no |
   138  | tls_cert | Client tls certificate. |  | no |
   139  | tls_key | Client tls key. |  | no |
   140  
   141  </details>
   142  
   143  #### Examples
   144  
   145  ##### TCP socket
   146  
   147  An example configuration.
   148  
   149  <details><summary>Config</summary>
   150  
   151  ```yaml
   152  jobs:
   153    - name: local
   154      address: 'redis://@localhost:9221'
   155  
   156  ```
   157  </details>
   158  
   159  ##### TCP socket with password
   160  
   161  An example configuration.
   162  
   163  <details><summary>Config</summary>
   164  
   165  ```yaml
   166  jobs:
   167    - name: local
   168      address: 'redis://:password@127.0.0.1:9221'
   169  
   170  ```
   171  </details>
   172  
   173  ##### Multi-instance
   174  
   175  > **Note**: When you define multiple jobs, their names must be unique.
   176  
   177  Local and remote instances.
   178  
   179  
   180  <details><summary>Config</summary>
   181  
   182  ```yaml
   183  jobs:
   184    - name: local
   185      address: 'redis://:password@127.0.0.1:9221'
   186  
   187    - name: remote
   188      address: 'redis://user:password@203.0.113.0:9221'
   189  
   190  ```
   191  </details>
   192  
   193  
   194  
   195  ## Troubleshooting
   196  
   197  ### Debug Mode
   198  
   199  To troubleshoot issues with the `pika` collector, run the `go.d.plugin` with the debug option enabled. The output
   200  should give you clues as to why the collector isn't working.
   201  
   202  - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on
   203    your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.
   204  
   205    ```bash
   206    cd /usr/libexec/netdata/plugins.d/
   207    ```
   208  
   209  - Switch to the `netdata` user.
   210  
   211    ```bash
   212    sudo -u netdata -s
   213    ```
   214  
   215  - Run the `go.d.plugin` to debug the collector:
   216  
   217    ```bash
   218    ./go.d.plugin -d -m pika
   219    ```
   220  
   221