Skip to content

Metrics, logs and limits#

Recent invocations#

Functions → a function → Invocations and logs, or

astra astraeus functions invocations weather

The last 200 calls the cluster relayed: the invocation's id, the target and version, the trigger (api, http, schedule, tool), the instance, when, how long the caller waited (a cold start and a wait in the queue included), the outcome (ok, error, timeout, rejected, unavailable) and the status. Never the input or the answer. They are kept in memory: a restart of the cluster forgets them. Calls made at your edge machines' URLs are not in this list; they are in the metrics below.

Logs of one invocation#

Every line a call writes (print, console.log, a traceback) is prefixed with its invocation's id, [inv-…]. The id is in the answer's x-astraeus-invocation-id header.

astra astraeus functions logs weather --invocation inv-5d1f0a9c2e7b4410
== fn-weather-v1-0-0 (v1, on gpu-07)
06:00:02 [inv-5d1f0a9c2e7b4410] looking up Lisbon

Logs stay on the machines: they are read from the instances' machines when you ask, and an instance that has stopped took its log with it. Without --invocation, the instances' latest lines.

Metrics#

Functions → a function → Metrics, or astra astraeus functions metrics weather, or GET /v1/functions/{name}/metrics:

Number What
invocations, errors, timeouts Calls each instance served since it started, and how many failed or ran past the timeout.
rejected Calls an instance refused because all its slots were taken.
in_flight / capacity Calls running now, and how many the instances serve at once.
p50_ms, p95_ms, p99_ms Each instance's durations over its last 1024 calls; the totals give the slowest instance's.
Waiting, refused (busy) Per target, as the cluster relayed them: calls in the queue now, and calls refused for a full queue.

The instances' numbers are scraped from them every 15 s, as any run's metrics; an instance's counts start again when it does.

Limits#

What Limit
Name lower-case letters, digits and -, starting with a letter; 30 characters
Code one file, 256 KiB
Packages 100, each a line of at most 200 characters, no options
Variables / Credentials 64 / 16
Timeout 1–900 s (default 30)
Memory 128–65536 MiB (default 512)
Input 6 MiB (API, CLI, edge URLs); 1 MB at the hosted URL
Calls at once per instance 1–1000 (default 8)
Instances 1–64 (default 4)
Queue 0–10000 calls (default 64)
Aliases 32
Cold start a call waits at most 120 s for an instance
Hosted URL 90 s per call
Recent invocations the last 200, in memory