Realm runtime and JVM metrics
const url = 'http://localhost:11044/api/v1/admin/realms/observability/metrics';const options = {method: 'GET', headers: {'X-Embabel-Api-Key': '<X-Embabel-Api-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url http://localhost:11044/api/v1/admin/realms/observability/metrics \ --header 'X-Embabel-Api-Key: <X-Embabel-Api-Key>'A point-in-time read of the meters this process keeps for realm dispatch, realm builds, and the JVM. Values are cumulative since start.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”The current snapshot
Point-in-time read of the realm runtime and JVM meters, answered by GET /admin/realms/observability/metrics. Counts and totals are cumulative since the process started.
object
Realm wasm build meters
object
One entry per build outcome, sorted by outcome; every outcome is registered at zero, so entries with count 0 are normal
One outcome of a timed meter, combined across every realm, function and host series that carries it
object
Number of recordings with this outcome since the process started
Longest single duration in milliseconds, as Micrometer’s decaying max: recent recordings only, not since start, and 0 after a quiet spell
Value of the meter’s outcome tag, e.g. ok, guest_error or timeout for a dispatch; built, cache_hit or failed for a build
Sum of their durations since the process started, in milliseconds
False when the build meters exist but no build attempt has been recorded yet, which tells nothing-happened-yet apart from nothing-records-this
Size of the published handlers.wasm per build attempt that ended with a bundle on disk, in bytes; null only when the meter is not registered
object
Unit of total and max, e.g. bytes; null when the meter declares none
Number of amounts recorded since the process started
Largest single amount, in baseUnit, as Micrometer’s decaying max: recent recordings only, not since start
Sum of every amount recorded since the process started, in baseUnit
Realm function dispatch meters
object
One entry per dispatch outcome that has been recorded, sorted by outcome; empty until the first dispatch
One outcome of a timed meter, combined across every realm, function and host series that carries it
object
Number of recordings with this outcome since the process started
Longest single duration in milliseconds, as Micrometer’s decaying max: recent recordings only, not since start, and 0 after a quiet spell
Value of the meter’s outcome tag, e.g. ok, guest_error or timeout for a dispatch; built, cache_hit or failed for a build
Sum of their durations since the process started, in milliseconds
Number of host calls guests have made back into the platform since the process started
Peak guest memory per dispatch, in bytes; null until a dispatch has reported one
object
Unit of total and max, e.g. bytes; null when the meter declares none
Number of amounts recorded since the process started
Largest single amount, in baseUnit, as Micrometer’s decaying max: recent recordings only, not since start
Sum of every amount recorded since the process started, in baseUnit
JVM memory, thread, garbage-collection and CPU readings
object
Recent CPU usage of this process as a fraction from 0 to 1 of all available processors; null when the meter is absent
Number of garbage-collection pauses since the process started
Total time spent in garbage-collection pauses since the process started, in milliseconds
Memory in use across every heap and non-heap area, in bytes; null when the JVM meters are absent
Live thread count, daemon and non-daemon; null when the meter is absent
Example generated
{ "build": { "byOutcome": [ { "count": 1, "maxMillis": 1, "outcome": "example", "totalMillis": 1 } ], "recorded": true, "wasmBytes": { "baseUnit": "example", "count": 1, "max": 1, "total": 1 } }, "dispatch": { "byOutcome": [ { "count": 1, "maxMillis": 1, "outcome": "example", "totalMillis": 1 } ], "hostCalls": 1, "memoryBytes": { "baseUnit": "example", "count": 1, "max": 1, "total": 1 } }, "jvm": { "cpuUsage": 1, "gcPauseCount": 1, "gcPauseTotalMillis": 1, "memoryUsedBytes": 1, "threadsLive": 1 }}
