summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNetdata bot <43409846+netdatabot@users.noreply.github.com>2024-04-23 21:27:16 +0300
committerGitHub <noreply@github.com>2024-04-23 21:27:16 +0300
commit96b5d0fc8c2f3eea98fdf080d3a2266c13fe9234 (patch)
tree90a051f20d22f68bf9c4574ea148a73790ed2b03
parent4ab9422b49b58d91b7f455e51138b7be2922febf (diff)
Regenerate integrations.js (#17505)
Co-authored-by: ilyam8 <22274335+ilyam8@users.noreply.github.com>
-rw-r--r--integrations/cloud-authentication/integrations/okta_sso.md2
-rw-r--r--integrations/integrations.js79
-rw-r--r--integrations/integrations.json79
-rw-r--r--src/collectors/COLLECTORS.md2
l---------src/go/collectors/go.d.plugin/modules/fail2ban/README.md1
-rw-r--r--src/go/collectors/go.d.plugin/modules/fail2ban/integrations/fail2ban.md159
6 files changed, 242 insertions, 80 deletions
diff --git a/integrations/cloud-authentication/integrations/okta_sso.md b/integrations/cloud-authentication/integrations/okta_sso.md
index aeb1c0e7f7..83412974c6 100644
--- a/integrations/cloud-authentication/integrations/okta_sso.md
+++ b/integrations/cloud-authentication/integrations/okta_sso.md
@@ -46,6 +46,6 @@ Steps needed to be done on Okta Admin Portal:
### SP-initiated SSO
-If you start your authentication flow from Netdata sign-in page please check [these steps](https://github.com/netdata/netdata/blob/master/docs/netdata-cloud/enterprise-sso-authentication.md).
+If you start your authentication flow from Netdata sign-in page please check [these steps](https://github.com/netdata/netdata/blob/master/docs/netdata-cloud/enterprise-sso-authentication.md#from-netdata-sign-up-page).
diff --git a/integrations/integrations.js b/integrations/integrations.js
index 3cc2d22b30..ddd2cdf847 100644
--- a/integrations/integrations.js
+++ b/integrations/integrations.js
@@ -3990,6 +3990,45 @@ export const integrations = [
},
{
"meta": {
+ "id": "collector-go.d.plugin-fail2ban",
+ "plugin_name": "go.d.plugin",
+ "module_name": "fail2ban",
+ "monitored_instance": {
+ "name": "Fail2ban",
+ "link": "https://github.com/fail2ban/fail2ban#readme",
+ "icon_filename": "fail2ban.png",
+ "categories": [
+ "data-collection.authentication-and-authorization"
+ ]
+ },
+ "keywords": [
+ "fail2ban",
+ "security",
+ "authentication",
+ "authorization"
+ ],
+ "related_resources": {
+ "integrations": {
+ "list": []
+ }
+ },
+ "info_provided_to_referring_integrations": {
+ "description": ""
+ },
+ "most_popular": false
+ },
+ "overview": "# Fail2ban\n\nPlugin: go.d.plugin\nModule: fail2ban\n\n## Overview\n\nThis collector tracks two main metrics for each jail: currently banned IPs and active failure incidents. It relies on the [`fail2ban-client`](https://linux.die.net/man/1/fail2ban-client) CLI tool but avoids directly executing the binary. Instead, it utilizes `ndsudo`, a Netdata helper specifically designed to run privileged commands securely within the Netdata environment. This approach eliminates the need to use `sudo`, improving security and potentially simplifying permission management.\n\n\n\n\nThis collector is supported on all platforms.\n\nThis collector only supports collecting metrics from a single instance of this integration.\n\n\n### Default Behavior\n\n#### Auto-Detection\n\nThis integration doesn't support auto-detection.\n\n#### Limits\n\nThe default configuration for this integration does not impose any limits on data collection.\n\n#### Performance Impact\n\nThe default configuration for this integration is not expected to impose a significant performance impact on the system.\n",
+ "setup": "## Setup\n\n### Prerequisites\n\nNo action required.\n\n### Configuration\n\n#### File\n\nThe configuration file name for this integration is `go.d/fail2ban.conf`.\n\n\nYou can edit the configuration file using the `edit-config` script from the\nNetdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).\n\n```bash\ncd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata\nsudo ./edit-config go.d/fail2ban.conf\n```\n#### Options\n\nThe following options can be defined globally: update_every.\n\n\n{% details summary=\"Config options\" %}\n| Name | Description | Default | Required |\n|:----|:-----------|:-------|:--------:|\n| update_every | Data collection frequency. | 10 | no |\n| timeout | fail2ban-client binary execution timeout. | 2 | no |\n\n{% /details %}\n#### Examples\n\n##### Custom update_every\n\nAllows you to override the default data collection interval.\n\n{% details summary=\"Config\" %}\n```yaml\njobs:\n - name: fail2ban\n update_every: 5 # Collect Fail2Ban jails statistics every 5 seconds\n\n```\n{% /details %}\n",
+ "troubleshooting": "## Troubleshooting\n\n### Debug Mode\n\nTo troubleshoot issues with the `fail2ban` collector, run the `go.d.plugin` with the debug option enabled. The output\nshould give you clues as to why the collector isn't working.\n\n- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on\n your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.\n\n ```bash\n cd /usr/libexec/netdata/plugins.d/\n ```\n\n- Switch to the `netdata` user.\n\n ```bash\n sudo -u netdata -s\n ```\n\n- Run the `go.d.plugin` to debug the collector:\n\n ```bash\n ./go.d.plugin -d -m fail2ban\n ```\n\n",
+ "alerts": "## Alerts\n\nThere are no alerts configured by default for this integration.\n",
+ "metrics": "## Metrics\n\nMetrics grouped by *scope*.\n\nThe scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.\n\n\n\n### Per jail\n\nThese metrics refer to the Jail.\n\nLabels:\n\n| Label | Description |\n|:-----------|:----------------|\n| jail | Jail's name |\n\nMetrics:\n\n| Metric | Dimensions | Unit |\n|:------|:----------|:----|\n| fail2ban.jail_banned_ips | banned | addresses |\n| fail2ban.jail_active_failures | active_failures | failures |\n\n",
+ "integration_type": "collector",
+ "id": "go.d.plugin-fail2ban-Fail2ban",
+ "edit_link": "https://github.com/netdata/netdata/blob/master/src/go/collectors/go.d.plugin/modules/fail2ban/metadata.yaml",
+ "related_resources": ""
+ },
+ {
+ "meta": {
"id": "collector-go.d.plugin-filecheck",
"plugin_name": "go.d.plugin",
"module_name": "filecheck",
@@ -18524,44 +18563,6 @@ export const integrations = [
{
"meta": {
"plugin_name": "python.d.plugin",
- "module_name": "fail2ban",
- "monitored_instance": {
- "name": "Fail2ban",
- "link": "https://www.fail2ban.org/",
- "categories": [
- "data-collection.authentication-and-authorization"
- ],
- "icon_filename": "fail2ban.png"
- },
- "related_resources": {
- "integrations": {
- "list": []
- }
- },
- "info_provided_to_referring_integrations": {
- "description": ""
- },
- "keywords": [
- "fail2ban",
- "security",
- "authentication",
- "authorization"
- ],
- "most_popular": false
- },
- "overview": "# Fail2ban\n\nPlugin: python.d.plugin\nModule: fail2ban\n\n## Overview\n\nMonitor Fail2ban performance for prime intrusion prevention operations. Monitor ban counts, jail statuses, and failed login attempts to ensure robust network security.\n\n\nIt collects metrics through reading the default log and configuration files of fail2ban.\n\n\nThis collector is supported on all platforms.\n\nThis collector supports collecting metrics from multiple instances of this integration, including remote instances.\n\nThe `fail2ban.log` file must be readable by the user `netdata`.\n - change the file ownership and access permissions.\n - update `/etc/logrotate.d/fail2ban`` to persist the changes after rotating the log file.\n\nTo change the file ownership and access permissions, execute the following:\n\n```shell\nsudo chown root:netdata /var/log/fail2ban.log\nsudo chmod 640 /var/log/fail2ban.log\n```\n\nTo persist the changes after rotating the log file, add `create 640 root netdata` to the `/etc/logrotate.d/fail2ban`:\n\n```shell\n/var/log/fail2ban.log {\n\n weekly\n rotate 4\n compress\n\n delaycompress\n missingok\n postrotate\n fail2ban-client flushlogs 1>/dev/null\n endscript\n\n # If fail2ban runs as non-root it still needs to have write access\n # to logfiles.\n # create 640 fail2ban adm\n create 640 root netdata\n}\n```\n\n\n### Default Behavior\n\n#### Auto-Detection\n\nBy default the collector will attempt to read log file at /var/log/fail2ban.log and conf file at /etc/fail2ban/jail.local.\nIf conf file is not found default jail is ssh.\n\n\n#### Limits\n\nThe default configuration for this integration does not impose any limits on data collection.\n\n#### Performance Impact\n\nThe default configuration for this integration is not expected to impose a significant performance impact on the system.\n",
- "setup": "## Setup\n\n### Prerequisites\n\nNo action required.\n\n### Configuration\n\n#### File\n\nThe configuration file name for this integration is `python.d/fail2ban.conf`.\n\n\nYou can edit the configuration file using the `edit-config` script from the\nNetdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).\n\n```bash\ncd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata\nsudo ./edit-config python.d/fail2ban.conf\n```\n#### Options\n\nThere are 2 sections:\n\n* Global variables\n* One or more JOBS that can define multiple different instances to monitor.\n\nThe following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.\n\nAdditionally, the following collapsed table contains all the options that can be configured inside a JOB definition.\n\nEvery configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.\n\n\n{% details summary=\"Config options\" %}\n| Name | Description | Default | Required |\n|:----|:-----------|:-------|:--------:|\n| log_path | path to fail2ban.log. | /var/log/fail2ban.log | no |\n| conf_path | path to jail.local/jail.conf. | /etc/fail2ban/jail.local | no |\n| conf_dir | path to jail.d/. | /etc/fail2ban/jail.d/ | no |\n| exclude | jails you want to exclude from autodetection. | | no |\n| update_every | Sets the default data collection frequency. | 1 | no |\n| priority | Controls the order of charts at the netdata dashboard. | 60000 | no |\n| autodetection_retry | Sets the job re-check interval in seconds. | 0 | no |\n| penalty | Indicates whether to apply penalty to update_every in case of failures. | yes | no |\n| name | 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. | | no |\n\n{% /details %}\n#### Examples\n\n##### Basic\n\nA basic example configuration.\n\n```yaml\nlocal:\n log_path: '/var/log/fail2ban.log'\n conf_path: '/etc/fail2ban/jail.local'\n\n```\n",
- "troubleshooting": "## Troubleshooting\n\n### Debug Mode\n\nTo troubleshoot issues with the `fail2ban` collector, run the `python.d.plugin` with the debug option enabled. The output\nshould give you clues as to why the collector isn't working.\n\n- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on\n your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.\n\n ```bash\n cd /usr/libexec/netdata/plugins.d/\n ```\n\n- Switch to the `netdata` user.\n\n ```bash\n sudo -u netdata -s\n ```\n\n- Run the `python.d.plugin` to debug the collector:\n\n ```bash\n ./python.d.plugin fail2ban debug trace\n ```\n\n### Debug Mode\n\n\n\n",
- "alerts": "## Alerts\n\nThere are no alerts configured by default for this integration.\n",
- "metrics": "## Metrics\n\nMetrics grouped by *scope*.\n\nThe scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.\n\n\n\n### Per Fail2ban instance\n\nThese metrics refer to the entire monitored application.\n\n\nThis scope has no labels.\n\nMetrics:\n\n| Metric | Dimensions | Unit |\n|:------|:----------|:----|\n| fail2ban.failed_attempts | a dimension per jail | attempts/s |\n| fail2ban.bans | a dimension per jail | bans/s |\n| fail2ban.banned_ips | a dimension per jail | ips |\n\n",
- "integration_type": "collector",
- "id": "python.d.plugin-fail2ban-Fail2ban",
- "edit_link": "https://github.com/netdata/netdata/blob/master/src/collectors/python.d.plugin/fail2ban/metadata.yaml",
- "related_resources": ""
- },
- {
- "meta": {
- "plugin_name": "python.d.plugin",
"module_name": "gearman",
"monitored_instance": {
"name": "Gearman",
@@ -22279,7 +22280,7 @@ export const integrations = [
"okta-sso"
],
"overview": "# Okta SSO\n\nIntegrate your organization's Okta account with Netdata to better manage your team's access controls to Netdata Cloud.\n",
- "setup": "## Setup\n\n### Prerequisites\n- An Okta account\n- A Netdata Cloud account\n- Access to the Space as an administrator\n- Space needs to be on the Business plan or higher\n\n### Setting up Okta\nSteps needed to be done on Okta Admin Portal:\n1. Click on **Applications** tab and choose to **Browse App Catalogue**\n2. Find Netdata's preconfigured app for easy setup and click **Add Integration**\n3. Give the app, that will be in your apps dashboard, the preferred **Application label** and click **Next** to move to the Sign-On options tab\n4. In the **Sign-On Options** all the values we expect are already filled and no additional data is required\n5. Click **Done**. You are able to go back and edit any fields later if need be\n6. Go to the **Assignments** tab and enter the People or Group assignments as per your organization\u2019s policies\n\n### Netdata Configuration Steps\n1. Click on the Space settings cog (located above your profile icon)\n2. Click on the **Authentication** tab\n3. On the Okta SSO card, click on **Configure**\n4. Fill in the [required credentials](https://developer.okta.com/docs/guides/find-your-app-credentials/main/), you get them from **Okta Admin Portal**:\n - **Issuer URL** you can get it from your profile icon on top, e.g. `https://company-name.okta.com`\n - **Client ID** you can get it from **General** tab on application you configured on Okta\n - **Client Secret** you can get it from **General** tab on application you configured on Okta\n\n",
+ "setup": "## Setup\n\n### Prerequisites\n- An Okta account\n- A Netdata Cloud account\n- Access to the Space as an administrator\n- Space needs to be on the Business plan or higher\n\n### Setting up Okta\nSteps needed to be done on Okta Admin Portal:\n1. Click on **Applications** tab and choose to **Browse App Catalogue**\n2. Find Netdata's preconfigured app for easy setup and click **Add Integration**\n3. Give the app, that will be in your apps dashboard, the preferred **Application label** and click **Next** to move to the Sign-On options tab\n4. In the **Sign-On Options** all the values we expect are already filled and no additional data is required\n5. Click **Done**. You are able to go back and edit any fields later if need be\n6. Go to the **Assignments** tab and enter the People or Group assignments as per your organization\u2019s policies\n\n### Netdata Configuration Steps\n1. Click on the Space settings cog (located above your profile icon)\n2. Click on the **Authentication** tab\n3. On the Okta SSO card, click on **Configure**\n4. Fill in the [required credentials](https://developer.okta.com/docs/guides/find-your-app-credentials/main/), you get them from **Okta Admin Portal**:\n - **Issuer URL** you can get it from your profile icon on top, e.g. `https://company-name.okta.com`\n - **Client ID** you can get it from **General** tab on application you configured on Okta\n - **Client Secret** you can get it from **General** tab on application you configured on Okta\n\n### SP-initiated SSO\n\nIf you start your authentication flow from Netdata sign-in page please check [these steps](https://github.com/netdata/netdata/blob/master/docs/netdata-cloud/enterprise-sso-authentication.md#from-netdata-sign-up-page).\n\n",
"integration_type": "authentication",
"edit_link": "https://github.com/netdata/netdata/blob/master/integrations/cloud-authentication/metadata.yaml",
"troubleshooting": ""
diff --git a/integrations/integrations.json b/integrations/integrations.json
index 05730ea58e..d62a32d178 100644
--- a/integrations/integrations.json
+++ b/integrations/integrations.json
@@ -3988,6 +3988,45 @@
},
{
"meta": {
+ "id": "collector-go.d.plugin-fail2ban",
+ "plugin_name": "go.d.plugin",
+ "module_name": "fail2ban",
+ "monitored_instance": {
+ "name": "Fail2ban",
+ "link": "https://github.com/fail2ban/fail2ban#readme",
+ "icon_filename": "fail2ban.png",
+ "categories": [
+ "data-collection.authentication-and-authorization"
+ ]
+ },
+ "keywords": [
+ "fail2ban",
+ "security",
+ "authentication",
+ "authorization"
+ ],
+ "related_resources": {
+ "integrations": {
+ "list": []
+ }
+ },
+ "info_provided_to_referring_integrations": {
+ "description": ""
+ },
+ "most_popular": false
+ },
+ "overview": "# Fail2ban\n\nPlugin: go.d.plugin\nModule: fail2ban\n\n## Overview\n\nThis collector tracks two main metrics for each jail: currently banned IPs and active failure incidents. It relies on the [`fail2ban-client`](https://linux.die.net/man/1/fail2ban-client) CLI tool but avoids directly executing the binary. Instead, it utilizes `ndsudo`, a Netdata helper specifically designed to run privileged commands securely within the Netdata environment. This approach eliminates the need to use `sudo`, improving security and potentially simplifying permission management.\n\n\n\n\nThis collector is supported on all platforms.\n\nThis collector only supports collecting metrics from a single instance of this integration.\n\n\n### Default Behavior\n\n#### Auto-Detection\n\nThis integration doesn't support auto-detection.\n\n#### Limits\n\nThe default configuration for this integration does not impose any limits on data collection.\n\n#### Performance Impact\n\nThe default configuration for this integration is not expected to impose a significant performance impact on the system.\n",
+ "setup": "## Setup\n\n### Prerequisites\n\nNo action required.\n\n### Configuration\n\n#### File\n\nThe configuration file name for this integration is `go.d/fail2ban.conf`.\n\n\nYou can edit the configuration file using the `edit-config` script from the\nNetdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).\n\n```bash\ncd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata\nsudo ./edit-config go.d/fail2ban.conf\n```\n#### Options\n\nThe following options can be defined globally: update_every.\n\n\n| Name | Description | Default | Required |\n|:----|:-----------|:-------|:--------:|\n| update_every | Data collection frequency. | 10 | no |\n| timeout | fail2ban-client binary execution timeout. | 2 | no |\n\n#### Examples\n\n##### Custom update_every\n\nAllows you to override the default data collection interval.\n\n```yaml\njobs:\n - name: fail2ban\n update_every: 5 # Collect Fail2Ban jails statistics every 5 seconds\n\n```\n",
+ "troubleshooting": "## Troubleshooting\n\n### Debug Mode\n\nTo troubleshoot issues with the `fail2ban` collector, run the `go.d.plugin` with the debug option enabled. The output\nshould give you clues as to why the collector isn't working.\n\n- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on\n your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.\n\n ```bash\n cd /usr/libexec/netdata/plugins.d/\n ```\n\n- Switch to the `netdata` user.\n\n ```bash\n sudo -u netdata -s\n ```\n\n- Run the `go.d.plugin` to debug the collector:\n\n ```bash\n ./go.d.plugin -d -m fail2ban\n ```\n\n",
+ "alerts": "## Alerts\n\nThere are no alerts configured by default for this integration.\n",
+ "metrics": "## Metrics\n\nMetrics grouped by *scope*.\n\nThe scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.\n\n\n\n### Per jail\n\nThese metrics refer to the Jail.\n\nLabels:\n\n| Label | Description |\n|:-----------|:----------------|\n| jail | Jail's name |\n\nMetrics:\n\n| Metric | Dimensions | Unit |\n|:------|:----------|:----|\n| fail2ban.jail_banned_ips | banned | addresses |\n| fail2ban.jail_active_failures | active_failures | failures |\n\n",
+ "integration_type": "collector",
+ "id": "go.d.plugin-fail2ban-Fail2ban",
+ "edit_link": "https://github.com/netdata/netdata/blob/master/src/go/collectors/go.d.plugin/modules/fail2ban/metadata.yaml",
+ "related_resources": ""
+ },
+ {
+ "meta": {
"id": "collector-go.d.plugin-filecheck",
"plugin_name": "go.d.plugin",
"module_name": "filecheck",
@@ -18522,44 +18561,6 @@
{
"meta": {
"plugin_name": "python.d.plugin",
- "module_name": "fail2ban",
- "monitored_instance": {
- "name": "Fail2ban",
- "link": "https://www.fail2ban.org/",
- "categories": [
- "data-collection.authentication-and-authorization"
- ],
- "icon_filename": "fail2ban.png"
- },
- "related_resources": {
- "integrations": {
- "list": []
- }
- },
- "info_provided_to_referring_integrations": {
- "description": ""
- },
- "keywords": [
- "fail2ban",
- "security",
- "authentication",
- "authorization"
- ],
- "most_popular": false
- },
- "overview": "# Fail2ban\n\nPlugin: python.d.plugin\nModule: fail2ban\n\n## Overview\n\nMonitor Fail2ban performance for prime intrusion prevention operations. Monitor ban counts, jail statuses, and failed login attempts to ensure robust network security.\n\n\nIt collects metrics through reading the default log and configuration files of fail2ban.\n\n\nThis collector is supported on all platforms.\n\nThis collector supports collecting metrics from multiple instances of this integration, including remote instances.\n\nThe `fail2ban.log` file must be readable by the user `netdata`.\n - change the file ownership and access permissions.\n - update `/etc/logrotate.d/fail2ban`` to persist the changes after rotating the log file.\n\nTo change the file ownership and access permissions, execute the following:\n\n```shell\nsudo chown root:netdata /var/log/fail2ban.log\nsudo chmod 640 /var/log/fail2ban.log\n```\n\nTo persist the changes after rotating the log file, add `create 640 root netdata` to the `/etc/logrotate.d/fail2ban`:\n\n```shell\n/var/log/fail2ban.log {\n\n weekly\n rotate 4\n compress\n\n delaycompress\n missingok\n postrotate\n fail2ban-client flushlogs 1>/dev/null\n endscript\n\n # If fail2ban runs as non-root it still needs to have write access\n # to logfiles.\n # create 640 fail2ban adm\n create 640 root netdata\n}\n```\n\n\n### Default Behavior\n\n#### Auto-Detection\n\nBy default the collector will attempt to read log file at /var/log/fail2ban.log and conf file at /etc/fail2ban/jail.local.\nIf conf file is not found default jail is ssh.\n\n\n#### Limits\n\nThe default configuration for this integration does not impose any limits on data collection.\n\n#### Performance Impact\n\nThe default configuration for this integration is not expected to impose a significant performance impact on the system.\n",
- "setup": "## Setup\n\n### Prerequisites\n\nNo action required.\n\n### Configuration\n\n#### File\n\nThe configuration file name for this integration is `python.d/fail2ban.conf`.\n\n\nYou can edit the configuration file using the `edit-config` script from the\nNetdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).\n\n```bash\ncd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata\nsudo ./edit-config python.d/fail2ban.conf\n```\n#### Options\n\nThere are 2 sections:\n\n* Global variables\n* One or more JOBS that can define multiple different instances to monitor.\n\nThe following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.\n\nAdditionally, the following collapsed table contains all the options that can be configured inside a JOB definition.\n\nEvery configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.\n\n\n| Name | Description | Default | Required |\n|:----|:-----------|:-------|:--------:|\n| log_path | path to fail2ban.log. | /var/log/fail2ban.log | no |\n| conf_path | path to jail.local/jail.conf. | /etc/fail2ban/jail.local | no |\n| conf_dir | path to jail.d/. | /etc/fail2ban/jail.d/ | no |\n| exclude | jails you want to exclude from autodetection. | | no |\n| update_every | Sets the default data collection frequency. | 1 | no |\n| priority | Controls the order of charts at the netdata dashboard. | 60000 | no |\n| autodetection_retry | Sets the job re-check interval in seconds. | 0 | no |\n| penalty | Indicates whether to apply penalty to update_every in case of failures. | yes | no |\n| name | 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. | | no |\n\n#### Examples\n\n##### Basic\n\nA basic example configuration.\n\n```yaml\nlocal:\n log_path: '/var/log/fail2ban.log'\n conf_path: '/etc/fail2ban/jail.local'\n\n```\n",
- "troubleshooting": "## Troubleshooting\n\n### Debug Mode\n\nTo troubleshoot issues with the `fail2ban` collector, run the `python.d.plugin` with the debug option enabled. The output\nshould give you clues as to why the collector isn't working.\n\n- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on\n your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.\n\n ```bash\n cd /usr/libexec/netdata/plugins.d/\n ```\n\n- Switch to the `netdata` user.\n\n ```bash\n sudo -u netdata -s\n ```\n\n- Run the `python.d.plugin` to debug the collector:\n\n ```bash\n ./python.d.plugin fail2ban debug trace\n ```\n\n### Debug Mode\n\n\n\n",
- "alerts": "## Alerts\n\nThere are no alerts configured by default for this integration.\n",
- "metrics": "## Metrics\n\nMetrics grouped by *scope*.\n\nThe scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.\n\n\n\n### Per Fail2ban instance\n\nThese metrics refer to the entire monitored application.\n\n\nThis scope has no labels.\n\nMetrics:\n\n| Metric | Dimensions | Unit |\n|:------|:----------|:----|\n| fail2ban.failed_attempts | a dimension per jail | attempts/s |\n| fail2ban.bans | a dimension per jail | bans/s |\n| fail2ban.banned_ips | a dimension per jail | ips |\n\n",
- "integration_type": "collector",
- "id": "python.d.plugin-fail2ban-Fail2ban",
- "edit_link": "https://github.com/netdata/netdata/blob/master/src/collectors/python.d.plugin/fail2ban/metadata.yaml",
- "related_resources": ""
- },
- {
- "meta": {
- "plugin_name": "python.d.plugin",
"module_name": "gearman",
"monitored_instance": {
"name": "Gearman",
@@ -22277,7 +22278,7 @@
"okta-sso"
],
"overview": "# Okta SSO\n\nIntegrate your organization's Okta account with Netdata to better manage your team's access controls to Netdata Cloud.\n",
- "setup": "## Setup\n\n### Prerequisites\n- An Okta account\n- A Netdata Cloud account\n- Access to the Space as an administrator\n- Space needs to be on the Business plan or higher\n\n### Setting up Okta\nSteps needed to be done on Okta Admin Portal:\n1. Click on **Applications** tab and choose to **Browse App Catalogue**\n2. Find Netdata's preconfigured app for easy setup and click **Add Integration**\n3. Give the app, that will be in your apps dashboard, the preferred **Application label** and click **Next** to move to the Sign-On options tab\n4. In the **Sign-On Options** all the values we expect are already filled and no additional data is required\n5. Click **Done**. You are able to go back and edit any fields later if need be\n6. Go to the **Assignments** tab and enter the People or Group assignments as per your organization\u2019s policies\n\n### Netdata Configuration Steps\n1. Click on the Space settings cog (located above your profile icon)\n2. Click on the **Authentication** tab\n3. On the Okta SSO card, click on **Configure**\n4. Fill in the [required credentials](https://developer.okta.com/docs/guides/find-your-app-credentials/main/), you get them from **Okta Admin Portal**:\n - **Issuer URL** you can get it from your profile icon on top, e.g. `https://company-name.okta.com`\n - **Client ID** you can get it from **General** tab on application you configured on Okta\n - **Client Secret** you can get it from **General** tab on application you configured on Okta\n\n",
+ "setup": "## Setup\n\n### Prerequisites\n- An Okta account\n- A Netdata Cloud account\n- Access to the Space as an administrator\n- Space needs to be on the Business plan or higher\n\n### Setting up Okta\nSteps needed to be done on Okta Admin Portal:\n1. Click on **Applications** tab and choose to **Browse App Catalogue**\n2. Find Netdata's preconfigured app for easy setup and click **Add Integration**\n3. Give the app, that will be in your apps dashboard, the preferred **Application label** and click **Next** to move to the Sign-On options tab\n4. In the **Sign-On Options** all the values we expect are already filled and no additional data is required\n5. Click **Done**. You are able to go back and edit any fields later if need be\n6. Go to the **Assignments** tab and enter the People or Group assignments as per your organization\u2019s policies\n\n### Netdata Configuration Steps\n1. Click on the Space settings cog (located above your profile icon)\n2. Click on the **Authentication** tab\n3. On the Okta SSO card, click on **Configure**\n4. Fill in the [required credentials](https://developer.okta.com/docs/guides/find-your-app-credentials/main/), you get them from **Okta Admin Portal**:\n - **Issuer URL** you can get it from your profile icon on top, e.g. `https://company-name.okta.com`\n - **Client ID** you can get it from **General** tab on application you configured on Okta\n - **Client Secret** you can get it from **General** tab on application you configured on Okta\n\n### SP-initiated SSO\n\nIf you start your authentication flow from Netdata sign-in page please check [these steps](https://github.com/netdata/netdata/blob/master/docs/netdata-cloud/enterprise-sso-authentication.md#from-netdata-sign-up-page).\n\n",
"integration_type": "authentication",
"edit_link": "https://github.com/netdata/netdata/blob/master/integrations/cloud-authentication/metadata.yaml",
"troubleshooting": ""
diff --git a/src/collectors/COLLECTORS.md b/src/collectors/COLLECTORS.md
index 346ea8513c..f922e335ee 100644
--- a/src/collectors/COLLECTORS.md
+++ b/src/collectors/COLLECTORS.md
@@ -83,7 +83,7 @@ If you don't see the app/service you'd like to monitor in this list:
### Authentication and Authorization
-- [Fail2ban](https://github.com/netdata/netdata/blob/master/src/collectors/python.d.plugin/fail2ban/integrations/fail2ban.md)
+- [Fail2ban](https://github.com/netdata/netdata/blob/master/src/go/collectors/go.d.plugin/modules/fail2ban/integrations/fail2ban.md)
- [FreeRADIUS](https://github.com/netdata/netdata/blob/master/src/go/collectors/go.d.plugin/modules/freeradius/integrations/freeradius.md)
diff --git a/src/go/collectors/go.d.plugin/modules/fail2ban/README.md b/src/go/collectors/go.d.plugin/modules/fail2ban/README.md
new file mode 120000
index 0000000000..642a8bcf53
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/fail2ban/README.md
@@ -0,0 +1 @@
+integrations/fail2ban.md \ No newline at end of file
diff --git a/src/go/collectors/go.d.plugin/modules/fail2ban/integrations/fail2ban.md b/src/go/collectors/go.d.plugin/modules/fail2ban/integrations/fail2ban.md
new file mode 100644
index 0000000000..916871e596
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/fail2ban/integrations/fail2ban.md
@@ -0,0 +1,159 @@
+<!--startmeta
+custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/fail2ban/README.md"
+meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/collectors/go.d.plugin/modules/fail2ban/metadata.yaml"
+sidebar_label: "Fail2ban"
+learn_status: "Published"
+learn_rel_path: "Collecting Metrics/Authentication and Authorization"
+most_popular: False
+message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE"
+endmeta-->
+
+# Fail2ban
+
+
+<img src="https://netdata.cloud/img/fail2ban.png" width="150"/>
+
+
+Plugin: go.d.plugin
+Module: fail2ban
+
+<img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
+
+## Overview
+
+This collector tracks two main metrics for each jail: currently banned IPs and active failure incidents. It relies on the [`fail2ban-client`](https://linux.die.net/man/1/fail2ban-client) CLI tool but avoids directly executing the binary. Instead, it utilizes `ndsudo`, a Netdata helper specifically designed to run privileged commands securely within the Netdata environment. This approach eliminates the need to use `sudo`, improving security and potentially simplifying permission management.
+
+
+
+
+This collector is supported on all platforms.
+
+This collector only supports collecting metrics from a single instance of this integration.
+
+
+### Default Behavior
+
+#### Auto-Detection
+
+This integration doesn't support auto-detection.
+
+#### Limits
+
+The default configuration for this integration does not impose any limits on data collection.
+
+#### Performance Impact
+
+The default configuration for this integration is not expected to impose a significant performance impact on the system.
+
+
+## Metrics
+
+Metrics grouped by *scope*.
+
+The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
+
+
+
+### Per jail
+
+These metrics refer to the Jail.
+
+Labels:
+
+| Label | Description |
+|:-----------|:----------------|
+| jail | Jail's name |
+
+Metrics:
+
+| Metric | Dimensions | Unit |
+|:------|:----------|:----|
+| fail2ban.jail_banned_ips | banned | addresses |
+| fail2ban.jail_active_failures | active_failures | failures |
+
+
+
+## Alerts
+
+There are no alerts configured by default for this integration.
+
+
+## Setup
+
+### Prerequisites
+
+No action required.
+
+### Configuration
+
+#### File
+
+The configuration file name for this integration is `go.d/fail2ban.conf`.
+
+
+You can edit the configuration file using the `edit-config` script from the
+Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration.md#the-netdata-config-directory).
+
+```bash
+cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
+sudo ./edit-config go.d/fail2ban.conf
+```
+#### Options
+
+The following options can be defined globally: update_every.
+
+
+<details><summary>Config options</summary>
+
+| Name | Description | Default | Required |
+|:----|:-----------|:-------|:--------:|
+| update_every | Data collection frequency. | 10 | no |
+| timeout | fail2ban-client binary execution timeout. | 2 | no |
+
+</details>
+
+#### Examples
+
+##### Custom update_every
+
+Allows you to override the default data collection interval.
+
+<details><summary>Config</summary>
+
+```yaml
+jobs:
+ - name: fail2ban
+ update_every: 5 # Collect Fail2Ban jails statistics every 5 seconds
+
+```
+</details>
+
+
+
+## Troubleshooting
+
+### Debug Mode
+
+To troubleshoot issues with the `fail2ban` collector, run the `go.d.plugin` with the debug option enabled. The output
+should give you clues as to why the collector isn't working.
+
+- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on
+ your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`.
+
+ ```bash
+ cd /usr/libexec/netdata/plugins.d/
+ ```
+
+- Switch to the `netdata` user.
+
+ ```bash
+ sudo -u netdata -s
+ ```
+
+- Run the `go.d.plugin` to debug the collector:
+
+ ```bash
+ ./go.d.plugin -d -m fail2ban
+ ```
+
+