From c8be454af652caee7b3877c0dc9c715bb6ee806f Mon Sep 17 00:00:00 2001
From: Sergei Zharinov <zharinov@users.noreply.github.com>
Date: Fri, 12 Jan 2024 02:38:36 -0300
Subject: [PATCH] feat: Add `totalMs` for package cache stats (#26610)

---
 lib/workers/repository/stats.spec.ts |  2 ++
 lib/workers/repository/stats.ts      | 11 +++++++++--
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/lib/workers/repository/stats.spec.ts b/lib/workers/repository/stats.spec.ts
index ba92008ccf..36033919e7 100644
--- a/lib/workers/repository/stats.spec.ts
+++ b/lib/workers/repository/stats.spec.ts
@@ -173,12 +173,14 @@ describe('workers/repository/stats', () => {
             "count": 4,
             "maxMs": 100,
             "medianMs": 20,
+            "totalMs": 160,
           },
           "set": {
             "avgMs": 70,
             "count": 3,
             "maxMs": 110,
             "medianMs": 80,
+            "totalMs": 210,
           },
         }
       `);
diff --git a/lib/workers/repository/stats.ts b/lib/workers/repository/stats.ts
index f23ab29c93..157c4b3491 100644
--- a/lib/workers/repository/stats.ts
+++ b/lib/workers/repository/stats.ts
@@ -10,6 +10,7 @@ interface CacheStats {
   avgMs?: number;
   medianMs?: number;
   maxMs?: number;
+  totalMs?: number;
 }
 
 export function printLookupStats(): void {
@@ -46,8 +47,11 @@ export function printRequestStats(): void {
     },
   };
   if (packageCacheGets.length) {
+    packageCacheStats.get.totalMs = Math.round(
+      packageCacheGets.reduce((a, b) => a + b, 0),
+    );
     packageCacheStats.get.avgMs = Math.round(
-      packageCacheGets.reduce((a, b) => a + b, 0) / packageCacheGets.length,
+      packageCacheStats.get.totalMs / packageCacheGets.length,
     );
     if (packageCacheGets.length > 1) {
       packageCacheStats.get.medianMs =
@@ -57,8 +61,11 @@ export function printRequestStats(): void {
     }
   }
   if (packageCacheSets.length) {
+    packageCacheStats.set.totalMs = Math.round(
+      packageCacheSets.reduce((a, b) => a + b, 0),
+    );
     packageCacheStats.set.avgMs = Math.round(
-      packageCacheSets.reduce((a, b) => a + b, 0) / packageCacheSets.length,
+      packageCacheStats.set.totalMs / packageCacheSets.length,
     );
     if (packageCacheSets.length > 1) {
       packageCacheStats.set.medianMs =
-- 
GitLab