Skip to content
OutRay

Know whathappened.And why.

Requests, traces, logs, and metrics. Connected, so you can stop guessing.

checkout-api200 OK
POST/api/checkout

342ms

4 spans, one story.Trace waterfall
Database querySELECT products WHERE id = $1
84 ms

One request.
Every connection.

Not just the response.
The work that made it happen.

4 spans. 5 logs. One shared trace.7f3a9c2d…
Server request

checkout-api

342 ms
POST /api/checkout200 OK

Your request, with every downstream call attached.

Correlated logs
  1. Checkout startedinfo
  2. Checkout completedinfo
Request body
"cart_id": "cart_4c91""email": "[REDACTED]""payment_token": "[REDACTED]"

Every signal. In context.

Different ways to look. One place to understand.

Logs

The right logs, attached to the request that produced them.

Metrics

Spot changes in traffic, errors, and latency. Measure your own operations.

Request duration342 ms

Traces

Follow the work across your app and its dependencies.

checkout-api342 ms

Capture what matters.
Keep control.

Useful context doesn’t have to mean exposing everything.

  • Sensitive fields stay hidden

    Default redaction for credentials and sensitive fields.

  • Payloads are your choice

    Opt in to capture, with bounded sizes.

  • Rules that fit your app

    Choose the fields and headers your app needs redacted.

Capture securely
Redacted
{
  "order_id": "ord_8b21",
  "amount": 129,
  "currency": "USD",
  "email": "[REDACTED]",
  "password": "[REDACTED]",
  "authorization": "[REDACTED]"
}
Credential redactionYour custom rules

Less guessing.
More understanding.

Connect a service. See what’s really happening.