github.com/netdata/go.d.plugin@v0.58.1/modules/isc_dhcpd/integrations/isc_dhcp.md (about) 1 <!--startmeta 2 custom_edit_url: "https://github.com/netdata/go.d.plugin/edit/master/modules/isc_dhcpd/README.md" 3 meta_yaml: "https://github.com/netdata/go.d.plugin/edit/master/modules/isc_dhcpd/metadata.yaml" 4 sidebar_label: "ISC DHCP" 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 # ISC DHCP 12 13 14 <img src="https://netdata.cloud/img/isc.png" width="150"/> 15 16 17 Plugin: go.d.plugin 18 Module: isc_dhcpd 19 20 <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" /> 21 22 ## Overview 23 24 This collector monitors ISC DHCP lease usage by reading the DHCP client lease database (dhcpd.leases). 25 26 27 28 29 This collector is supported on all platforms. 30 31 This collector supports collecting metrics from multiple instances of this integration, including remote instances. 32 33 34 ### Default Behavior 35 36 #### Auto-Detection 37 38 This integration doesn't support auto-detection. 39 40 #### Limits 41 42 The default configuration for this integration does not impose any limits on data collection. 43 44 #### Performance Impact 45 46 The default configuration for this integration is not expected to impose a significant performance impact on the system. 47 48 49 ## Metrics 50 51 Metrics grouped by *scope*. 52 53 The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. 54 55 56 57 ### Per ISC DHCP instance 58 59 These metrics refer to the entire monitored application. 60 61 This scope has no labels. 62 63 Metrics: 64 65 | Metric | Dimensions | Unit | 66 |:------|:----------|:----| 67 | isc_dhcpd.active_leases_total | active | leases | 68 | isc_dhcpd.pool_active_leases | a dimension per DHCP pool | leases | 69 | isc_dhcpd.pool_utilization | a dimension per DHCP pool | percentage | 70 71 72 73 ## Alerts 74 75 There are no alerts configured by default for this integration. 76 77 78 ## Setup 79 80 ### Prerequisites 81 82 No action required. 83 84 ### Configuration 85 86 #### File 87 88 The configuration file name for this integration is `go.d/isc_dhcpd.conf`. 89 90 91 You can edit the configuration file using the `edit-config` script from the 92 Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/configure/nodes.md#the-netdata-config-directory). 93 94 ```bash 95 cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata 96 sudo ./edit-config go.d/isc_dhcpd.conf 97 ``` 98 #### Options 99 100 The following options can be defined globally: update_every, autodetection_retry. 101 102 103 <details><summary>Config options</summary> 104 105 | Name | Description | Default | Required | 106 |:----|:-----------|:-------|:--------:| 107 | update_every | Data collection frequency. | 1 | no | 108 | autodetection_retry | Recheck interval in seconds. Zero means no recheck will be scheduled. | 0 | no | 109 | leases_path | Path to DHCP client lease database. | /var/lib/dhcp/dhcpd.leases | no | 110 | pools | List of IP pools to monitor. | | yes | 111 112 ##### pools 113 114 List of IP pools to monitor. 115 116 - IP range syntax: see [supported formats](https://github.com/netdata/go.d.plugin/tree/master/pkg/iprange#supported-formats). 117 - Syntax: 118 119 ```yaml 120 pools: 121 - name: "POOL_NAME1" 122 networks: "SPACE SEPARATED LIST OF IP RANGES" 123 - name: "POOL_NAME2" 124 networks: "SPACE SEPARATED LIST OF IP RANGES" 125 ``` 126 127 128 </details> 129 130 #### Examples 131 132 ##### Basic 133 134 A basic example configuration. 135 136 <details><summary>Config</summary> 137 138 ```yaml 139 jobs: 140 - name: local 141 pools: 142 - name: lan 143 networks: "192.168.0.0/24 192.168.1.0/24 192.168.2.0/24" 144 - name: wifi 145 networks: "10.0.0.0/24" 146 147 ``` 148 </details> 149 150 151 152 ## Troubleshooting 153 154 ### Debug Mode 155 156 To troubleshoot issues with the `isc_dhcpd` collector, run the `go.d.plugin` with the debug option enabled. The output 157 should give you clues as to why the collector isn't working. 158 159 - Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on 160 your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. 161 162 ```bash 163 cd /usr/libexec/netdata/plugins.d/ 164 ``` 165 166 - Switch to the `netdata` user. 167 168 ```bash 169 sudo -u netdata -s 170 ``` 171 172 - Run the `go.d.plugin` to debug the collector: 173 174 ```bash 175 ./go.d.plugin -d -m isc_dhcpd 176 ``` 177 178