fix(observabillity): include otel logs
All checks were successful
Build Docker Image / Build-Docker-Image (push) Successful in 5m33s
Build and Push Docker Image / Build-And-Push-Docker-Image (push) Successful in 5m4s

This commit was merged in pull request #158.
This commit is contained in:
2025-06-07 15:12:18 +02:00
parent e65146c71c
commit 63ade5916e
26 changed files with 231 additions and 185 deletions

View File

@@ -2,7 +2,7 @@ package types
import (
"errors"
"spend-sparrow/internal/log"
"log/slog"
)
var (
@@ -10,8 +10,7 @@ var (
)
type Settings struct {
Port string
OtelEnabled bool
Port string
BaseUrl string
Environment string
@@ -41,27 +40,27 @@ func NewSettingsFromEnv(env func(string) string) (*Settings, error) {
settings := &Settings{
Port: env("PORT"),
OtelEnabled: env("OTEL_ENABLED") == "true",
BaseUrl: env("BASE_URL"),
Environment: env("ENVIRONMENT"),
Smtp: smtp,
}
if settings.BaseUrl == "" {
log.L.Error("BASE_URL must be set")
slog.Error("BASE_URL must be set")
return nil, ErrMissingConfig
}
if settings.Port == "" {
log.L.Error("PORT must be set")
slog.Error("PORT must be set")
return nil, ErrMissingConfig
}
if settings.Environment == "" {
log.L.Error("ENVIRONMENT must be set")
slog.Error("ENVIRONMENT must be set")
return nil, ErrMissingConfig
}
log.L.Info("settings read", "BASE_URL", settings.BaseUrl)
log.L.Info("settings read", "ENVIRONMENT", settings.Environment)
slog.Info("settings read", "BASE_URL", settings.BaseUrl)
slog.Info("settings read", "ENVIRONMENT", settings.Environment)
slog.Info("settings read", "ENVIRONMENT", settings.Environment)
return settings, nil
}
@@ -77,29 +76,33 @@ func getSmtpSettings(env func(string) string) (*SmtpSettings, error) {
}
if smtp.Host == "" {
log.L.Error("SMTP_HOST must be set")
slog.Error("SMTP_HOST must be set")
return nil, ErrMissingConfig
}
if smtp.Port == "" {
log.L.Error("SMTP_PORT must be set")
slog.Error("SMTP_PORT must be set")
return nil, ErrMissingConfig
}
if smtp.User == "" {
log.L.Error("SMTP_USER must be set")
slog.Error("SMTP_USER must be set")
return nil, ErrMissingConfig
}
if smtp.Pass == "" {
log.L.Error("SMTP_PASS must be set")
slog.Error("SMTP_PASS must be set")
return nil, ErrMissingConfig
}
if smtp.FromMail == "" {
log.L.Error("SMTP_FROM_MAIL must be set")
slog.Error("SMTP_FROM_MAIL must be set")
return nil, ErrMissingConfig
}
if smtp.FromName == "" {
log.L.Error("SMTP_FROM_NAME must be set")
slog.Error("SMTP_FROM_NAME must be set")
return nil, ErrMissingConfig
}
return &smtp, nil
}
func IsOtelEnabled(env func(string) string) bool {
return env("OTEL_ENABLED") == "true"
}