| title | DenoRuntimeMetrics | |
|---|---|---|
| description | Collect Deno runtime health metrics such as memory usage and process uptime. | |
| supported |
|
This integration only works in the Deno runtime.
Import name: Sentry.denoRuntimeMetricsIntegration
The denoRuntimeMetricsIntegration periodically collects Deno runtime health metrics and sends them to Sentry. Metrics include memory usage and process uptime.
import * as Sentry from "@sentry/deno";
Sentry.init({
dsn: "___PUBLIC_DSN___",
integrations: [Sentry.denoRuntimeMetricsIntegration()],
});The following metrics are emitted every 30 seconds by default:
| Metric | Type | Unit | Description |
|---|---|---|---|
deno.runtime.mem.rss |
gauge | byte | Resident Set Size — actual process memory footprint |
deno.runtime.mem.heap_used |
gauge | byte | V8 heap currently in use |
deno.runtime.mem.heap_total |
gauge | byte | Total V8 heap allocated |
deno.runtime.process.uptime |
counter | second | Cumulative process uptime |
Unlike the Node.js equivalent, CPU and event loop metrics are not available because Deno does not expose process.cpuUsage(), performance.eventLoopUtilization(), or monitorEventLoopDelay.
Type: object
Configure which metrics to collect. You can enable opt-in metrics or disable default ones.
Opt-in metrics (off by default):
Sentry.denoRuntimeMetricsIntegration({
collect: {
memExternal: true, // deno.runtime.mem.external
},
});Disabling default metrics:
Sentry.denoRuntimeMetricsIntegration({
collect: {
uptime: false,
},
});Type: number
The interval in milliseconds between metric collections. Defaults to 30000 (30 seconds).
Sentry.denoRuntimeMetricsIntegration({
collectionIntervalMs: 60_000,
});