package main import ( "context" "log/slog" "os" "spend-sparrow/internal" "github.com/joho/godotenv" _ "github.com/mattn/go-sqlite3" "github.com/uptrace/opentelemetry-go-extra/otelsql" "github.com/uptrace/opentelemetry-go-extra/otelsqlx" semconv "go.opentelemetry.io/otel/semconv/v1.10.0" ) func main() { ctx := context.Background() err := godotenv.Load() if err != nil { slog.ErrorContext(ctx, "Error loading .env file") return } db, err := otelsqlx.Open("sqlite3", "./data/spend-sparrow.db", otelsql.WithAttributes(semconv.DBSystemSqlite)) if err != nil { slog.ErrorContext(ctx, "Could not open Database data.db", "err", err) return } defer func() { if err = db.Close(); err != nil { slog.ErrorContext(ctx, "Database close failed", "err", err) } }() if err = internal.Run(context.Background(), db, "", os.Getenv); err != nil { slog.ErrorContext(ctx, "Error running server", "err", err) return } }