# `Codat.Telemetry`
[🔗](https://github.com/iamkanishka/codat.git/blob/v1.0.0/lib/codat/telemetry.ex#L1)

Telemetry integration for the Codat client.

## Events

- `[:codat, :request, :start]` — before each HTTP request
- `[:codat, :request, :stop]` — after each HTTP request
- `[:codat, :request, :exception]` — on unhandled exceptions
- `[:codat, :retry, :attempt]` — on each retry
- `[:codat, :rate_limit, :hit]` — on 429 responses

# `attach_default_logger`

```elixir
@spec attach_default_logger(Logger.level()) :: :ok | {:error, :already_exists}
```

Attaches a default structured logger to all Codat telemetry events.

# `detach_default_logger`

```elixir
@spec detach_default_logger() :: :ok | {:error, :not_found}
```

Detaches the default logger.

# `events`

```elixir
@spec events() :: [[atom(), ...], ...]
```

Returns all telemetry event names emitted by this library.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
