Metrics

The Metrics class tracks timing and counts for key operations. Every container has a metrics instance.

Quick start

const container = boot();
container.writeFile("/test.js", 'console.log("hi")');
container.readFile("/test.js");
await container.run("echo hello");

const m = container.getMetrics();
console.log(m.vfsWriteCount); // 1
console.log(m.vfsReadCount); // 1
console.log(m.commandCount); // 1

MetricsSnapshot

interface MetricsSnapshot {
  resolveCount: number;
  resolveTimeMs: number;
  transpileCount: number;
  transpileTimeMs: number;
  vfsReadCount: number;
  vfsWriteCount: number;
  cacheHits: number;
  cacheMisses: number;
  cacheHitRate: number; // 0–1
  commandCount: number;
  installCount: number;
  installTimeMs: number;
  startedAt: number;
  uptimeMs: number;
}

Methods

MethodDescription
container.getMetrics()Returns a MetricsSnapshot
container.metrics.reset()Reset all counters

What gets tracked

OperationMetric
container.writeFile()vfsWriteCount
container.readFile()vfsReadCount
container.run()commandCount
container.install()installCount, installTimeMs