mirror of
https://github.com/steinhobelgruen/netatmo-exporter.git
synced 2024-11-21 09:03:55 +00:00
Add handler for version information
This commit is contained in:
parent
ee49657c75
commit
87960917f6
1
main.go
1
main.go
|
@ -41,6 +41,7 @@ func main() {
|
||||||
prometheus.MustRegister(metrics)
|
prometheus.MustRegister(metrics)
|
||||||
|
|
||||||
http.Handle("/metrics", promhttp.HandlerFor(prometheus.DefaultGatherer, promhttp.HandlerOpts{}))
|
http.Handle("/metrics", promhttp.HandlerFor(prometheus.DefaultGatherer, promhttp.HandlerOpts{}))
|
||||||
|
http.Handle("/version", versionHandler(log))
|
||||||
http.Handle("/", http.RedirectHandler("/metrics", http.StatusFound))
|
http.Handle("/", http.RedirectHandler("/metrics", http.StatusFound))
|
||||||
|
|
||||||
log.Infof("Listen on %s...", cfg.Addr)
|
log.Infof("Listen on %s...", cfg.Addr)
|
||||||
|
|
33
version.go
Normal file
33
version.go
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
"github.com/sirupsen/logrus"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
// Version contains the version as set during the build.
|
||||||
|
Version = ""
|
||||||
|
|
||||||
|
// GitCommit contains the git commit hash set during the build.
|
||||||
|
GitCommit = ""
|
||||||
|
)
|
||||||
|
|
||||||
|
func versionHandler(log logrus.FieldLogger) http.Handler {
|
||||||
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
info := struct {
|
||||||
|
Version string `json:"version"`
|
||||||
|
Commit string `json:"commit"`
|
||||||
|
}{
|
||||||
|
Version: Version,
|
||||||
|
Commit: GitCommit,
|
||||||
|
}
|
||||||
|
|
||||||
|
w.Header().Add("Content-Type", "application/json")
|
||||||
|
if err := json.NewEncoder(w).Encode(info); err != nil {
|
||||||
|
log.Errorf("Error encoding version info: %s", err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
Loading…
Reference in a new issue