export LOGDB_ENDPOINT=http://127.0.0.1:4318
export LOGDB_TENANT=local
export LOGDB_TOKEN=local-dev-token
export LOGDB_DATASET=checkout
export LOGDB_TRACE_ID=4bf92f3577b34da6a3ce929d0e0e4736
Expected signal
Endpoint, tenant, token, dataset, and trace ID are set.
Capture: Endpoint value, tenant, dataset, and local policy note.
curl -i "$LOGDB_ENDPOINT/health"
Expected signal
200 OK with JSON string "Healthy".
Capture: Status, bind address, service terminal state, and timestamp.
LOG_RESPONSE="$(curl -s -X POST "$LOGDB_ENDPOINT/v1/otlp/logs" \
-H 'content-type: application/json' \
-H "x-logdb-tenant: $LOGDB_TENANT" \
-H "authorization: Bearer $LOGDB_TOKEN" \
--data '{"resourceLogs":[{"resource":{"attributes":[{"key":"tenant_id","value":{"stringValue":"local"}},{"key":"service.name","value":{"stringValue":"checkout"}}]},"scopeLogs":[{"logRecords":[{"timeUnixNano":"1783947600000000000","body":{"stringValue":"operator smoke"}}]}]}]}')"
Expected signal
Accepted JSON with accepted_records: 1 and at least one logdb record ID.
Capture: Status body, accepted record count, tenant, dataset, and redacted record ID if sensitive.
LOG_RECORD_ID="$(printf '%s' "$LOG_RESPONSE" | sed -nE 's/.*"record_ids":\["([^"]+)".*/\1/p')"
printf '%s\n' "$LOG_RECORD_ID"
Expected signal
A deterministic logdb record ID is available for query checks.
Capture: Record ID shape and extraction command.
curl -i -X POST "$LOGDB_ENDPOINT/v1/query" \
-H 'content-type: application/json' \
-H "x-logdb-tenant: $LOGDB_TENANT" \
-H "authorization: Bearer $LOGDB_TOKEN" \
--data "{\"dataset\":\"$LOGDB_DATASET\",\"filter\":{\"record_id\":\"$LOG_RECORD_ID\"},\"page\":{\"limit\":10}}"
Expected signal
200 OK with matched_records: 1 and used_indexes containing record_id.
Capture: Query shape, status, matched count, used indexes, and scanned bundle count.
curl -i -X POST "$LOGDB_ENDPOINT/v1/query" \
-H 'content-type: application/json' \
--data '{"dataset":"checkout"}'
Expected signal
Rejected JSON with missing_tenant.
Capture: Status, error kind, route, and omitted header note.
curl -i -X POST "$LOGDB_ENDPOINT/v1/query" \
-H 'content-type: application/json' \
-H "x-logdb-tenant: $LOGDB_TENANT" \
-H "authorization: Bearer $LOGDB_TOKEN" \
--data "{\"dataset\":\"$LOGDB_DATASET\",\"page\":{\"limit\":501}}"
Expected signal
Rejected query response because the maximum query page limit is 500.
Capture: Status, limit value, error body, and reference link.
printf '%s\n' "$LOGDB_DATA_DIR"
Expected signal
Path is disposable for local smoke checks or explicitly approved for the environment.
Capture: Configured value and operator note.
find "$LOGDB_DATA_DIR" -maxdepth 3 -type f \( -name 'manifest.json' -o -name '*.parquet' \)
Expected signal
Segment bundle files appear only after local publication has flushed retained records.
Capture: File names, parent directory, timestamp, and note that payload contents stay out.
printf '%s\n' "${LOGDB_QUERY_STORE:-local}" "${LOGDB_QUERY_S3_BUCKET:-}" "${LOGDB_QUERY_S3_PREFIX:-}" "${LOGDB_QUERY_S3_REGION:-}"
Expected signal
Local is default; S3 values affect query reads only when LOGDB_QUERY_STORE=s3.
Capture: Selected query store, redacted bucket/prefix/region, and boundary note.
cd /path/to/logdb
cargo test control::byoc_preflight
Expected signal
Preflight tests pass for Terraform output, Helm values, retained resources, and uninstall notes.
Capture: Test command, result, source revision, and redacted handoff sample if available.