github.com/netdata/go.d.plugin@v0.58.1/modules/powerdns/integrations/powerdns_authoritative_server.md (about) 1 <!--startmeta 2 custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/powerdns/README.md" 3 meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/powerdns/metadata.yaml" 4 sidebar_label: "PowerDNS Authoritative Server" 5 learn_status: "Published" 6 learn_rel_path: "Data Collection/DNS and DHCP 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 # PowerDNS Authoritative Server 12 13 14 <img src="https://netdata.cloud/img/powerdns.svg" width="150"/> 15 16 17 Plugin: go.d.plugin 18 Module: powerdns 19 20 <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" /> 21 22 ## Overview 23 24 This collector monitors PowerDNS Authoritative Server instances. 25 It collects metrics from [the internal webserver](https://doc.powerdns.com/authoritative/http-api/index.html#webserver). 26 27 Used endpoints: 28 29 - [`/api/v1/servers/localhost/statistics`](https://doc.powerdns.com/authoritative/http-api/statistics.html) 30 31 32 33 34 This collector is supported on all platforms. 35 36 This collector supports collecting metrics from multiple instances of this integration, including remote instances. 37 38 39 ### Default Behavior 40 41 #### Auto-Detection 42 43 This integration doesn't support auto-detection. 44 45 #### Limits 46 47 The default configuration for this integration does not impose any limits on data collection. 48 49 #### Performance Impact 50 51 The default configuration for this integration is not expected to impose a significant performance impact on the system. 52 53 54 ## Metrics 55 56 Metrics grouped by *scope*. 57 58 The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. 59 60 61 62 ### Per PowerDNS Authoritative Server instance 63 64 These metrics refer to the entire monitored application. 65 66 This scope has no labels. 67 68 Metrics: 69 70 | Metric | Dimensions | Unit | 71 |:------|:----------|:----| 72 | powerdns.questions_in | udp, tcp | questions/s | 73 | powerdns.questions_out | udp, tcp | questions/s | 74 | powerdns.cache_usage | query-cache-hit, query-cache-miss, packetcache-hit, packetcache-miss | events/s | 75 | powerdns.cache_size | query-cache, packet-cache, key-cache, meta-cache | entries | 76 | powerdns.latency | latency | microseconds | 77 78 79 80 ## Alerts 81 82 There are no alerts configured by default for this integration. 83 84 85 ## Setup 86 87 ### Prerequisites 88 89 #### Enable webserver 90 91 Follow [webserver](https://doc.powerdns.com/authoritative/http-api/index.html#webserver) documentation. 92 93 94 #### Enable HTTP API 95 96 Follow [HTTP API](https://doc.powerdns.com/authoritative/http-api/index.html#enabling-the-api) documentation. 97 98 99 100 ### Configuration 101 102 #### File 103 104 The configuration file name for this integration is `go.d/powerdns.conf`. 105 106 107 You can edit the configuration file using the `edit-config` script from the 108 Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/configure/nodes.md#the-netdata-config-directory). 109 110 ```bash 111 cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata 112 sudo ./edit-config go.d/powerdns.conf 113 ``` 114 #### Options 115 116 The following options can be defined globally: update_every, autodetection_retry. 117 118 119 <details><summary>Config options</summary> 120 121 | Name | Description | Default | Required | 122 |:----|:-----------|:-------|:--------:| 123 | update_every | Data collection frequency. | 1 | no | 124 | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no | 125 | url | Server URL. | http://127.0.0.1:8081 | yes | 126 | timeout | HTTP request timeout. | 1 | no | 127 | username | Username for basic HTTP authentication. | | no | 128 | password | Password for basic HTTP authentication. | | no | 129 | proxy_url | Proxy URL. | | no | 130 | proxy_username | Username for proxy basic HTTP authentication. | | no | 131 | proxy_password | Password for proxy basic HTTP authentication. | | no | 132 | method | HTTP request method. | GET | no | 133 | body | HTTP request body. | | no | 134 | headers | HTTP request headers. | | no | 135 | not_follow_redirects | Redirect handling policy. Controls whether the client follows redirects. | no | no | 136 | tls_skip_verify | Server certificate chain and hostname validation policy. Controls whether the client performs this check. | no | no | 137 | tls_ca | Certification authority that the client uses when verifying the server's certificates. | | no | 138 | tls_cert | Client TLS certificate. | | no | 139 | tls_key | Client TLS key. | | no | 140 141 </details> 142 143 #### Examples 144 145 ##### Basic 146 147 An example configuration. 148 149 <details><summary>Config</summary> 150 151 ```yaml 152 jobs: 153 - name: local 154 url: http://127.0.0.1:8081 155 156 ``` 157 </details> 158 159 ##### HTTP authentication 160 161 Basic HTTP authentication. 162 163 <details><summary>Config</summary> 164 165 ```yaml 166 jobs: 167 - name: local 168 url: http://127.0.0.1:8081 169 username: admin 170 password: password 171 172 ``` 173 </details> 174 175 ##### Multi-instance 176 177 > **Note**: When you define multiple jobs, their names must be unique. 178 179 Local and remote instances. 180 181 182 <details><summary>Config</summary> 183 184 ```yaml 185 jobs: 186 - name: local 187 url: http://127.0.0.1:8081 188 189 - name: remote 190 url: http://203.0.113.0:8081 191 192 ``` 193 </details> 194 195 196 197 ## Troubleshooting 198 199 ### Debug Mode 200 201 To troubleshoot issues with the `powerdns` collector, run the `go.d.plugin` with the debug option enabled. The output 202 should give you clues as to why the collector isn't working. 203 204 - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on 205 your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. 206 207 ```bash 208 cd /usr/libexec/netdata/plugins.d/ 209 ``` 210 211 - Switch to the `netdata` user. 212 213 ```bash 214 sudo -u netdata -s 215 ``` 216 217 - Run the `go.d.plugin` to debug the collector: 218 219 ```bash 220 ./go.d.plugin -d -m powerdns 221 ``` 222 223