Flares Developer Docs

Logs & metrics

Per-invocation logs, request ids, latency percentiles, the tester.

Every invocation leaves a line

Functions → Logs lists invocations newest first: timestamp, request id, method, status, duration, and anything your code printed. Search takes a full request id or an error fragment.

Logs: request id, status, duration, captured output.
Logs: request id, status, duration, captured output.

Printing from your code

return function (Request $request): Response {
    error_log('validating shipment');     // → the log line
    echo "processed\n";                  // → also the log line, NOT the body

    return Response::json(['ok' => true]);
};

Output is captured, never mixed into the response. It is truncated at 16KB per invocation.

Nothing is redacted for you. Do not print secrets, tokens or personal data you would not want in a log a teammate can read.

Metrics

The Overview screen reports, over the last 7 days:

  • Requests and errors — counted from invocations.
  • p50 / p95 / p99 latency — computed from real duration samples, not estimated.

Duration and memory are operational measurements. They tell you where to optimise; they never appear on your invoice. Functions billing →

The built-in tester

Overview has a tester: pick a method, add headers and a body, press Run, and see the status, response, duration and request id. It runs the real path — sandbox, logs and meter — so a test invocation is a billable request like any other. The form says so; there is no hidden free lane and no hidden charge.