# What changed in @nestjs/observe

> 30 changes in @nestjs/observe 0.3 from its official release notes, upgrade guides and advisories: 1 security, 5 new APIs and options. Each one cited. Sources checked 2026-10-20. HTML: https://unstale.sh/npm/@nestjs/observe/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @nestjs/observe 0.3

### Security

- The JWT redaction rule is now linear and also applies to error messages and request bodies captured with http.capture.body. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)

### New APIs and options

- Adds a terminal command to link a project. (0.3.15) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.15)
- Custom request operation ids are supported. (0.3.13) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.13)
- An enabled option can switch the agent off. (0.3.13) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.13)
- Database queries for MSSQL (SQL Server) can be instrumented. (0.3.13) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.13)
- The collector is told which ingest modes the agent can read. (0.3.12) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.12)

### Performance

- Parsing forwarded log lines now takes linear time regardless of input, avoiding event-loop delays from long runs of whitespace. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- Nest's Reflector is no longer instrumented, avoiding spans from repeated metadata lookups that added no insight. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)

### Behavior and default changes

- The type is now optional because the environment fills it. (0.3.16) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.16)
- The type is now optional because the environment fills it. (0.3.16) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.16)
- Linking now installs and wires the SDK in apps that do not use it yet. (0.3.16) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.16)
- While an account's overage is paused, only server errors are sent. (0.3.13) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.13)
- Rejected credentials are no longer retried on every flush. (0.3.12) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.12)
- Forwarded log metadata is constrained to collector limits: context is redacted and capped at 255 characters, trace ids are validated, and levels are mapped to Nest's. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- JSON logs from winston, pino and similar loggers map info, warning and trace to Nest levels; other levels are kept as attributes.level. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)

### Fixes and other changes

- The collector says once that it accepted the first batch. (0.3.14) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.14)
- Driver copies nested in Prisma's pg adapter and other dependents are patched. (0.3.13) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.13)
- A paced Free day is distinguished from a spent allowance. (0.3.12) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.12)
- When the collector rejects a batch for an invalid or oversized value, the agent removes just that value or entry and resends the rest instead of dropping the batch. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- The JWT rule no longer matches a token directly preceded by a hyphen; the token= and Bearer rules are unchanged. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- maxTracesPerBatch is capped at 5000, the collector's maximum accepted batch size. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- The notice now states what data is still kept, and a new notice covers trimmed traces on paid plans. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- A trace id is read from a log line only if it matches `[A-Za-z0-9._:-]{1,128}`; otherwise the line uses the trace id of its request. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- Forwarded VERBOSE lines now carry their level and context. (0.3.11) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.11)
- Buffered telemetry is flushed before the worker shuts down. (0.3.10) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.10)
- Trace arrays are preserved during degraded ingestion. (0.3.10) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.10)
- Instances without a constructor continue to work. (0.3.9) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.9)
- Instrumented methods return the original promise. (0.3.9) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.9)
- Async hooks symbols are ignored when distinguishing a plain promise, improving promise detection. (0.3.9) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.9)
- Plain promises are chained so a dropped rejection still surfaces. (0.3.9) — [release notes](https://github.com/nestjs/observe/releases/tag/0.3.9)
