Skip to content

Traces reference

POST https://traces.siteqwality.com/v1/traces
Authorization: Bearer <api-key>
Content-Type: application/json | application/x-protobuf

Body: standard OTLP ExportTraceServiceRequest. Most OTel SDK exporters handle the format for you.

SiteQwality renders standard OTel semantic-convention attributes natively. Stick to the standard names where possible:

AttributeDescription
http.methodGET, POST, …
http.urlFull URL including query.
http.targetPath + query (e.g. /api/users?id=123).
http.hostHost header.
http.status_codeNumeric.
http.user_agentUA string.
http.request_content_lengthBytes.
http.response_content_lengthBytes.
AttributeDescription
db.systempostgresql, mysql, redis, mongodb.
db.statementThe SQL/query (consider scrubbing PII).
db.operationSELECT, INSERT, UPDATE.
db.nameDatabase name.
db.userConnection user.
AttributeDescription
messaging.systemkafka, sqs, rabbitmq.
messaging.destinationTopic / queue.
messaging.operationsend, receive, process.

These should be set once on the OTel SDK init (Resource.create({...})) and apply to every span:

AttributeDescription
service.nameRequired. Logical service name.
service.versionApp version.
service.instance.idPod / VM identity.
deployment.environmentprod, staging.
host.nameHostname.
cloud.regionus-east-1.
FieldDescription
trace_id32-char hex; identifies the trace.
span_id16-char hex; identifies the span.
parent_span_idEmpty for root spans.
operation_nameSpan name.
service_nameFrom resource attributes.
span_kindserver, client, producer, consumer, internal.
start_time, end_timeRFC 3339.
duration_msComputed.
status_codeOK or ERROR.
status_messageOptional error message.
attributesAll custom + standard span attributes.
resource_attributesAll resource attributes.
events[]Timestamped log-like events.
links[]Cross-trace span references.
ParamDescription
start_time, end_timeRFC 3339 window.
service_nameExact match.
operation_nameExact match.
min_duration_ms, max_duration_msRange filter.
statusok or error.
searchFree-text across span attributes.
limit (default 50), offsetPagination.
sort_field, sort_orderOrder.

Response:

{
"total": 1234,
"traces": [
{
"trace_id": "...",
"root_service": "api",
"root_operation": "POST /checkout",
"services": ["api", "billing", "db"],
"span_count": 14,
"duration_ms": 482.3,
"error_count": 0,
"start_time": "..."
}
]
}
MethodPathPurpose
GET/traces/servicesDistinct services seen in window.
GET/traces/operationsDistinct operations (optionally filtered by service).
GET/traces/timelineBucketed counts (total + errors) for charting.
GET/traces/{trace_id}Full span tree.
GET/traces/{trace_id}/logsLogs tagged with this trace_id.
GET/traces/service-mapNodes + edges for the dependency graph.