fix(storage): surface all silent errors with structured logging
- Inject *slog.Logger into HybridStore, PocketBaseStore, and pbClient - Fix credential defaults in main.go (changeme123 / admin) to match docker-compose - listOne/listAll/upsert/deleteWhere now return errors on non-2xx HTTP status - WriteChapter: log warn instead of discarding UpsertChapterIdx error - MetadataMtime, GetAudioCache, GetProgress: log warn on PocketBase failures - EnsureCollections: log info/debug/warn per outcome instead of _ = err - CountChapterIdx: log warn on failure instead of silently returning 0 - server: log warn when SetAudioCache fails after audio generation - NewHybridStore: add explicit Ping() before EnsureCollections for fast-fail on bad credentials
This commit is contained in:
@@ -99,8 +99,8 @@ func run(log *slog.Logger) error {
|
||||
// ── Storage backends ────────────────────────────────────────────────────
|
||||
minioCfg := storage.MinioConfig{
|
||||
Endpoint: envOr("MINIO_ENDPOINT", "localhost:9000"),
|
||||
AccessKey: envOr("MINIO_ACCESS_KEY", "minioadmin"),
|
||||
SecretKey: envOr("MINIO_SECRET_KEY", "minioadmin"),
|
||||
AccessKey: envOr("MINIO_ACCESS_KEY", "admin"),
|
||||
SecretKey: envOr("MINIO_SECRET_KEY", "changeme123"),
|
||||
UseSSL: strings.ToLower(os.Getenv("MINIO_USE_SSL")) == "true",
|
||||
BucketChapters: envOr("MINIO_BUCKET_CHAPTERS", "libnovel-chapters"),
|
||||
BucketAudio: envOr("MINIO_BUCKET_AUDIO", "libnovel-audio"),
|
||||
@@ -108,13 +108,13 @@ func run(log *slog.Logger) error {
|
||||
pbCfg := storage.PocketBaseConfig{
|
||||
BaseURL: envOr("POCKETBASE_URL", "http://localhost:8090"),
|
||||
AdminEmail: envOr("POCKETBASE_EMAIL", "admin@libnovel.local"),
|
||||
AdminPassword: envOr("POCKETBASE_PASSWORD", "adminpassword"),
|
||||
AdminPassword: envOr("POCKETBASE_PASSWORD", "changeme123"),
|
||||
}
|
||||
|
||||
ctx, stop := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM)
|
||||
defer stop()
|
||||
|
||||
store, err := storage.NewHybridStore(ctx, pbCfg, minioCfg)
|
||||
store, err := storage.NewHybridStore(ctx, pbCfg, minioCfg, log)
|
||||
if err != nil {
|
||||
return fmt.Errorf("storage init failed: %w", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user