From 5cdf68bc77c230cc25e82e7bdb585194c763752f Mon Sep 17 00:00:00 2001 From: Kyle Sanderson Date: Sun, 2 Jul 2023 04:58:40 -0700 Subject: [PATCH] fix(logs): release rejections cap line length at 1KB (#997) * fix(debug/release/rejection): cap line length at 1KB from unlimited * flip to a call limit * dont die on bad metainfo parse * death is here to stay, for now. --- internal/domain/release.go | 9 +++++++-- internal/filter/service.go | 2 +- internal/release/service.go | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/internal/domain/release.go b/internal/domain/release.go index f5342cd..582e7b9 100644 --- a/internal/domain/release.go +++ b/internal/domain/release.go @@ -608,9 +608,14 @@ func (r *Release) resetRejections() { r.Rejections = []string{} } -func (r *Release) RejectionsString() string { +func (r *Release) RejectionsString(trim bool) string { if len(r.Rejections) > 0 { - return strings.Join(r.Rejections, ", ") + out := strings.Join(r.Rejections, ", ") + if trim && len(out) > 1024 { + out = out[:1024] + } + + return out } return "" } diff --git a/internal/filter/service.go b/internal/filter/service.go index 7a223b0..00ebced 100644 --- a/internal/filter/service.go +++ b/internal/filter/service.go @@ -328,7 +328,7 @@ func (s *service) CheckFilter(ctx context.Context, f domain.Filter, release *dom rejections, matchedFilter := f.CheckFilter(release) if len(rejections) > 0 { - s.log.Debug().Msgf("filter.Service.CheckFilter: (%v) for release: %v rejections: (%v)", f.Name, release.TorrentName, release.RejectionsString()) + s.log.Debug().Msgf("filter.Service.CheckFilter: (%v) for release: %v rejections: (%v)", f.Name, release.TorrentName, release.RejectionsString(true)) return false, nil } diff --git a/internal/release/service.go b/internal/release/service.go index e5fe91c..b6a91df 100644 --- a/internal/release/service.go +++ b/internal/release/service.go @@ -153,9 +153,9 @@ func (s *service) Process(release *domain.Release) { } if !match { - l.Trace().Msgf("release.Process: indexer: %s, filter: %s release: %s, no match. rejections: %s", release.Indexer, release.FilterName, release.TorrentName, release.RejectionsString()) + l.Trace().Msgf("release.Process: indexer: %s, filter: %s release: %s, no match. rejections: %s", release.Indexer, release.FilterName, release.TorrentName, release.RejectionsString(false)) - l.Debug().Msgf("release rejected: %s", release.RejectionsString()) + l.Debug().Msgf("release rejected: %s", release.RejectionsString(true)) continue }