Skip to content

Latest commit

 

History

History
82 lines (57 loc) · 2.26 KB

File metadata and controls

82 lines (57 loc) · 2.26 KB
title DenoRuntimeMetrics
description Collect Deno runtime health metrics such as memory usage and process uptime.
supported
javascript.deno

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()],
});

Default Metrics

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.

Options

collect

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,
  },
});

collectionIntervalMs

Type: number

The interval in milliseconds between metric collections. Defaults to 30000 (30 seconds).

Sentry.denoRuntimeMetricsIntegration({
  collectionIntervalMs: 60_000,
});