corpus

Log | Files | Refs | README | LICENSE

commit 010aefaa2d84053d95aee09a1e93d8ca1c751f3c
parent c7b57b318b5c671aec63a7a9ce6c0a7e7d2de206
Author: mtmn <miro@haravara.org>
Date:   Fri, 24 Apr 2026 19:10:20 +0200

fix: count api in scrobbles metric

Diffstat:
Msrc/Main.purs | 7++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/Main.purs b/src/Main.purs @@ -116,7 +116,7 @@ routeRequest metricsEnabled contexts req url path allUsers res = liftEffect $ ca "/1/submit-listens" -> if IM.method req == "POST" then launchAff_ $ withUserFromToken contexts req res \ctx -> - serveSubmitListens ctx.conn ctx.writeLock req res + serveSubmitListens ctx.slug ctx.conn ctx.writeLock req res else liftEffect $ serveBadRequest res "Method not allowed" _ -> @@ -291,8 +291,8 @@ serveHealthz db res = do void $ writeString w UTF8 $ """{"status":"error","message":""" <> show (Exception.message err) <> "}" end w -serveSubmitListens :: Connection -> AVar Unit -> Request -> Response -> Aff Unit -serveSubmitListens db lock req res = do +serveSubmitListens :: String -> Connection -> AVar Unit -> Request -> Response -> Aff Unit +serveSubmitListens slug db lock req res = do body <- readableToStringUtf8 (IM.toReadable req) case parseJson body >>= decodeJson of Left err -> @@ -301,6 +301,7 @@ serveSubmitListens db lock req res = do let listens = Data.Array.mapMaybe (submitListenToListen listenType) payload withTransaction db lock $ traverse_ (upsertScrobble db) listens liftEffect $ do + Metrics.incSyncScrobbles slug "api" (length listens) setHeader "Content-Type" "application/json" (toOutgoingMessage res) setStatusCode 200 res let w = toWriteable (toOutgoingMessage res)