fix(observabillity): include otel logs
Some checks failed
Build Docker Image / Build-Docker-Image (push) Failing after 4m29s

This commit is contained in:
2025-06-07 15:12:18 +02:00
parent e65146c71c
commit 661a3ba79f
26 changed files with 230 additions and 184 deletions

View File

@@ -1,16 +1,15 @@
package handler
import (
"errors"
"log/slog"
"net/http"
"net/url"
"spend-sparrow/internal/handler/middleware"
"spend-sparrow/internal/log"
"spend-sparrow/internal/service"
"spend-sparrow/internal/template/auth"
"spend-sparrow/internal/types"
"spend-sparrow/internal/utils"
"errors"
"net/http"
"net/url"
"time"
)
@@ -168,7 +167,7 @@ func (handler AuthImpl) handleVerifyResendComp() http.HandlerFunc {
_, err := w.Write([]byte("<p class=\"mt-8\">Verification email sent</p>"))
if err != nil {
log.L.Error("Could not write response", "err", err)
slog.Error("Could not write response", "err", err)
}
}
}
@@ -203,13 +202,13 @@ func (handler AuthImpl) handleSignUp() http.HandlerFunc {
var password = r.FormValue("password")
_, err := utils.WaitMinimumTime(securityWaitDuration, func() (any, error) {
log.L.Info("signing up", "email", email)
slog.Info("signing up", "email", email)
user, err := handler.service.SignUp(email, password)
if err != nil {
return nil, err
}
log.L.Info("Sending verification email", "to", user.Email)
slog.Info("Sending verification email", "to", user.Email)
go handler.service.SendVerificationMail(user.Id, user.Email)
return nil, nil
})
@@ -389,7 +388,7 @@ func (handler AuthImpl) handleForgotPasswordResponseComp() http.HandlerFunc {
pageUrl, err := url.Parse(r.Header.Get("Hx-Current-Url"))
if err != nil {
log.L.Error("Could not get current URL", "err", err)
slog.Error("Could not get current URL", "err", err)
utils.TriggerToastWithStatus(w, r, "error", "Internal Server Error", http.StatusInternalServerError)
return
}

View File

@@ -1,13 +1,12 @@
package middleware
import (
"log/slog"
"net/http"
"strings"
"spend-sparrow/internal/log"
"spend-sparrow/internal/service"
"spend-sparrow/internal/types"
"spend-sparrow/internal/utils"
"strings"
)
type csrfResponseWriter struct {
@@ -46,7 +45,7 @@ func CrossSiteRequestForgery(auth service.Auth) func(http.Handler) http.Handler
csrfToken := r.Header.Get("Csrf-Token")
if session == nil || csrfToken == "" || !auth.IsCsrfTokenValid(csrfToken, session.Id) {
log.L.Info("CSRF-Token not correct", "token", csrfToken)
slog.Info("CSRF-Token not correct", "token", csrfToken)
if r.Header.Get("Hx-Request") == "true" {
utils.TriggerToastWithStatus(w, r, "error", "CSRF-Token not correct", http.StatusBadRequest)
} else {

View File

@@ -4,10 +4,9 @@ import (
"compress/gzip"
"errors"
"io"
"log/slog"
"net/http"
"strings"
"spend-sparrow/internal/log"
)
type gzipResponseWriter struct {
@@ -34,7 +33,7 @@ func Gzip(next http.Handler) http.Handler {
err := gz.Close()
if err != nil && !errors.Is(err, http.ErrBodyNotAllowed) {
log.L.Error("Gzip: could not close Writer", "err", err)
slog.Error("Gzip: could not close Writer", "err", err)
}
})
}

View File

@@ -1,8 +1,8 @@
package middleware
import (
"log/slog"
"net/http"
"spend-sparrow/internal/log"
"time"
)
@@ -20,15 +20,13 @@ func Log(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
start := time.Now()
log.L.Info("request pattern", "pattern", r.Pattern)
wrapped := &WrappedWriter{
ResponseWriter: w,
StatusCode: http.StatusOK,
}
next.ServeHTTP(wrapped, r)
log.L.Info("request",
slog.Info("request",
"remoteAddr", r.RemoteAddr,
"status", wrapped.StatusCode,
"method", r.Method,

View File

@@ -2,7 +2,6 @@ package middleware
import (
"net/http"
"spend-sparrow/internal/types"
)

View File

@@ -1,8 +1,8 @@
package handler
import (
"log/slog"
"net/http"
"spend-sparrow/internal/log"
"spend-sparrow/internal/template"
"spend-sparrow/internal/template/auth"
"spend-sparrow/internal/types"
@@ -22,7 +22,7 @@ func (render *Render) RenderWithStatus(r *http.Request, w http.ResponseWriter, c
w.WriteHeader(status)
err := comp.Render(r.Context(), w)
if err != nil {
log.L.Error("Failed to render layout", "err", err)
slog.Error("Failed to render layout", "err", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
}

View File

@@ -105,8 +105,6 @@ func (h TransactionImpl) handleTransactionItemComp() http.HandlerFunc {
return
}
// log.L.Info("request", "pattern", r.Pattern, "path", r.URL.Path, "method", r.Method, "path", r.URL.Path)
accounts, err := h.account.GetAll(user)
if err != nil {
handleError(w, r, err)