Skip to main content

Telemetry: Metrics & Log History

The Telemetry workspace brings every metric and log line your fleet produces into one place. Chart fleet-wide health, drill into a single device, search historical logs, and turn any query into an alert rule without leaving the page.

Open it from the sidebar (Telemetry, https://app.admrl.co/telemetry). The old Metrics page now redirects here.

Included vs. the Telemetry add-on

Every organisation gets device and fleet health for the last 24 hours, log search on one device at a time, and the built-in platform alerts. Longer history, log search and live tail across devices, custom alert rules, webhook delivery of alerts and API access need the Telemetry add-on. Without it, longer ranges and fleet-wide log search show as locked. See Plans & Add-ons.

Telemetry > Overview, grouped By fleet over the last 24 hours


Scope and Time Range​

The header controls apply to every tab:

  • Scope picker: narrow the view to one or more fleets and devices. Clear scope returns to the whole organisation.
  • Time range: Last 15 minutes, 1 hour, 6 hours (default), 24 hours, 7 days, or 30 days. Drag across any chart to zoom to an exact window. 7 and 30 days need the Telemetry add-on.
  • Auto-refresh: refreshes every 30 seconds for ranges up to 6 hours, and every 2 minutes for longer ranges.

If your access is limited to specific fleets or devices, a banner shows how many you can see. Queries are always confined to the fleets and devices you are allowed to view; the query text cannot widen that scope.


Tabs​

TabURLWhat it does
Overview/telemetry?tab=overviewPreset health charts for the current scope.
Explore metrics/telemetry?tab=exploreAd-hoc metric queries with charting.
Logs/telemetry?tab=logsHistorical log search, histogram, and live tail.
Alerts/telemetry?tab=alertsFiring and resolved alerts. The tab shows a badge with the number currently firing.
Alert rules/telemetry?tab=rulesCreate and manage your own alert rules. See Alerts & Alert Rules.

Overview​

Preset charts, each switchable between Aggregate, By fleet, and By device:

  • CPU usage (%)
  • Memory usage (%)
  • Disk usage (%)
  • Temperature (°C)
  • Load per core
  • Network in / out (bytes per second)
  • Devices reporting

Explore Metrics​

Pick a metric from the metric browser or write a query in MetricsQL, a PromQL-compatible query language, and click Run.

  • Chart as Line, Area, or Bar, with an optional display unit.
  • A Last value table lists the most recent value of each series.
  • Alert on this opens the alert rule dialog prefilled with your query. If the query has no comparison, > 0 is appended so the rule fires whenever the series is non-zero.

Explore metrics: a CPU query charted as a line, with the Alert on this button visible

Logs​

Search historical logs from every device in scope. The same search is also available per fleet and per device: Fleet > Observe > Logs and Device > Observe > Logs.

  • Type into the message search box, or click Edit raw LogsQL to write a full LogsQL query (Ctrl/Cmd + Enter runs it).
  • Choose how many rows to return (default 500). A histogram above the results shows when matching lines occurred.
  • Live streams new matching lines as they arrive; Stop ends the stream. Long-running streams reconnect automatically every 15 minutes.
  • Alert on this turns the search into a log alert rule.

Logs history: histogram and results for a search

Real-time vs. historical logs

The device Logs page and Fleet > Observe > Logs search stored history and can follow new lines with Live. See Logs.


Telemetry on Fleet and Device Pages​

The same tools are embedded in fleet and device views:

  • Fleet > Observe > Telemetry (/fleets/<fleet-id>/health/telemetry): metrics grouped by device across the fleet.
  • Device > Telemetry: metrics and queries for that one device.

Both have sub-tabs for Metrics, Custom and Query. Log search is on the Logs pages. They default to the last 6 hours.

Fleet &gt; Telemetry tab, Metrics sub-tab, grouped by device

Device &gt; Telemetry tab


Access​

Access to telemetry is controlled by Roles & Permissions:

Identity / ScopeWhat they can query
Organisation-scoped roles with View telemetry and logs (Owner, Administrator, Engineer, Technician, Viewer)All telemetry across the entire organisation.
Identities with fleet or device access (View fleets and devices)Telemetry only for the specific fleets and devices they can view.
Service accountsCan query organisation-wide telemetry if assigned a role with View telemetry and logs at organisation scope; otherwise restricted to their permitted fleets and devices.

Permission changes take up to about 30 seconds to apply. Telemetry queries keep working while an organisation is billing-locked, because they are read-only.


API​

Telemetry is available to service accounts and API tokens under /v1/telemetry with the Telemetry add-on; without it these requests return 402 with reason telemetry_api (see Plans & Add-ons). Every request is confined to the caller's scope.

EndpointPurpose
GET /v1/telemetry/scopeReturns the caller's effective scope: org_wide, fleet_ids, device_ids.
GET|POST /v1/telemetry/metrics/queryInstant metric query (Prometheus-compatible).
GET|POST /v1/telemetry/metrics/query_rangeRange metric query.
GET|POST /v1/telemetry/metrics/series, /labels, /label/{name}/valuesMetric discovery.
GET|POST /v1/telemetry/logs/queryLog query (LogsQL). Results are newline-delimited JSON.
GET|POST /v1/telemetry/logs/hits, /stats_query, /stats_query_range, /facets, /field_names, /field_values, /streamsLog aggregation and discovery.
GET|POST /v1/telemetry/logs/tailLive log tail (closes after 15 minutes).

Narrow any request with scope_fleet_id and scope_device_id (repeatable or comma-separated, up to 500 IDs). A fleet or device you cannot see returns 404.

Limits: log queries return 1,000 rows by default and at most 10,000; queries time out after 60 seconds.

# Average CPU per device in one fleet, last 6 hours, 5-minute steps
curl -sS "https://api.admrl.co/v1/telemetry/metrics/query_range" \
-H "Authorization: Bearer $ADMIRAL_TOKEN" \
-H "X-Organization-ID: $ADMIRAL_ORG" \
--data-urlencode 'query=avg by (device_id) (edge_cpu_usagepercent)' \
--data-urlencode "start=$(( $(date +%s) - 21600 ))" \
--data-urlencode "end=$(date +%s)" \
--data-urlencode 'step=300s' \
--data-urlencode "scope_fleet_id=$FLEET_ID"

Device metrics are prefixed edge_ (for example edge_cpu_usagepercent, edge_memory_usagepercent, edge_disk_usagepercent, edge_system_temperature, edge_network_totalrxbytes) and carry device_id and fleet_id labels. Use Explore metrics to browse the full list.

Telemetry queries are not written to the audit log.