| 1 | plugin_name: go.d.plugin |
| 2 | modules: |
| 3 | - meta: |
| 4 | id: collector-go.d.plugin-nsd |
| 5 | plugin_name: go.d.plugin |
| 6 | module_name: nsd |
| 7 | monitored_instance: |
| 8 | name: NSD |
| 9 | link: "https://nsd.docs.nlnetlabs.nl/en/latest" |
| 10 | icon_filename: 'nsd.svg' |
| 11 | categories: |
| 12 | - data-collection.networking |
| 13 | keywords: |
| 14 | - nsd |
| 15 | - dns |
| 16 | related_resources: |
| 17 | integrations: |
| 18 | list: [ ] |
| 19 | info_provided_to_referring_integrations: |
| 20 | description: "" |
| 21 | overview: |
| 22 | data_collection: |
| 23 | metrics_description: > |
| 24 | This collector monitors NSD statistics like queries, zones, protocols, query types and more. |
| 25 | It relies on the [`nsd-control`](https://nsd.docs.nlnetlabs.nl/en/latest/manpages/nsd-control.html) CLI tool but avoids directly executing the binary. |
| 26 | Instead, it utilizes `ndsudo`, a Netdata helper specifically designed to run privileged commands securely within the Netdata environment. |
| 27 | This approach eliminates the need to use `sudo`, improving security and potentially simplifying permission management. |
| 28 | |
| 29 | Executed commands: |
| 30 | |
| 31 | - `nsd-control stats_noreset` |
| 32 | method_description: "" |
| 33 | supported_platforms: |
| 34 | include: [ Linux, BSD, macOS ] |
| 35 | exclude: [ ] |
| 36 | multi_instance: false |
| 37 | additional_permissions: |
| 38 | description: "" |
| 39 | default_behavior: |
| 40 | auto_detection: |
| 41 | description: "" |
| 42 | limits: |
| 43 | description: "" |
| 44 | performance_impact: |
| 45 | description: "" |
| 46 | setup: |
| 47 | prerequisites: |
| 48 | list: [ ] |
| 49 | configuration: |
| 50 | file: |
| 51 | name: go.d/nsd.conf |
| 52 | options: |
| 53 | description: | |
| 54 | The following options can be defined globally: update_every. |
| 55 | folding: |
| 56 | title: Config options |
| 57 | enabled: true |
| 58 | list: |
| 59 | - name: update_every |
| 60 | description: Data collection frequency. |
| 61 | default_value: 10 |
| 62 | required: false |
| 63 | - name: timeout |
| 64 | description: nsd-control binary execution timeout. |
| 65 | default_value: 2 |
| 66 | required: false |
| 67 | examples: |
| 68 | folding: |
| 69 | title: Config |
| 70 | enabled: true |
| 71 | list: |
| 72 | - name: Custom update_every |
| 73 | description: Allows you to override the default data collection interval. |
| 74 | config: | |
| 75 | jobs: |
| 76 | - name: nsd |
| 77 | update_every: 5 # Collect logical volume statistics every 5 seconds |
| 78 | troubleshooting: |
| 79 | problems: |
| 80 | list: [ ] |
| 81 | alerts: [ ] |
| 82 | metrics: |
| 83 | folding: |
| 84 | title: Metrics |
| 85 | enabled: false |
| 86 | description: "" |
| 87 | availability: [ ] |
| 88 | scopes: |
| 89 | - name: global |
| 90 | description: These metrics refer to the the entire monitored application. |
| 91 | labels: [ ] |
| 92 | metrics: |
| 93 | - name: nsd.queries |
| 94 | description: Queries |
| 95 | unit: 'queries/s' |
| 96 | chart_type: line |
| 97 | dimensions: |
| 98 | - name: queries |
| 99 | - name: nsd.queries_by_type |
| 100 | description: Queries Type |
| 101 | unit: 'queries/s' |
| 102 | chart_type: stacked |
| 103 | dimensions: |
| 104 | - name: "A" |
| 105 | - name: "NS" |
| 106 | - name: "MD" |
| 107 | - name: "MF" |
| 108 | - name: "CNAME" |
| 109 | - name: "SOA" |
| 110 | - name: "MB" |
| 111 | - name: "MG" |
| 112 | - name: "MR" |
| 113 | - name: "NULL" |
| 114 | - name: "WKS" |
| 115 | - name: "PTR" |
| 116 | - name: "HINFO" |
| 117 | - name: "MINFO" |
| 118 | - name: "MX" |
| 119 | - name: "TXT" |
| 120 | - name: "RP" |
| 121 | - name: "AFSDB" |
| 122 | - name: "X25" |
| 123 | - name: "ISDN" |
| 124 | - name: "RT" |
| 125 | - name: "NSAP" |
| 126 | - name: "SIG" |
| 127 | - name: "KEY" |
| 128 | - name: "PX" |
| 129 | - name: "AAAA" |
| 130 | - name: "LOC" |
| 131 | - name: "NXT" |
| 132 | - name: "SRV" |
| 133 | - name: "NAPTR" |
| 134 | - name: "KX" |
| 135 | - name: "CERT" |
| 136 | - name: "DNAME" |
| 137 | - name: "OPT" |
| 138 | - name: "APL" |
| 139 | - name: "DS" |
| 140 | - name: "SSHFP" |
| 141 | - name: "IPSECKEY" |
| 142 | - name: "RRSIG" |
| 143 | - name: "NSEC" |
| 144 | - name: "DNSKEY" |
| 145 | - name: "DHCID" |
| 146 | - name: "NSEC3" |
| 147 | - name: "NSEC3PARAM" |
| 148 | - name: "TLSA" |
| 149 | - name: "SMIMEA" |
| 150 | - name: "CDS" |
| 151 | - name: "CDNSKEY" |
| 152 | - name: "OPENPGPKEY" |
| 153 | - name: "CSYNC" |
| 154 | - name: "ZONEMD" |
| 155 | - name: "SVCB" |
| 156 | - name: "HTTPS" |
| 157 | - name: "SPF" |
| 158 | - name: "NID" |
| 159 | - name: "L32" |
| 160 | - name: "L64" |
| 161 | - name: "LP" |
| 162 | - name: "EUI48" |
| 163 | - name: "EUI64" |
| 164 | - name: "URI" |
| 165 | - name: "CAA" |
| 166 | - name: "AVC" |
| 167 | - name: "DLV" |
| 168 | - name: "IXFR" |
| 169 | - name: "AXFR" |
| 170 | - name: "MAILB" |
| 171 | - name: "MAILA" |
| 172 | - name: "ANY" |
| 173 | - name: nsd.queries_by_opcode |
| 174 | description: Queries Opcode |
| 175 | unit: 'queries/s' |
| 176 | chart_type: stacked |
| 177 | dimensions: |
| 178 | - name: "QUERY" |
| 179 | - name: "IQUERY" |
| 180 | - name: "STATUS" |
| 181 | - name: "NOTIFY" |
| 182 | - name: "UPDATE" |
| 183 | - name: "OTHER" |
| 184 | - name: nsd.queries_by_class |
| 185 | description: Queries Class |
| 186 | unit: 'queries/s' |
| 187 | chart_type: stacked |
| 188 | dimensions: |
| 189 | - name: "IN" |
| 190 | - name: "CS" |
| 191 | - name: "CH" |
| 192 | - name: "HS" |
| 193 | - name: nsd.queries_by_protocol |
| 194 | description: Queries Protocol |
| 195 | unit: 'queries/s' |
| 196 | chart_type: stacked |
| 197 | dimensions: |
| 198 | - name: "udp" |
| 199 | - name: "udp6" |
| 200 | - name: "tcp" |
| 201 | - name: "tcp6" |
| 202 | - name: "tls" |
| 203 | - name: "tls6" |
| 204 | - name: nsd.answers_by_rcode |
| 205 | description: Answers Rcode |
| 206 | unit: 'answers/s' |
| 207 | chart_type: stacked |
| 208 | dimensions: |
| 209 | - name: "NOERROR" |
| 210 | - name: "FORMERR" |
| 211 | - name: "SERVFAIL" |
| 212 | - name: "NXDOMAIN" |
| 213 | - name: "NOTIMP" |
| 214 | - name: "REFUSED" |
| 215 | - name: "YXDOMAIN" |
| 216 | - name: "YXRRSET" |
| 217 | - name: "NXRRSET" |
| 218 | - name: "NOTAUTH" |
| 219 | - name: "NOTZONE" |
| 220 | - name: "RCODE11" |
| 221 | - name: "RCODE12" |
| 222 | - name: "RCODE13" |
| 223 | - name: "RCODE14" |
| 224 | - name: "RCODE15" |
| 225 | - name: "BADVERS" |
| 226 | - name: nsd.errors |
| 227 | description: Errors |
| 228 | unit: 'errors/s' |
| 229 | chart_type: line |
| 230 | dimensions: |
| 231 | - name: "query" |
| 232 | - name: "answer" |
| 233 | - name: nsd.drops |
| 234 | description: Drops |
| 235 | unit: 'drops/s' |
| 236 | chart_type: line |
| 237 | dimensions: |
| 238 | - name: "query" |
| 239 | - name: nsd.zones |
| 240 | description: Zones |
| 241 | unit: 'zones' |
| 242 | chart_type: line |
| 243 | dimensions: |
| 244 | - name: "master" |
| 245 | - name: "slave" |
| 246 | - name: nsd.zone_transfers_requests |
| 247 | description: Zone Transfers |
| 248 | unit: 'requests/s' |
| 249 | chart_type: line |
| 250 | dimensions: |
| 251 | - name: "AXFR" |
| 252 | - name: "IXFR" |
| 253 | - name: nsd.zone_transfer_memory |
| 254 | description: Zone Transfer Memory |
| 255 | unit: 'bytes' |
| 256 | chart_type: line |
| 257 | dimensions: |
| 258 | - name: "used" |
| 259 | - name: nsd.database_size |
| 260 | description: Database Size |
| 261 | unit: 'bytes' |
| 262 | chart_type: line |
| 263 | dimensions: |
| 264 | - name: "disk" |
| 265 | - name: "mem" |
| 266 | - name: nsd.uptime |
| 267 | description: Uptime |
| 268 | unit: 'seconds' |
| 269 | chart_type: line |
| 270 | dimensions: |
| 271 | - name: "uptime" |