From b9389511f6cbf680c5bcd33e047173a68245000c Mon Sep 17 00:00:00 2001 From: Andre Medeiros Date: Sat, 12 Mar 2022 14:46:36 -0500 Subject: [PATCH] log requests per account --- internal/reddit/client.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/internal/reddit/client.go b/internal/reddit/client.go index 45cd708..6699f9f 100644 --- a/internal/reddit/client.go +++ b/internal/reddit/client.go @@ -174,6 +174,7 @@ func (rac *AuthenticatedClient) request(r *Request, rh ResponseHandler, empty in return nil, ErrRateLimited } + rac.logRequest() bb, rli, err := rac.doRequest(r) if err != nil && r.retry { @@ -182,6 +183,7 @@ func (rac *AuthenticatedClient) request(r *Request, rh ResponseHandler, empty in time.AfterFunc(backoff, func() { _ = rac.statsd.Incr("reddit.api.retries", r.tags, 0.1) + rac.logRequest() bb, rli, err = rac.doRequest(r) done <- struct{}{} }) @@ -219,6 +221,14 @@ func (rac *AuthenticatedClient) request(r *Request, rh ResponseHandler, empty in return rh(val), nil } +func (rac *AuthenticatedClient) logRequest() error { + if rac.redditId == SkipRateLimiting { + return nil + } + + return rac.redis.HIncrBy(context.Background(), "reddit:requests", rac.redditId, 1).Err() +} + func (rac *AuthenticatedClient) isRateLimited() bool { if rac.redditId == SkipRateLimiting { return false