From d1c3a84ba160df49552c509a60bff98effdb229d Mon Sep 17 00:00:00 2001 From: Chirag Aggarwal Date: Thu, 31 Jul 2025 16:40:40 +0530 Subject: [PATCH] chore: update to use gauge --- app/controllers/shared/api.php | 14 ++++++++------ app/init/resources.php | 16 ++++------------ 2 files changed, 12 insertions(+), 18 deletions(-) diff --git a/app/controllers/shared/api.php b/app/controllers/shared/api.php index ca7fc4e6ec..e1641040c8 100644 --- a/app/controllers/shared/api.php +++ b/app/controllers/shared/api.php @@ -31,7 +31,7 @@ use Utopia\Database\Helpers\Role; use Utopia\Database\Validator\Authorization; use Utopia\Queue\Publisher; use Utopia\System\System; -use Utopia\Telemetry\Counter; +use Utopia\Telemetry\Gauge; use Utopia\Validator\WhiteList; $parseLabel = function (string $label, array $responsePayload, array $requestParams, Document $user) { @@ -422,9 +422,9 @@ App::init() ->inject('apiKey') ->inject('plan') ->inject('devKey') - ->inject('cacheHitsCounter') - ->inject('cacheMissesCounter') - ->action(function (App $utopia, Request $request, Response $response, Document $project, Document $user, Publisher $publisher, Event $queueForEvents, Messaging $queueForMessaging, Audit $queueForAudits, Delete $queueForDeletes, EventDatabase $queueForDatabase, Build $queueForBuilds, StatsUsage $queueForStatsUsage, Database $dbForProject, callable $timelimit, Document $resourceToken, string $mode, ?Key $apiKey, array $plan, Document $devKey, Counter $cacheHitsCounter, Counter $cacheMissesCounter) use ($usageDatabaseListener, $eventDatabaseListener) { + ->inject('cacheHitsGauge') + ->inject('cacheMissesGauge') + ->action(function (App $utopia, Request $request, Response $response, Document $project, Document $user, Publisher $publisher, Event $queueForEvents, Messaging $queueForMessaging, Audit $queueForAudits, Delete $queueForDeletes, EventDatabase $queueForDatabase, Build $queueForBuilds, StatsUsage $queueForStatsUsage, Database $dbForProject, callable $timelimit, Document $resourceToken, string $mode, ?Key $apiKey, array $plan, Document $devKey, Gauge $cacheHitsCounter, Gauge $cacheMissesCounter) use ($usageDatabaseListener, $eventDatabaseListener) { $route = $utopia->getRoute(); @@ -622,12 +622,14 @@ App::init() ->addHeader('Cache-Control', sprintf('private, max-age=%d', $timestamp)) ->addHeader('X-Appwrite-Cache', 'hit') ->setContentType($cacheLog->getAttribute('mimeType')); - $cacheHitsCounter->add(1); + $cacheHitsCounter->record(1, [ + 'resourceType' => $type, + ]); if (!$isImageTransformation || !$isDisabled) { $response->send($data); } } else { - $cacheMissesCounter->add(1); + $cacheMissesCounter->record(1); $response ->addHeader('Cache-Control', 'no-cache, no-store, must-revalidate') ->addHeader('Pragma', 'no-cache') diff --git a/app/init/resources.php b/app/init/resources.php index 5aa8727e44..c68a8d389d 100644 --- a/app/init/resources.php +++ b/app/init/resources.php @@ -1010,18 +1010,10 @@ App::setResource('httpReferrerSafe', function (Request $request, string $httpRef return $referrer; }, ['request', 'httpReferrer', 'platforms', 'dbForPlatform', 'project', 'utopia']); -App::setResource('cacheHitsCounter', function (Telemetry $telemetry) { - return $telemetry->createCounter( - 'cache_hits_total', - 'hits', - 'Total number of cache hits' - ); +App::setResource('cacheHitsGauge', function (Telemetry $telemetry) { + return $telemetry->createGauge('cache.hits.total'); }, ['telemetry']); -App::setResource('cacheMissesCounter', function (Telemetry $telemetry) { - return $telemetry->createCounter( - 'cache_misses_total', - 'misses', - 'Total number of cache misses' - ); +App::setResource('cacheMissesGauge', function (Telemetry $telemetry) { + return $telemetry->createGauge('cache.misses.total'); }, ['telemetry']);