github.com/netdata/go.d.plugin@v0.58.1/modules/supervisord/integrations/supervisor.md (about) 1 <!--startmeta 2 custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/supervisord/README.md" 3 meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/supervisord/metadata.yaml" 4 sidebar_label: "Supervisor" 5 learn_status: "Published" 6 learn_rel_path: "Data Collection/Processes and System Services" 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 # Supervisor 12 13 14 <img src="https://netdata.cloud/img/supervisord.png" width="150"/> 15 16 17 Plugin: go.d.plugin 18 Module: supervisord 19 20 <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" /> 21 22 ## Overview 23 24 This collector monitors Supervisor instances. 25 26 It can collect metrics from: 27 28 - [unix socket](http://supervisord.org/configuration.html?highlight=unix_http_server#unix-http-server-section-values) 29 - [internal http server](http://supervisord.org/configuration.html?highlight=unix_http_server#inet-http-server-section-settings) 30 31 Used methods: 32 33 - [`supervisor.getAllProcessInfo`](http://supervisord.org/api.html#supervisor.rpcinterface.SupervisorNamespaceRPCInterface.getAllProcessInfo) 34 35 36 37 38 This collector is supported on all platforms. 39 40 This collector supports collecting metrics from multiple instances of this integration, including remote instances. 41 42 43 ### Default Behavior 44 45 #### Auto-Detection 46 47 This integration doesn't support auto-detection. 48 49 #### Limits 50 51 The default configuration for this integration does not impose any limits on data collection. 52 53 #### Performance Impact 54 55 The default configuration for this integration is not expected to impose a significant performance impact on the system. 56 57 58 ## Metrics 59 60 Metrics grouped by *scope*. 61 62 The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. 63 64 65 66 ### Per Supervisor instance 67 68 These metrics refer to the entire monitored application. 69 70 This scope has no labels. 71 72 Metrics: 73 74 | Metric | Dimensions | Unit | 75 |:------|:----------|:----| 76 | supervisord.summary_processes | running, non-running | processes | 77 78 ### Per process group 79 80 These metrics refer to the process group. 81 82 This scope has no labels. 83 84 Metrics: 85 86 | Metric | Dimensions | Unit | 87 |:------|:----------|:----| 88 | supervisord.processes | running, non-running | processes | 89 | supervisord.process_state_code | a dimension per process | code | 90 | supervisord.process_exit_status | a dimension per process | exit status | 91 | supervisord.process_uptime | a dimension per process | seconds | 92 | supervisord.process_downtime | a dimension per process | 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/supervisord.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/supervisord.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. | 1 | no | 131 | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no | 132 | url | Server URL. | http://127.0.0.1:9001/RPC2 | yes | 133 | timeout | System bus requests timeout. | 1 | no | 134 135 </details> 136 137 #### Examples 138 139 ##### HTTP 140 141 Collect metrics via HTTP. 142 143 <details><summary>Config</summary> 144 145 ```yaml 146 jobs: 147 - name: local 148 url: 'http://127.0.0.1:9001/RPC2' 149 150 ``` 151 </details> 152 153 ##### Socket 154 155 Collect metrics via Unix socket. 156 157 <details><summary>Config</summary> 158 159 ```yaml 160 - name: local 161 url: 'unix:///run/supervisor.sock' 162 163 ``` 164 </details> 165 166 ##### Multi-instance 167 168 > **Note**: When you define multiple jobs, their names must be unique. 169 170 Collect metrics from local and remote instances. 171 172 173 <details><summary>Config</summary> 174 175 ```yaml 176 jobs: 177 - name: local 178 url: 'http://127.0.0.1:9001/RPC2' 179 180 - name: remote 181 url: 'http://192.0.2.1:9001/RPC2' 182 183 ``` 184 </details> 185 186 187 188 ## Troubleshooting 189 190 ### Debug Mode 191 192 To troubleshoot issues with the `supervisord` collector, run the `go.d.plugin` with the debug option enabled. The output 193 should give you clues as to why the collector isn't working. 194 195 - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on 196 your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. 197 198 ```bash 199 cd /usr/libexec/netdata/plugins.d/ 200 ``` 201 202 - Switch to the `netdata` user. 203 204 ```bash 205 sudo -u netdata -s 206 ``` 207 208 - Run the `go.d.plugin` to debug the collector: 209 210 ```bash 211 ./go.d.plugin -d -m supervisord 212 ``` 213 214