Skip to content

Commit 92cd6ab

Browse files
committed
Stop logging unimportant errors
1 parent 9ccfd8e commit 92cd6ab

File tree

2 files changed

+14
-9
lines changed

2 files changed

+14
-9
lines changed

src/apiutils.nim

+11-9
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import experimental/types/common
77
const
88
rlRemaining = "x-rate-limit-remaining"
99
rlReset = "x-rate-limit-reset"
10+
errorsToSkip = {doesntExist, tweetNotFound, timeout, unauthorized, badRequest}
1011

1112
var pool: HttpPool
1213

@@ -76,14 +77,15 @@ template fetchImpl(result, fetchBody) {.dirty.} =
7677

7778
if result.startsWith("{\"errors"):
7879
let errors = result.fromJson(Errors)
79-
echo "Fetch error, API: ", api, ", errors: ", errors
80-
if errors in {expiredToken, badToken, locked}:
81-
invalidate(session)
82-
raise rateLimitError()
83-
elif errors in {rateLimited}:
84-
# rate limit hit, resets after 24 hours
85-
setLimited(session, api)
86-
raise rateLimitError()
80+
if errors notin errorsToSkip:
81+
echo "Fetch error, API: ", api, ", errors: ", errors
82+
if errors in {expiredToken, badToken, locked}:
83+
invalidate(session)
84+
raise rateLimitError()
85+
elif errors in {rateLimited}:
86+
# rate limit hit, resets after 24 hours
87+
setLimited(session, api)
88+
raise rateLimitError()
8789
elif result.startsWith("429 Too Many Requests"):
8890
echo "[sessions] 429 error, API: ", api, ", session: ", session.id
8991
session.apis[api].remaining = 0
@@ -126,7 +128,7 @@ proc fetch*(url: Uri; api: Api): Future[JsonNode] {.async.} =
126128
result = newJNull()
127129

128130
let error = result.getError
129-
if error != null:
131+
if error != null and error notin errorsToSkip:
130132
echo "Fetch error, API: ", api, ", error: ", error
131133
if error in {expiredToken, badToken, locked}:
132134
invalidate(session)

src/types.nim

+3
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,10 @@ type
4545
noUserMatches = 17
4646
protectedUser = 22
4747
missingParams = 25
48+
timeout = 29
4849
couldntAuth = 32
4950
doesntExist = 34
51+
unauthorized = 37
5052
invalidParam = 47
5153
userNotFound = 50
5254
suspended = 63
@@ -56,6 +58,7 @@ type
5658
tweetNotFound = 144
5759
tweetNotAuthorized = 179
5860
forbidden = 200
61+
badRequest = 214
5962
badToken = 239
6063
locked = 326
6164
noCsrf = 353

0 commit comments

Comments
 (0)