# Activity & usage

> Trace actions, investigate errors, and inspect measured provider usage.

Open [Activity & usage](https://studio.datxanhmientrung.ai/activity) to inspect your account’s request log, provider measurements and correlated traces. Templates and design systems have stable links at [/templates](https://studio.datxanhmientrung.ai/templates) and [/design-systems](https://studio.datxanhmientrung.ai/design-systems); opening these pages does not create or modify a project.

## Find a failed action

- Choose a period, channel, operation kind or status. Project IDs narrow the view to a saved design.
- Open a trace from the log, or paste the request ID shown in an API error. Instrumented responses return `X-Request-ID`.
- Inspect HTTP, MCP tool, provider and export steps. A provider success can be followed by a document validation failure; reported usage remains visible.
- Fix the diagnostic code or conflict before retrying. A running operation is different from a recently active account. Stale operations become interrupted/unknown.

## Usage without invented numbers

Input/output tokens and USD costs come from explicit provider response fields. “Not reported” means unavailable, not zero. Coverage shows how many calls have measurements; sums may be partial. Media polling does not count as another generation. Latency and failure rates help identify slow or unreliable actions; they do not measure design quality.

## Agent access

```
dsa observability summary --days 7
dsa observability events --status error --limit 25
dsa observability trace REQUEST_ID --days 30
```

REST uses `GET /api/observability/summary`, `GET /api/observability/events`, and `GET /api/observability/trace/:id`. Network MCP tools are `get_observability_summary`, `list_activity_events`, and `get_activity_trace`. Browser WebMCP exposes `studio_api_get_observability_summary`, `studio_api_get_observability_events`, and `studio_api_get_observability_trace_id`. All use the same server authorization.

## Privacy and operator access

The default `scope=owner` shows your account. All-account inspection requires an account ID explicitly listed in server `OBSERVABILITY_ADMIN_IDS` plus session or API-key authentication. MCP OAuth cannot use `scope=all`. Logs retain safe metadata for 30 days; they exclude prompts, design text, raw exception messages, credentials and arbitrary URLs.

## PostHog and coverage

First-party browser events use the strict schema on `POST /api/observability/client-events`. Optional PostHog forwarding requires `POSTHOG_PROJECT_KEY` and the project’s verified `POSTHOG_HOST`. Cloud hosts are `https://us.i.posthog.com` and `https://eu.i.posthog.com`. No DOM autocapture, session replay or email identification is enabled. This follows the [PostHog capture API](https://posthog.com/docs/api/capture).

Coverage reports storage state, dropped writes and PostHog delivery failures. Runtime health counters reset when an instance restarts and do not represent a global durable outage history. Tracking failure never retries a billed design operation.

## Editor controls

Shift-click canvas objects or layers to build a selection. Use the editor’s keyboard-shortcut help for select all, duplicate, grouping, undo/redo, delete and coarse/fine nudging. Text editing preserves canvas typography; font search previews the visible families. Install the complete `skills/design-studio-ai` directory, including its design-kind references, so agents use the matching layout and quality guidance.
