You've already forked prometheus-fail2ban-exporter
							
							Merge branch '15-update-sample-grafana-dashboard' into 'main'
Update sample grafana dashboard Closes #15 See merge request hectorjsmith/fail2ban-prometheus-exporter!52
This commit is contained in:
		@@ -24,7 +24,7 @@ The default location of the socket is: `/var/run/fail2ban/fail2ban.sock`
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
The metrics exported by this tool are compatible with Prometheus and Grafana. A sample grafana dashboard can be found in the `grafana.json` file. Just import the contents of this file into a new Grafana dashboard to get started.
 | 
					The metrics exported by this tool are compatible with Prometheus and Grafana. A sample grafana dashboard can be found in the `grafana.json` file. Just import the contents of this file into a new Grafana dashboard to get started.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
*(Sample dashboard is compatible with Grafana `8.2.1` and above)*
 | 
					*(Sample dashboard is compatible with Grafana `8.3.3` and above)*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 2. Running the Exporter
 | 
					## 2. Running the Exporter
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										147
									
								
								grafana.json
									
									
									
									
									
								
							
							
						
						
									
										147
									
								
								grafana.json
									
									
									
									
									
								
							@@ -1,11 +1,27 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "__inputs": [],
 | 
					  "__inputs": [
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "name": "DS_PROMETHEUS",
 | 
				
			||||||
 | 
					      "label": "Prometheus",
 | 
				
			||||||
 | 
					      "description": "",
 | 
				
			||||||
 | 
					      "type": "datasource",
 | 
				
			||||||
 | 
					      "pluginId": "prometheus",
 | 
				
			||||||
 | 
					      "pluginName": "Prometheus"
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  ],
 | 
				
			||||||
 | 
					  "__elements": [],
 | 
				
			||||||
  "__requires": [
 | 
					  "__requires": [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "type": "grafana",
 | 
					      "type": "grafana",
 | 
				
			||||||
      "id": "grafana",
 | 
					      "id": "grafana",
 | 
				
			||||||
      "name": "Grafana",
 | 
					      "name": "Grafana",
 | 
				
			||||||
      "version": "8.2.1"
 | 
					      "version": "8.3.3"
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "type": "datasource",
 | 
				
			||||||
 | 
					      "id": "prometheus",
 | 
				
			||||||
 | 
					      "name": "Prometheus",
 | 
				
			||||||
 | 
					      "version": "1.0.0"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "type": "panel",
 | 
					      "type": "panel",
 | 
				
			||||||
@@ -41,14 +57,17 @@
 | 
				
			|||||||
  },
 | 
					  },
 | 
				
			||||||
  "editable": true,
 | 
					  "editable": true,
 | 
				
			||||||
  "fiscalYearStartMonth": 0,
 | 
					  "fiscalYearStartMonth": 0,
 | 
				
			||||||
  "gnetId": null,
 | 
					 | 
				
			||||||
  "graphTooltip": 2,
 | 
					  "graphTooltip": 2,
 | 
				
			||||||
  "id": null,
 | 
					  "id": null,
 | 
				
			||||||
 | 
					  "iteration": 1640159475017,
 | 
				
			||||||
  "links": [],
 | 
					  "links": [],
 | 
				
			||||||
  "liveNow": false,
 | 
					  "liveNow": false,
 | 
				
			||||||
  "panels": [
 | 
					  "panels": [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -93,12 +112,23 @@
 | 
				
			|||||||
      },
 | 
					      },
 | 
				
			||||||
      "id": 206,
 | 
					      "id": 206,
 | 
				
			||||||
      "options": {
 | 
					      "options": {
 | 
				
			||||||
 | 
					        "footer": {
 | 
				
			||||||
 | 
					          "fields": "",
 | 
				
			||||||
 | 
					          "reducer": [
 | 
				
			||||||
 | 
					            "sum"
 | 
				
			||||||
 | 
					          ],
 | 
				
			||||||
 | 
					          "show": false
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
        "showHeader": true
 | 
					        "showHeader": true
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.3.3",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
          "exemplar": true,
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "exemplar": false,
 | 
				
			||||||
          "expr": "f2b_config_jail_max_retries",
 | 
					          "expr": "f2b_config_jail_max_retries",
 | 
				
			||||||
          "format": "table",
 | 
					          "format": "table",
 | 
				
			||||||
          "instant": true,
 | 
					          "instant": true,
 | 
				
			||||||
@@ -107,7 +137,11 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
          "exemplar": true,
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "exemplar": false,
 | 
				
			||||||
          "expr": "f2b_config_jail_ban_time",
 | 
					          "expr": "f2b_config_jail_ban_time",
 | 
				
			||||||
          "format": "table",
 | 
					          "format": "table",
 | 
				
			||||||
          "hide": false,
 | 
					          "hide": false,
 | 
				
			||||||
@@ -117,7 +151,11 @@
 | 
				
			|||||||
          "refId": "B"
 | 
					          "refId": "B"
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
          "exemplar": true,
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "exemplar": false,
 | 
				
			||||||
          "expr": "f2b_config_jail_find_time",
 | 
					          "expr": "f2b_config_jail_find_time",
 | 
				
			||||||
          "format": "table",
 | 
					          "format": "table",
 | 
				
			||||||
          "hide": false,
 | 
					          "hide": false,
 | 
				
			||||||
@@ -180,7 +218,10 @@
 | 
				
			|||||||
      "type": "table"
 | 
					      "type": "table"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -252,6 +293,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_jail_failed_total",
 | 
					          "expr": "f2b_jail_failed_total",
 | 
				
			||||||
          "hide": false,
 | 
					          "hide": false,
 | 
				
			||||||
@@ -260,14 +305,15 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Failures (Total)",
 | 
					      "title": "Fail2Ban Failures (Total)",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -339,6 +385,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_jail_banned_total",
 | 
					          "expr": "f2b_jail_banned_total",
 | 
				
			||||||
          "interval": "",
 | 
					          "interval": "",
 | 
				
			||||||
@@ -346,14 +396,15 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Bans (Total)",
 | 
					      "title": "Fail2Ban Bans (Total)",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -425,6 +476,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_jail_failed_current",
 | 
					          "expr": "f2b_jail_failed_current",
 | 
				
			||||||
          "interval": "",
 | 
					          "interval": "",
 | 
				
			||||||
@@ -432,14 +487,15 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Failures (Current)",
 | 
					      "title": "Fail2Ban Failures (Current)",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -511,6 +567,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_jail_banned_current",
 | 
					          "expr": "f2b_jail_banned_current",
 | 
				
			||||||
          "interval": "",
 | 
					          "interval": "",
 | 
				
			||||||
@@ -518,14 +578,15 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Bans (Current)",
 | 
					      "title": "Fail2Ban Bans (Current)",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -598,6 +659,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_up",
 | 
					          "expr": "f2b_up",
 | 
				
			||||||
          "interval": "",
 | 
					          "interval": "",
 | 
				
			||||||
@@ -605,14 +670,15 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Up",
 | 
					      "title": "Fail2Ban Up",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "datasource": null,
 | 
					      "datasource": {
 | 
				
			||||||
 | 
					        "type": "prometheus",
 | 
				
			||||||
 | 
					        "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      "description": "",
 | 
					      "description": "",
 | 
				
			||||||
      "fieldConfig": {
 | 
					      "fieldConfig": {
 | 
				
			||||||
        "defaults": {
 | 
					        "defaults": {
 | 
				
			||||||
@@ -685,6 +751,10 @@
 | 
				
			|||||||
      "pluginVersion": "8.2.1",
 | 
					      "pluginVersion": "8.2.1",
 | 
				
			||||||
      "targets": [
 | 
					      "targets": [
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					          "datasource": {
 | 
				
			||||||
 | 
					            "type": "prometheus",
 | 
				
			||||||
 | 
					            "uid": "${DS_PROMETHEUS}"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
          "exemplar": true,
 | 
					          "exemplar": true,
 | 
				
			||||||
          "expr": "f2b_errors",
 | 
					          "expr": "f2b_errors",
 | 
				
			||||||
          "interval": "",
 | 
					          "interval": "",
 | 
				
			||||||
@@ -692,19 +762,37 @@
 | 
				
			|||||||
          "refId": "A"
 | 
					          "refId": "A"
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      ],
 | 
					      ],
 | 
				
			||||||
      "timeFrom": null,
 | 
					 | 
				
			||||||
      "timeShift": null,
 | 
					 | 
				
			||||||
      "title": "Fail2Ban Exporter Errors",
 | 
					      "title": "Fail2Ban Exporter Errors",
 | 
				
			||||||
      "transparent": true,
 | 
					      "transparent": true,
 | 
				
			||||||
      "type": "timeseries"
 | 
					      "type": "timeseries"
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  "refresh": "30s",
 | 
					  "refresh": "30s",
 | 
				
			||||||
  "schemaVersion": 31,
 | 
					  "schemaVersion": 34,
 | 
				
			||||||
  "style": "dark",
 | 
					  "style": "dark",
 | 
				
			||||||
  "tags": [],
 | 
					  "tags": [],
 | 
				
			||||||
  "templating": {
 | 
					  "templating": {
 | 
				
			||||||
    "list": []
 | 
					    "list": [
 | 
				
			||||||
 | 
					      {
 | 
				
			||||||
 | 
					        "current": {
 | 
				
			||||||
 | 
					          "selected": true,
 | 
				
			||||||
 | 
					          "text": "Prometheus",
 | 
				
			||||||
 | 
					          "value": "Prometheus"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "hide": 0,
 | 
				
			||||||
 | 
					        "includeAll": false,
 | 
				
			||||||
 | 
					        "label": "Data Source",
 | 
				
			||||||
 | 
					        "multi": false,
 | 
				
			||||||
 | 
					        "name": "DataSource",
 | 
				
			||||||
 | 
					        "options": [],
 | 
				
			||||||
 | 
					        "query": "prometheus",
 | 
				
			||||||
 | 
					        "queryValue": "",
 | 
				
			||||||
 | 
					        "refresh": 1,
 | 
				
			||||||
 | 
					        "regex": "",
 | 
				
			||||||
 | 
					        "skipUrlSync": false,
 | 
				
			||||||
 | 
					        "type": "datasource"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    ]
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "time": {
 | 
					  "time": {
 | 
				
			||||||
    "from": "now-6h",
 | 
					    "from": "now-6h",
 | 
				
			||||||
@@ -714,5 +802,6 @@
 | 
				
			|||||||
  "timezone": "",
 | 
					  "timezone": "",
 | 
				
			||||||
  "title": "F2B",
 | 
					  "title": "F2B",
 | 
				
			||||||
  "uid": "cTkH9AT7z",
 | 
					  "uid": "cTkH9AT7z",
 | 
				
			||||||
  "version": 13
 | 
					  "version": 17,
 | 
				
			||||||
 | 
					  "weekStart": ""
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user