mirror of
https://github.com/Luzifer/mondash.git
synced 2024-12-23 20:41:17 +00:00
Knut Ahlers
f3c31476b4
* Update dependencies * Improve code quality * Apply linter advices * Add gzip compression to all requests * Rework frontend * Apply bootswatch theme * Hide historic details when not requested * Remove debugging header * Apply auto-migration of meta fields * Fix broken "last update" time * Pre-sort metrics for frontend / API * Add tooltip with absolute time * Some design fixes * Add tooltip with absolute date to last ok * Implement filters * Apply eslint --fix * Remove unused var * Remove remains of old template engine * Update baked in assets * Update Dockerfile for new version Signed-off-by: Knut Ahlers <knut@ahlers.me>
37 lines
721 B
Go
37 lines
721 B
Go
package accessLogger
|
|
|
|
import (
|
|
"fmt"
|
|
"net/http"
|
|
"strconv"
|
|
)
|
|
|
|
type AccessLogResponseWriter struct {
|
|
StatusCode int
|
|
Size int
|
|
|
|
http.ResponseWriter
|
|
}
|
|
|
|
func New(res http.ResponseWriter) *AccessLogResponseWriter {
|
|
return &AccessLogResponseWriter{
|
|
StatusCode: 200,
|
|
Size: 0,
|
|
ResponseWriter: res,
|
|
}
|
|
}
|
|
|
|
func (a *AccessLogResponseWriter) Write(out []byte) (int, error) {
|
|
s, err := a.ResponseWriter.Write(out)
|
|
a.Size += s
|
|
return s, err
|
|
}
|
|
|
|
func (a *AccessLogResponseWriter) WriteHeader(code int) {
|
|
a.StatusCode = code
|
|
a.ResponseWriter.WriteHeader(code)
|
|
}
|
|
|
|
func (a *AccessLogResponseWriter) HTTPResponseType() string {
|
|
return fmt.Sprintf("%cxx", strconv.FormatInt(int64(a.StatusCode), 10)[0])
|
|
}
|