Логирование: ревью всего кода и рефакторинг в соответствии с конвенциями
This commit is contained in:
@@ -13,6 +13,9 @@ import (
|
||||
"net/url"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"git.vakhrushev.me/av/jellybit/internal/logctx"
|
||||
"git.vakhrushev.me/av/jellybit/internal/logging"
|
||||
)
|
||||
|
||||
const defaultTimeout = 10 * time.Second
|
||||
@@ -77,17 +80,22 @@ func (c *Client) RefreshLibraries(ctx context.Context) error {
|
||||
}
|
||||
req.Header.Set("X-Emby-Token", c.apiKey)
|
||||
|
||||
start := time.Now()
|
||||
log := logctx.FromOr(ctx, c.log)
|
||||
call := logging.ExtCall{Service: logging.ServiceJellyfin, Operation: "library/refresh", Start: time.Now()}
|
||||
resp, err := c.hc.Do(req)
|
||||
if err != nil {
|
||||
call.Failure(log, err)
|
||||
return fmt.Errorf("jellyfin: refresh: %w", err)
|
||||
}
|
||||
defer func() { _ = resp.Body.Close() }()
|
||||
call.Status = resp.StatusCode
|
||||
body, _ := io.ReadAll(io.LimitReader(resp.Body, 1<<10))
|
||||
if resp.StatusCode < 200 || resp.StatusCode >= 300 {
|
||||
return fmt.Errorf("jellyfin: refresh: status %d body %q",
|
||||
err := fmt.Errorf("jellyfin: refresh: status %d body %q",
|
||||
resp.StatusCode, strings.TrimSpace(string(body)))
|
||||
call.Failure(log, err)
|
||||
return err
|
||||
}
|
||||
c.log.Info("jellyfin: library refresh triggered", "duration", time.Since(start))
|
||||
call.Success(log)
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user