plugin_name: python.d.plugin modules: - meta: plugin_name: python.d.plugin module_name: openldap monitored_instance: name: OpenLDAP link: "https://www.openldap.org/" categories: - data-collection.authentication-and-authorization icon_filename: "statsd.png" related_resources: integrations: list: [] info_provided_to_referring_integrations: description: "" keywords: - openldap - RBAC - Directory access most_popular: false overview: data_collection: metrics_description: "This collector monitors OpenLDAP metrics about connections, operations, referrals and more." method_description: | Statistics are taken from the monitoring interface of a openLDAP (slapd) server supported_platforms: include: [] exclude: [] multi_instance: false additional_permissions: description: "" default_behavior: auto_detection: description: | This collector doesn't work until all the prerequisites are checked. limits: description: "" performance_impact: description: "" setup: prerequisites: list: - title: Configure the openLDAP server to expose metrics to monitor it. description: | Follow instructions from https://www.openldap.org/doc/admin24/monitoringslapd.html to activate monitoring interface. - title: Install python-ldap module description: | Install python ldap module 1. From pip package manager ```bash pip install ldap ``` 2. With apt package manager (in most deb based distros) ```bash apt-get install python-ldap ``` 3. With yum package manager (in most rpm based distros) ```bash yum install python-ldap ``` - title: Insert credentials for Netdata to access openLDAP server description: | Use the `ldappasswd` utility to set a password for the username you will use. configuration: file: name: "python.d/openldap.conf" options: description: | There are 2 sections: * Global variables * One or more JOBS that can define multiple different instances to monitor. The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values. Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition. Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified. folding: title: "Config options" enabled: true list: - name: update_every description: Sets the default data collection frequency. default_value: 5 required: false - name: priority description: Controls the order of charts at the netdata dashboard. default_value: 60000 required: false - name: autodetection_retry description: Sets the job re-check interval in seconds. default_value: 0 required: false - name: penalty description: Indicates whether to apply penalty to update_every in case of failures. default_value: yes required: false - name: name description: Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works. default_value: "" required: false - name: username description: The bind user with right to access monitor statistics default_value: "" required: true - name: password description: The password for the binded user default_value: "" required: true - name: server description: The listening address of the LDAP server. In case of TLS, use the hostname which the certificate is published for. default_value: "" required: true - name: port description: The listening port of the LDAP server. Change to 636 port in case of TLS connection. default_value: "389" required: true - name: use_tls description: Make True if a TLS connection is used over ldaps:// default_value: False required: false - name: use_start_tls description: Make True if a TLS connection is used over ldap:// default_value: False required: false - name: cert_check description: False if you want to ignore certificate check default_value: "True" required: true - name: timeout description: Seconds to timeout if no connection exist default_value: "" required: true examples: folding: enabled: true title: "Config" list: - name: Basic description: A basic example configuration. folding: enabled: false config: | username: "cn=admin" password: "pass" server: "localhost" port: "389" check_cert: True timeout: 1 troubleshooting: problems: list: [] alerts: [] metrics: folding: title: Metrics enabled: false description: "" availability: [] scopes: - name: global description: "These metrics refer to the entire monitored application." labels: [] metrics: - name: openldap.total_connections description: Total Connections unit: "connections/s" chart_type: line dimensions: - name: connections - name: openldap.traffic_stats description: Traffic unit: "KiB/s" chart_type: line dimensions: - name: sent - name: openldap.operations_status description: Operations Status unit: "ops/s" chart_type: line dimensions: - name: completed - name: initiated - name: openldap.referrals description: Referrals unit: "referrals/s" chart_type: line dimensions: - name: sent - name: openldap.entries description: Entries unit: "entries/s" chart_type: line dimensions: - name: sent - name: openldap.ldap_operations description: Operations unit: "ops/s" chart_type: line dimensions: - name: bind - name: search - name: unbind - name: add - name: delete - name: modify - name: compare - name: openldap.waiters description: Waiters unit: "waiters/s" chart_type: line dimensions: - name: write - name: read