> ## Documentation Index
> Fetch the complete documentation index at: https://stars-components.js.org/llms.txt
> Use this file to discover all available pages before exploring further.

# @wolfstar/plugin-logger

> Changelog for @wolfstar/plugin-logger: the logging plugin and its transports.

Changes to [`@wolfstar/plugin-logger`](https://github.com/wolfstar-project/plugins/tree/main/packages/plugin-logger). For the weekly summary across all packages, see the [changelog overview](https://stars-components.js.org/documentation/changelog/index.md).

## `0.5.0` (2026-10-20)

### New features

* **Own `stars.config` key** — The module sets `meta.configKey`, so you can write its options under the top-level `logger` key of `stars.config` instead of the `[specifier, options]` tuple of `modules`. The tuple still works and is merged over the key. The key is typed in `defineConfig` once the module is imported in `stars.config.ts`. ([#259](https://github.com/wolfstar-project/plugins/pull/259))

### Updates

* **New optional peer** — `@wolfstar/schema` (`^0.9.0`) is a new optional peer that carries the `StarsConfig` type the keys extend.

### Migration

* **`@wolfstar/kit` peer raised** — The `@wolfstar/kit` peer range moves from `^0.1.0` to `^0.2.0`, the first version that reads `configKey`. If your project uses `@wolfstar/kit` 0.1, update it.

## `0.4.0` (2026-10-09)

### New features

* **Shared payload fields** — Every `LogPayload` now carries a derived `message`, `error`, and `context`. Use `createLogPayload` to build payloads for custom transports and tests. ([#232](https://github.com/wolfstar-project/plugins/pull/232))
* **`evlog` module option** — The Stars module gains an `evlog` option that runs `initLogger` and adds the transport. Pass `evlog: true`, or write the options inline (`env`, `sampling`, `redact`, `pipeline`, ...) with `drain` pointing to a file that default-exports `defineEvlogDrain(...)`.
* **`@wolfstar/plugin-logger/evlog/plugin` entry** — Its default export is the plugin factory, taking the drain directly outside Stars.
* **Interaction wide events** — The evlog plugin emits one evlog wide event per interaction (command, component, modal, and optionally autocomplete) with its outcome, error, duration, and who/where. Control it with the `interactions` option, and add fields from a command with `useInteractionLogger()`.
* **Sentry breadcrumbs and Logs** — `SentryTransport` keeps the message and context next to an exception, can record breadcrumbs (`breadcrumbLevel`), and can send Sentry Logs (`logLevel`).

### Updates

* **`EvlogTransport`** — Writes structured events through evlog's pipeline instead of flattened strings, maps all six levels, and flushes the `drain` on close.
* **`SentryTransport`** — Flushes the client on close.
* **`WinstonTransport`** — Serialises errors and flags `fatal` entries.

### Bug fixes

* **`WinstonTransport` close** — Closing the transport twice no longer hangs.

### Migration

* **`@sentry/node` peer dropped** — The plugin no longer declares `@sentry/node` as a peer dependency.
* **`evlog` peer raised** — Upgrade `evlog` to `^2.30.0`.
* **Custom transports** — `LogPayload` now includes `message`, `error`, and `context`. Update custom transports and test fixtures that build payloads by hand, or use `createLogPayload`.

## `0.3.0` (2026-10-05)

### New features

* **`/module` and `/plugin` entrypoints** — Adds `@wolfstar/plugin-logger/module` and `@wolfstar/plugin-logger/plugin`. List the module in `modules` in `stars.config`, or pass the `definePlugin` factory to `plugins`. Both need `@wolfstar/http-framework` 6.1 (and `@wolfstar/kit` for the module). `./register` is unchanged and still supports framework v3, v5, and v6. ([#187](https://github.com/wolfstar-project/plugins/pull/187))

## `0.2.2` (2026-10-04)

### Updates

* **`http-framework` 6 support** — The peer range now accepts [`@wolfstar/http-framework`](https://stars-components.js.org/documentation/changelog/stars-components/http-framework) `^6.0.0`. ([#176](https://github.com/wolfstar-project/plugins/pull/176))

### Bug fixes

* **Peer range** — Accept `@wolfstar/http-framework` v6 in the peer range (`|| ^6.0.0`). ([#176](https://github.com/wolfstar-project/plugins/pull/176))

## `0.2.1`

### Bug fixes

* **Peer dependency** — Accept `@wolfstar/http-framework` v5 as a peer dependency (`^3.4.0 || ^5.0.0`), so v5 projects no longer install the plugin with an unmet peer. ([#125](https://github.com/wolfstar-project/plugins/pull/125))

## `0.2.0` (2026-09-24)

### New features

* **New package** — Add `@wolfstar/plugin-logger`, a pluggable logger for `@wolfstar/http-framework` that replaces the deprecated `@wolfstar/logger`. It installs a `Logger` as `container.logger` through the `preGenericsInitialization` hook, implementing the framework's `ILogger` contract so migrating is a drop-in change. Instead of being hardcoded to `console`, it fans every entry out to a list of transports, each able to filter by its own level on top of the logger's. The package ships `ConsoleTransport` (the zero-dependency default) and `SentryTransport` in its core entrypoint, plus `ConsolaTransport`, `EvlogTransport`, and `WinstonTransport` behind the `./consola`, `./evlog`, and `./winston` subpaths. Every backend is an optional peer dependency whose instance is injected through the transport constructor, so the core stays free of runtime dependencies and consumers only install what they actually use. ([#70](https://github.com/wolfstar-project/plugins/pull/70))


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.