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