github.com/netdata/go.d.plugin@v0.58.1/modules/rabbitmq/integrations/rabbitmq.md (about) 1 <!--startmeta 2 custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/rabbitmq/README.md" 3 meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/rabbitmq/metadata.yaml" 4 sidebar_label: "RabbitMQ" 5 learn_status: "Published" 6 learn_rel_path: "Data Collection/Message Brokers" 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 # RabbitMQ 12 13 14 <img src="https://netdata.cloud/img/rabbitmq.svg" width="150"/> 15 16 17 Plugin: go.d.plugin 18 Module: rabbitmq 19 20 <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" /> 21 22 ## Overview 23 24 This collector monitors RabbitMQ instances. 25 26 It collects data using an HTTP-based API provided by the [management plugin](https://www.rabbitmq.com/management.html). 27 The following endpoints are used: 28 29 - `/api/overview` 30 - `/api/node/{node_name}` 31 - `/api/vhosts` 32 - `/api/queues` (disabled by default) 33 34 35 36 37 This collector is supported on all platforms. 38 39 This collector supports collecting metrics from multiple instances of this integration, including remote instances. 40 41 42 ### Default Behavior 43 44 #### Auto-Detection 45 46 This integration doesn't support auto-detection. 47 48 #### Limits 49 50 The default configuration for this integration does not impose any limits on data collection. 51 52 #### Performance Impact 53 54 The default configuration for this integration is not expected to impose a significant performance impact on the system. 55 56 57 ## Metrics 58 59 Metrics grouped by *scope*. 60 61 The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. 62 63 64 65 ### Per RabbitMQ instance 66 67 These metrics refer to the entire monitored application. 68 69 This scope has no labels. 70 71 Metrics: 72 73 | Metric | Dimensions | Unit | 74 |:------|:----------|:----| 75 | rabbitmq.messages_count | ready, unacknowledged | messages | 76 | rabbitmq.messages_rate | ack, publish, publish_in, publish_out, confirm, deliver, deliver_no_ack, get, get_no_ack, deliver_get, redeliver, return_unroutable | messages/s | 77 | rabbitmq.objects_count | channels, consumers, connections, queues, exchanges | messages | 78 | rabbitmq.connection_churn_rate | created, closed | operations/s | 79 | rabbitmq.channel_churn_rate | created, closed | operations/s | 80 | rabbitmq.queue_churn_rate | created, deleted, declared | operations/s | 81 | rabbitmq.file_descriptors_count | available, used | fd | 82 | rabbitmq.sockets_count | available, used | sockets | 83 | rabbitmq.erlang_processes_count | available, used | processes | 84 | rabbitmq.erlang_run_queue_processes_count | length | processes | 85 | rabbitmq.memory_usage | used | bytes | 86 | rabbitmq.disk_space_free_size | free | bytes | 87 88 ### Per vhost 89 90 These metrics refer to the virtual host. 91 92 Labels: 93 94 | Label | Description | 95 |:-----------|:----------------| 96 | vhost | virtual host name | 97 98 Metrics: 99 100 | Metric | Dimensions | Unit | 101 |:------|:----------|:----| 102 | rabbitmq.vhost_messages_count | ready, unacknowledged | messages | 103 | rabbitmq.vhost_messages_rate | ack, publish, publish_in, publish_out, confirm, deliver, deliver_no_ack, get, get_no_ack, deliver_get, redeliver, return_unroutable | messages/s | 104 105 ### Per queue 106 107 These metrics refer to the virtual host queue. 108 109 Labels: 110 111 | Label | Description | 112 |:-----------|:----------------| 113 | vhost | virtual host name | 114 | queue | queue name | 115 116 Metrics: 117 118 | Metric | Dimensions | Unit | 119 |:------|:----------|:----| 120 | rabbitmq.queue_messages_count | ready, unacknowledged, paged_out, persistent | messages | 121 | rabbitmq.queue_messages_rate | ack, publish, publish_in, publish_out, confirm, deliver, deliver_no_ack, get, get_no_ack, deliver_get, redeliver, return_unroutable | messages/s | 122 123 124 125 ## Alerts 126 127 There are no alerts configured by default for this integration. 128 129 130 ## Setup 131 132 ### Prerequisites 133 134 #### Enable management plugin. 135 136 The management plugin is included in the RabbitMQ distribution, but disabled. 137 To enable see [Management Plugin](https://www.rabbitmq.com/management.html#getting-started) documentation. 138 139 140 141 ### Configuration 142 143 #### File 144 145 The configuration file name for this integration is `go.d/rabbitmq.conf`. 146 147 148 You can edit the configuration file using the `edit-config` script from the 149 Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/configure/nodes.md#the-netdata-config-directory). 150 151 ```bash 152 cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata 153 sudo ./edit-config go.d/rabbitmq.conf 154 ``` 155 #### Options 156 157 The following options can be defined globally: update_every, autodetection_retry. 158 159 160 <details><summary>Config options</summary> 161 162 | Name | Description | Default | Required | 163 |:----|:-----------|:-------|:--------:| 164 | update_every | Data collection frequency. | 1 | no | 165 | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no | 166 | url | Server URL. | http://localhost:15672 | yes | 167 | collect_queues_metrics | Collect stats per vhost per queues. Enabling this can introduce serious overhead on both Netdata and RabbitMQ if many queues are configured and used. | no | no | 168 | timeout | HTTP request timeout. | 1 | no | 169 | username | Username for basic HTTP authentication. | | no | 170 | password | Password for basic HTTP authentication. | | no | 171 | proxy_url | Proxy URL. | | no | 172 | proxy_username | Username for proxy basic HTTP authentication. | | no | 173 | proxy_password | Password for proxy basic HTTP authentication. | | no | 174 | method | HTTP request method. | GET | no | 175 | body | HTTP request body. | | no | 176 | headers | HTTP request headers. | | no | 177 | not_follow_redirects | Redirect handling policy. Controls whether the client follows redirects. | no | no | 178 | tls_skip_verify | Server certificate chain and hostname validation policy. Controls whether the client performs this check. | no | no | 179 | tls_ca | Certification authority that the client uses when verifying the server's certificates. | | no | 180 | tls_cert | Client TLS certificate. | | no | 181 | tls_key | Client TLS key. | | no | 182 183 </details> 184 185 #### Examples 186 187 ##### Basic 188 189 An example configuration. 190 191 <details><summary>Config</summary> 192 193 ```yaml 194 jobs: 195 - name: local 196 url: http://127.0.0.1:15672 197 198 ``` 199 </details> 200 201 ##### Basic HTTP auth 202 203 Local server with basic HTTP authentication. 204 205 <details><summary>Config</summary> 206 207 ```yaml 208 jobs: 209 - name: local 210 url: http://127.0.0.1:15672 211 username: admin 212 password: password 213 214 ``` 215 </details> 216 217 ##### Multi-instance 218 219 > **Note**: When you define multiple jobs, their names must be unique. 220 221 Local and remote instances. 222 223 224 <details><summary>Config</summary> 225 226 ```yaml 227 jobs: 228 - name: local 229 url: http://127.0.0.1:15672 230 231 - name: remote 232 url: http://192.0.2.0:15672 233 234 ``` 235 </details> 236 237 238 239 ## Troubleshooting 240 241 ### Debug Mode 242 243 To troubleshoot issues with the `rabbitmq` collector, run the `go.d.plugin` with the debug option enabled. The output 244 should give you clues as to why the collector isn't working. 245 246 - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on 247 your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. 248 249 ```bash 250 cd /usr/libexec/netdata/plugins.d/ 251 ``` 252 253 - Switch to the `netdata` user. 254 255 ```bash 256 sudo -u netdata -s 257 ``` 258 259 - Run the `go.d.plugin` to debug the collector: 260 261 ```bash 262 ./go.d.plugin -d -m rabbitmq 263 ``` 264 265