summaryrefslogtreecommitdiffstats
path: root/collectors/python.d.plugin/fail2ban
diff options
context:
space:
mode:
authorAndrew Maguire <andrewm4894@gmail.com>2023-07-26 12:26:37 +0100
committerGitHub <noreply@github.com>2023-07-26 12:26:37 +0100
commit03fd9e7ab35e726f25f83d2b733b0feaaf16bc72 (patch)
treeefc65502312a800ec2e080788ca8e28ad69fbf46 /collectors/python.d.plugin/fail2ban
parent674aef9fc465996b17bae4a6580abf539bd50471 (diff)
Update metadata.yaml for some python collectors (#15510)
* Update metadata.yaml for some python collectors --------- Co-authored-by: Fotis Voutsas <fotis@netdata.cloud>
Diffstat (limited to 'collectors/python.d.plugin/fail2ban')
-rw-r--r--collectors/python.d.plugin/fail2ban/metadata.yaml176
-rw-r--r--collectors/python.d.plugin/fail2ban/metrics.csv2
2 files changed, 137 insertions, 41 deletions
diff --git a/collectors/python.d.plugin/fail2ban/metadata.yaml b/collectors/python.d.plugin/fail2ban/metadata.yaml
index b2514a38d0..549f779d1a 100644
--- a/collectors/python.d.plugin/fail2ban/metadata.yaml
+++ b/collectors/python.d.plugin/fail2ban/metadata.yaml
@@ -1,54 +1,149 @@
+# yamllint disable rule:line-length
+---
meta:
plugin_name: python.d.plugin
module_name: fail2ban
monitored_instance:
name: Fail2ban
- link: ''
+ link: https://www.fail2ban.org/
categories:
- - data-collection.authentication-and-authorization
- icon_filename: 'fail2ban.png'
+ - data-collection.authentication-and-authorization
+ icon_filename: "fail2ban.png"
related_resources:
integrations:
list: []
info_provided_to_referring_integrations:
- description: ''
- keywords: []
+ description: ""
+ keywords:
+ - fail2ban
+ - security
+ - authentication
+ - authorization
most_popular: false
overview:
data_collection:
- metrics_description: 'Monitor Fail2ban performance for prime intrusion prevention operations. Monitor ban counts, jail statuses, and failed login attempts to ensure robust network security.'
- method_description: ''
+ metrics_description: |
+ Monitor Fail2ban performance for prime intrusion prevention operations. Monitor ban counts, jail statuses, and failed login attempts to ensure robust network security.
+ method_description: |
+ It collects metrics through reading the default log and configuration files of fail2ban.
supported_platforms:
include: []
exclude: []
multi_instance: true
additional_permissions:
- description: ''
+ description: |
+ The `fail2ban.log` file must be readable by the user `netdata`.
+ - change the file ownership and access permissions.
+ - update `/etc/logrotate.d/fail2ban`` to persist the changes after rotating the log file.
+
+ To change the file ownership and access permissions, execute the following:
+
+ ```shell
+ sudo chown root:netdata /var/log/fail2ban.log
+ sudo chmod 640 /var/log/fail2ban.log
+ ```
+
+ To persist the changes after rotating the log file, add `create 640 root netdata` to the `/etc/logrotate.d/fail2ban`:
+
+ ```shell
+ /var/log/fail2ban.log {
+
+ weekly
+ rotate 4
+ compress
+
+ delaycompress
+ missingok
+ postrotate
+ fail2ban-client flushlogs 1>/dev/null
+ endscript
+
+ # If fail2ban runs as non-root it still needs to have write access
+ # to logfiles.
+ # create 640 fail2ban adm
+ create 640 root netdata
+ }
+ ```
default_behavior:
auto_detection:
- description: ''
+ description: |
+ By default the collector will attempt to read log file at /var/log/fail2ban.log and conf file at /etc/fail2ban/jail.local. If conf file is not found default jail is ssh.
limits:
- description: ''
+ description: ""
performance_impact:
- description: ''
+ description: ""
setup:
prerequisites:
list: []
configuration:
file:
- name: ''
- description: ''
+ name: ""
+ description: ""
options:
- description: ''
+ 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: ''
+ title: Config options
enabled: true
- list: []
+ list:
+ - name: log_path
+ description: path to fail2ban.log.
+ default_value: /var/log/fail2ban.log
+ required: false
+ - name: conf_path
+ description: path to jail.local/jail.conf.
+ default_value: /etc/fail2ban/jail.local
+ required: false
+ - name: conf_dir
+ description: path to jail.d/.
+ default_value: /etc/fail2ban/jail.d/
+ required: false
+ - name: exclude
+ description: jails you want to exclude from autodetection.
+ default_value: ""
+ required: false
+ - name: update_every
+ description: Sets the default data collection frequency.
+ default_value: 1
+ 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
examples:
folding:
enabled: true
- title: ''
- list: []
+ title: Config
+ list:
+ - name: Basic
+ folding:
+ enabled: false
+ description: A basic example configuration.
+ config: |
+ local:
+ log_path: '/var/log/fail2ban.log'
+ conf_path: '/etc/fail2ban/jail.local'
troubleshooting:
problems:
list: []
@@ -60,25 +155,26 @@ metrics:
description: ""
availability: []
scopes:
- - name: global
- description: ""
- labels: []
- metrics:
- - name: fail2ban.faile_attempts
- description: Failed attempts
- unit: "attempts/s"
- chart_type: line
- dimensions:
- - name: a dimension per jail
- - name: fail2ban.bans
- description: Bans
- unit: "bans/s"
- chart_type: line
- dimensions:
- - name: a dimension per jail
- - name: fail2ban.banned_ips
- description: Banned IP addresses (since the last restart of netdata)
- unit: "ips"
- chart_type: line
- dimensions:
- - name: a dimension per jail
+ - name: global
+ description: |
+ These metrics refer to the entire monitored application.
+ labels: []
+ metrics:
+ - name: fail2ban.failed_attempts
+ description: Failed attempts
+ unit: "attempts/s"
+ chart_type: line
+ dimensions:
+ - name: a dimension per jail
+ - name: fail2ban.bans
+ description: Bans
+ unit: "bans/s"
+ chart_type: line
+ dimensions:
+ - name: a dimension per jail
+ - name: fail2ban.banned_ips
+ description: Banned IP addresses (since the last restart of netdata)
+ unit: "ips"
+ chart_type: line
+ dimensions:
+ - name: a dimension per jail
diff --git a/collectors/python.d.plugin/fail2ban/metrics.csv b/collectors/python.d.plugin/fail2ban/metrics.csv
index 13ef80f400..36355a8901 100644
--- a/collectors/python.d.plugin/fail2ban/metrics.csv
+++ b/collectors/python.d.plugin/fail2ban/metrics.csv
@@ -1,4 +1,4 @@
metric,scope,dimensions,unit,description,chart_type,labels,plugin,module
-fail2ban.faile_attempts,,a dimension per jail,attempts/s,Failed attempts,line,,python.d.plugin,fail2ban
+fail2ban.failed_attempts,,a dimension per jail,attempts/s,Failed attempts,line,,python.d.plugin,fail2ban
fail2ban.bans,,a dimension per jail,bans/s,Bans,line,,python.d.plugin,fail2ban
fail2ban.banned_ips,,a dimension per jail,ips,Banned IP addresses (since the last restart of netdata),line,,python.d.plugin,fail2ban