Skip to content

Commit 42ebb0d

Browse files
committed
chore: expose new metrics
1 parent 31b335f commit 42ebb0d

File tree

3 files changed

+16
-56
lines changed

3 files changed

+16
-56
lines changed

package-lock.json

Lines changed: 5 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"dependencies": {
5151
"@nodescript/core": "^7.25.2",
5252
"@nodescript/errors": "^1.2.0",
53-
"@nodescript/fetch-undici": "^1.6.2",
53+
"@nodescript/fetch-undici": "^1.7.1",
5454
"@nodescript/http-server": "^2.10.1",
5555
"@nodescript/logger": "^2.0.6",
5656
"@nodescript/metrics": "^1.7.1",

src/main/global/Metrics.ts

Lines changed: 10 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,15 @@
1-
import { fetchStats } from '@nodescript/fetch-undici';
2-
import { DynamicGaugeMetric, metric } from '@nodescript/metrics';
1+
import { fetchMetrics } from '@nodescript/fetch-undici';
2+
import { metric } from '@nodescript/metrics';
33

44
export class Metrics {
55

6-
@metric()
7-
outboundRequestsTotal = new DynamicGaugeMetric(
8-
() => [{ value: fetchStats.requests.total, labels: {} }],
9-
'nodescript_invoke_outbound_requests_total', 'Total outbound requests');
10-
11-
@metric()
12-
outboundRequestsTimeout = new DynamicGaugeMetric(
13-
() => [{ value: fetchStats.requests.timeout, labels: {} }],
14-
'nodescript_invoke_outbound_requests_timeout', 'Total outbound requests timeout');
15-
16-
@metric()
17-
outboundRequestsFailed = new DynamicGaugeMetric(
18-
() => [{ value: fetchStats.requests.failed, labels: {} }],
19-
'nodescript_invoke_outbound_requests_failed', 'Total outbound requests failed');
20-
21-
@metric()
22-
outboundRequestsByStatus = new DynamicGaugeMetric(
23-
() => {
24-
const entries = Object.entries(fetchStats.requests.byStatus);
25-
return entries.map(([status, count]) => {
26-
return {
27-
value: count,
28-
labels: {
29-
status: String(status)
30-
}
31-
};
32-
});
33-
},
34-
'nodescript_invoke_outbound_requests_by_status', 'Total outbound requests by status');
35-
36-
@metric()
37-
dispatcherCacheHits = new DynamicGaugeMetric(
38-
() => [{ value: fetchStats.dispatcherCache.hits, labels: {} }],
39-
'nodescript_invoke_dispatcher_cache_hits', 'Total dispatcher cache hits');
40-
41-
@metric()
42-
dispatcherCacheMisses = new DynamicGaugeMetric(
43-
() => [{ value: fetchStats.dispatcherCache.misses, labels: {} }],
44-
'nodescript_invoke_dispatcher_cache_misses', 'Total dispatcher cache misses');
6+
@metric() requestsTotal = fetchMetrics.requests.total;
7+
@metric() requestsSent = fetchMetrics.requests.sent;
8+
@metric() requestsFailed = fetchMetrics.requests.failed;
9+
@metric() requestsTimeout = fetchMetrics.requests.timeout;
10+
@metric() dispatcherCacheHits = fetchMetrics.dispatcherCache.hits;
11+
@metric() dispatcherCacheMisses = fetchMetrics.dispatcherCache.misses;
12+
@metric() dnsCacheHits = fetchMetrics.dnsCache.hits;
13+
@metric() dnsCacheMisses = fetchMetrics.dnsCache.misses;
4514

4615
}

0 commit comments

Comments
 (0)