Skip to content

Traces

Traces follow one request across services. Send spans that share a trace id, then look up the whole tree when a call is slow. Use this with logs and metrics when you need to see where time went.

Status: Preview. See the API action reference for the full command list.

Before you start

  • Sign in with skippr login. See Cloud User Directory.
  • Ensure your policy allows the traces actions you need.

Concepts

  • A trace groups spans that share a traceId.
  • Each span records one timed operation and an optional parent.
  • Trace groups are named filters you can create, list, and delete.

Put spans and look up a trace

bash
skippr traces put-trace-spans --input - <<JSON
{
  "spans": [{
    "traceId": "4bf92f3577b34da6a3ce929d0e0e4736",
    "spanId": "00f067aa0ba902b7",
    "name": "GET /health",
    "startTime": 1710000000000,
    "endTime": 1710000000100
  }]
}
JSON

skippr traces get-trace --trace-id 4bf92f3577b34da6a3ce929d0e0e4736

PutTraceSegments and OtlpExport alias the same authenticated ingest path (CloudTraces.* via gateway). Create a named filter with CLI, Terraform, CDKTF TypeScript, or CDKTF Python. For provider credentials and the shared cloud provider block, see Terraform and CDKTF. GetTrace merges the recent window with lake history.

bash
skippr traces create-trace-group --name app
hcl
resource "cloud_trace_group" "app" {
  name = "app"
}
ts
import { CloudProvider, CloudTraceGroup } from "@skippr/provider-cloud";

const cloud = new CloudProvider(this, "cloud", { region: "eu-central-1" });

new CloudTraceGroup(this, "app", {
  name: "app",
  provider: cloud,
});
python
from skippr_cdktf import CloudProvider, CloudTraceGroup

cloud = CloudProvider(self, "cloud", region="eu-central-1")

CloudTraceGroup(
    self,
    "app",
    name="app",
    provider=cloud,
)

Access

  • CLI: skippr traces <operation>
  • Hostname: traces.{region}.cloud.skippr.io
  • Auth: Bearer JWT or SigV4 service traces