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