1
0
mirror of https://github.com/imgproxy/imgproxy.git synced 2025-12-13 23:57:38 +02:00
Files
imgproxy/errorreport/honeybadger/honeybadger.go

39 lines
686 B
Go
Raw Normal View History

2021-04-26 17:52:50 +06:00
package honeybadger
import (
"net/http"
"strings"
"github.com/honeybadger-io/honeybadger-go"
2021-09-30 20:23:30 +06:00
"github.com/imgproxy/imgproxy/v3/config"
2021-04-26 17:52:50 +06:00
)
var (
enabled bool
headersReplacer = strings.NewReplacer("-", "_")
)
func Init() {
if len(config.HoneybadgerKey) > 0 {
honeybadger.Configure(honeybadger.Configuration{
APIKey: config.HoneybadgerKey,
Env: config.HoneybadgerEnv,
})
enabled = true
}
}
func Report(err error, req *http.Request) {
if enabled {
headers := make(honeybadger.CGIData)
for k, v := range req.Header {
key := "HTTP_" + headersReplacer.Replace(strings.ToUpper(k))
headers[key] = v[0]
}
honeybadger.Notify(err, req.URL, headers)
}
}