diff --git a/collector/f2b/collector.go b/collector/f2b/collector.go index 95f9bd0..e6a8ed8 100644 --- a/collector/f2b/collector.go +++ b/collector/f2b/collector.go @@ -1,11 +1,12 @@ package f2b import ( + "log" + "os" + "github.com/prometheus/client_golang/prometheus" "gitlab.com/hectorjsmith/fail2ban-prometheus-exporter/cfg" "gitlab.com/hectorjsmith/fail2ban-prometheus-exporter/socket" - "log" - "os" ) type Collector struct { @@ -18,7 +19,8 @@ type Collector struct { } func NewExporter(appSettings *cfg.AppSettings, exporterVersion string) *Collector { - log.Printf("reading metrics from fail2ban socket: %s", appSettings.Fail2BanSocketPath) + log.Printf("reading fail2ban metrics from socket file: %s", appSettings.Fail2BanSocketPath) + printFail2BanServerVersion(appSettings.Fail2BanSocketPath) return &Collector{ socketPath: appSettings.Fail2BanSocketPath, exporterVersion: exporterVersion, @@ -58,3 +60,17 @@ func (c *Collector) Collect(ch chan<- prometheus.Metric) { } c.collectErrorCountMetric(ch) } + +func printFail2BanServerVersion(socketPath string) { + s, err := socket.ConnectToSocket(socketPath) + if err != nil { + log.Printf("error connecting to socket: %v", err) + } else { + version, err := s.GetServerVersion() + if err != nil { + log.Printf("error interacting with socket: %v", err) + } else { + log.Printf("successfully connected to fail2ban socket! fail2ban version: %s", version) + } + } +}