logixlysia 6.8.1 → 6.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +552 -0
- package/LICENSE +21 -0
- package/README.md +14 -0
- package/dist/axiom.d.ts +29 -0
- package/dist/axiom.js +3 -3
- package/dist/better-stack.d.ts +29 -0
- package/dist/better-stack.js +3 -3
- package/dist/clickhouse.d.ts +29 -0
- package/dist/clickhouse.js +3 -3
- package/dist/datadog.d.ts +29 -0
- package/dist/datadog.js +3 -3
- package/dist/desertant.d.ts +99 -0
- package/dist/desertant.js +4 -0
- package/dist/enrichers.d.ts +4 -0
- package/dist/enrichers.js +3 -3
- package/dist/hyperdx.d.ts +29 -0
- package/dist/hyperdx.js +3 -3
- package/dist/index.d.ts +103 -8
- package/dist/index.js +7 -8
- package/dist/loki.d.ts +29 -0
- package/dist/loki.js +3 -3
- package/dist/otlp.d.ts +29 -0
- package/dist/otlp.js +3 -3
- package/dist/posthog.d.ts +29 -0
- package/dist/posthog.js +3 -3
- package/dist/sentry.d.ts +29 -0
- package/dist/sentry.js +4 -4
- package/dist/shared/{Logixlysia-9cedhf19.js → Logixlysia-a59b921j.js} +1 -1
- package/dist/shared/Logixlysia-jvphdjgs.js +5 -0
- package/dist/shared/Logixlysia-nrt7tysy.js +6 -0
- package/package.json +9 -2
- package/dist/shared/Logixlysia-7649md6y.js +0 -5
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,552 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 6.9.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 83c935e: Built-in adapters no longer follow HTTP redirects on ingest requests, so a credential header cannot be forwarded to another origin; a redirect now fails the batch and is reported like any other transport error. Endpoint URLs from options or env vars are validated when the transport is created and must use `http:` or `https:`.
|
|
8
|
+
- 10a8889: A failed gzip during rotation no longer skips `maxFiles` cleanup and is reported once. `timestamp.translateTime` understands pino-pretty's `SYS:standard`, `SYS:<pattern>` and `UTC:<pattern>` forms on the console line. `resolveOptions` now rejects `slowThreshold` greater than `verySlowThreshold` and a numeric `logRotation.maxFiles` that is not a positive integer.
|
|
9
|
+
- 8249fa9: `wrapWs` now forwards the close `code` and `reason` to your `close` hook and logs them on the "WebSocket closed" line; a hook that throws no longer skips the lifecycle log or leaks the connection's context; message logs report `payloadType: 'binary'` for `ArrayBuffer`/typed-array frames.
|
|
10
|
+
|
|
11
|
+
## 6.9.0
|
|
12
|
+
|
|
13
|
+
### Minor Changes
|
|
14
|
+
|
|
15
|
+
- 01c0a37: Add `logixlysia/desertant`: `withRedaction()` wraps a transport so every record passes through an injected PII redactor before delivery, masking free-text PII — names, addresses, phone numbers, national IDs — that the pattern-based `autoRedact` pass cannot match. `NeuralRedactorSource` accepts a redactor, promise, or loader; whether processing stays local depends on the selected source.
|
|
16
|
+
|
|
17
|
+
The redactor is injected rather than imported, so logixlysia gains no dependency. Redaction runs off the request path, preserves log order, and bounds its queue. Records that fail model loading or redaction are dropped and reported by default; the original record is forwarded only when `onFailure: 'forward'` is explicitly configured.
|
|
18
|
+
|
|
19
|
+
- bd4b5ba: Export `HttpError` (with `HttpErrorInit` and `HttpErrorPayload` types) and a named `logixlysia` export from the package entry, as the docs and README already describe. Ship the LICENSE file in the npm tarball.
|
|
20
|
+
- 8479941: Transports may now implement optional `flush()` and `close()`. The plugin flushes every transport and the file sink when the Elysia app stops, bounded by the new `config.flushTimeoutMs` (default 5000 ms; `0` disables waiting). A timeout is reported through `config.onError` with `sink: 'shutdown'`. `flushLogixlysia(options)` is exported for callers who need to drain (and optionally close) sinks outside the Elysia lifecycle.
|
|
21
|
+
|
|
22
|
+
### Patch Changes
|
|
23
|
+
|
|
24
|
+
- 21126ae: Built-in adapters now deliver batches in order (one in-flight send at a time), `flush()` waits for every batch queued before it, and timer-driven flush failures are reported through the transport's `onError` option instead of an unthrottled `console.error`. `postWithRetry` honors `Retry-After` on 429 (capped at 30 s) and releases successful response bodies.
|
|
25
|
+
- 110df6b: README: document the built-in adapters, sampling, enrichers, redaction and structured errors.
|
|
26
|
+
- 6283f93: `autoRedact` now masks query-string values whose parameter name is sensitive (`token`, `password`, `api_key`, and any `redactKeys` entry), preserves `error.cause` and other non-enumerable error fields instead of dropping them, no longer mistakes dotted version numbers like `120.0.0.0` for IP addresses, and masks IPv6 addresses. Console output sanitizes the message, the raw-URL fallback, and error entries the same way the file sink already does. The Sentry adapter no longer echoes the DSN in its configuration error. The geo enricher bounds header-derived values.
|
|
27
|
+
- 3765322: Access logs now report the status of a returned `Response`; a custom log that was filtered out no longer suppresses the access log; an error thrown after the handler produces one final line with the request's real duration and context; in-handler custom logs show the elapsed request time instead of `0ms`; `store.beforeTime` is populated per request; the AsyncLocalStorage logger is reset when a request ends.
|
|
28
|
+
|
|
29
|
+
## 6.8.1
|
|
30
|
+
|
|
31
|
+
### Patch Changes
|
|
32
|
+
|
|
33
|
+
- ad4fce1: Raise the `elysia` peer dependency floor to `^1.4.30`.
|
|
34
|
+
|
|
35
|
+
## 6.8.0
|
|
36
|
+
|
|
37
|
+
### Minor Changes
|
|
38
|
+
|
|
39
|
+
- 7d22709: Add the `logixlysia/axiom` adapter. `createAxiomTransport()` ships logs to an Axiom dataset via the ingest API with batching, retries, and env-based credentials (`AXIOM_API_KEY`, `AXIOM_DATASET`, `AXIOM_ORG_ID`, `AXIOM_URL`). Events keep their nested structure so every field is queryable with APL.
|
|
40
|
+
- 7d22709: Add the `logixlysia/better-stack` adapter. `createBetterStackTransport()` ships logs to Better Stack Telemetry using `BETTER_STACK_SOURCE_TOKEN`, supporting both the legacy shared endpoint and the dedicated per-source ingesting hosts (`BETTER_STACK_INGESTING_HOST`). Logs post with a `dt` timestamp, `level`, `message`, and the full meta object.
|
|
41
|
+
- 7d22709: Add the `logixlysia/clickhouse` adapter. `createClickHouseTransport()` inserts logs into a ClickHouse table over the HTTP interface using `JSONEachRow` — rows carry `timestamp`, `level`, `message`, and an `attributes` map of the flattened meta. Database and table names are validated as plain identifiers, and ISO timestamps parse via `date_time_input_format=best_effort`.
|
|
42
|
+
- 7d22709: Add the `logixlysia/datadog` adapter. `createDatadogTransport()` ships logs to Datadog's v2 logs intake (`DD_API_KEY`, `DD_SITE` for regions). The log level lands in the `status` attribute for Datadog's default remapper, the HTTP response status follows the standard `http.status_code` attribute, and the full meta object rides along as searchable attributes.
|
|
43
|
+
- f8f6960: Add `config.enrichers` and the `logixlysia/enrichers` subpath. An enricher contributes fields to the request context once and they reach every sink at once — console tree, file logs, and all transports. Four are built in: `traceparentEnricher()` parses the W3C `traceparent` header directly, with no OpenTelemetry SDK required, so logs link to traces in Sentry, HyperDX, or any OTLP backend; `userAgentEnricher()` adds browser, OS, device, and bot fields; `geoEnricher()` reads the geo headers Vercel, Cloudflare, and Netlify already attach; `sizeEnricher()` records `requestBytes` and `responseBytes`. Custom enrichers are a bare function (request phase) or an object with `request` and `response` phases. A hook that throws is reported via `onError` with the new `sink: 'enricher'` and skipped, never failing the request.
|
|
44
|
+
- 7d22709: Add the `logixlysia/hyperdx` adapter. `createHyperDXTransport()` ships logs to HyperDX (cloud or self-hosted collectors) as OTLP JSON over HTTP, authenticated with `HYPERDX_API_KEY`. Meta fields become dot-notation log attributes searchable in the HyperDX UI.
|
|
45
|
+
- 7d22709: Add the `logixlysia/loki` adapter. `createLokiTransport()` pushes logs to Grafana Loki (self-hosted or Grafana Cloud with basic auth, multi-tenant via `X-Scope-OrgID`). Streams are labeled with low-cardinality `service_name` and `level`; the log line is the message and full meta as JSON, ready for LogQL's `| json`.
|
|
46
|
+
- 7d22709: Add the `logixlysia/otlp` adapter. `createOtlpTransport()` ships logs to any OTLP/HTTP logs endpoint as `ExportLogsServiceRequest` JSON — OpenTelemetry Collectors, Grafana Cloud, New Relic, Honeycomb, SigNoz, and other OTLP-compatible backends. Honors the standard `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_HEADERS`, and `OTEL_SERVICE_NAME` variables.
|
|
47
|
+
- 7d22709: Add the `logixlysia/posthog` adapter. `createPostHogTransport()` captures logs as PostHog events via the batch API (`POSTHOG_API_KEY`, `POSTHOG_HOST` for EU/self-hosted). Meta fields become dot-notation event properties, and logs carrying a `userId` in the request context are linked to PostHog persons via `distinct_id`.
|
|
48
|
+
- f8f6960: Add head + tail sampling via `config.sampling`. Head sampling keeps a percentage of records per level (`{ INFO: 10 }`; levels left out keep everything), so log spend stops scaling one-for-one with traffic. Tail sampling buffers what head dropped and replays it when the finished request matches `status`, `durationMs`, or a path glob — failures and slow paths keep their full log trail instead of losing nine lines in ten. Dropped records skip context merging, redaction, formatting, and every sink; replayed ones keep the duration they had when captured.
|
|
49
|
+
- 7d22709: Add the `logixlysia/sentry` adapter. `createSentryTransport()` ships structured logs to Sentry (Explore > Logs) via the envelope endpoint using `SENTRY_DSN` — no Sentry SDK required. Every meta field becomes a typed, searchable attribute, and `trace_id` from the request context links logs to traces.
|
|
50
|
+
- f8f6960: `HttpError` now carries the context that makes a failure actionable: `code` (a stable identifier the client can branch on, unlike the message), `why`, `fix`, `link`, and `internal`. The first four appear in both the log and the response body; `internal` is log-only — it is non-enumerable and excluded from `toJSON()`, so no serializer can put it in a response. Error details also render in the console context tree for 4xx responses now, not just 5xx. Fully backward compatible: `new HttpError(404, 'Not found')` still responds with the bare message, and only an error carrying at least one client-facing field responds as JSON.
|
|
51
|
+
- f8f6960: The request-scoped logger is now generic over your field type: `logixlysia<CheckoutFields>()` types `log.mergeContext()` and the per-call `context` argument as `Partial<CheckoutFields>`, so TypeScript rejects a misspelled `user_id` before it splits your dashboard query in two. `useLogger<CheckoutFields>()` takes the same parameter for code outside the handler. Type-only with no runtime cost, and the default keeps every key allowed, so existing untyped code is unaffected.
|
|
52
|
+
|
|
53
|
+
## 6.7.0
|
|
54
|
+
|
|
55
|
+
### Minor Changes
|
|
56
|
+
|
|
57
|
+
- 64333ca: `logRotation.interval` now actually rotates. The live file's age (from
|
|
58
|
+
filesystem creation time, falling back to open time where the filesystem
|
|
59
|
+
reports none) is checked after every write, and the file rotates on the
|
|
60
|
+
first write after the interval elapses — no timers, so an idle process
|
|
61
|
+
rotates on its next write rather than on a wall-clock schedule. When both
|
|
62
|
+
`maxSize` and `interval` are set, whichever trigger is crossed first
|
|
63
|
+
rotates. Previously `interval` was accepted and format-validated but
|
|
64
|
+
never triggered rotation; configs that already set it will begin rotating
|
|
65
|
+
on upgrade.
|
|
66
|
+
- 964e60c: `autoRedact` now redacts by sensitive key/header names (authorization, cookie, x-api-key, password, secret, token, session, …) in addition to value patterns; new `config.redactKeys` extends the list, and pino gets matching `redact.paths` defaults.
|
|
67
|
+
- 1e949a1: Harden log output: file-sink lines, client IPs, and context-tree values are sanitized (control characters escaped/stripped, lengths bounded); malformed inbound request IDs are replaced with generated ones; log files/dirs are created with `0600`/`0700` modes, configurable via `logFileMode`/`logDirMode` (existing files keep their mode).
|
|
68
|
+
- 3267e1f: Internal log/error pipelines are unified: error-path logs now honor the same sink gates and console-method-by-level as success-path logs (a 4xx warning now prints via `console.warn` instead of `console.error`). New `config.onError` hook surfaces transport/file/rotation sink failures to your code.
|
|
69
|
+
- 11a0cd2: Validation errors no longer log the submitted request body (`found`/`errors`) by default — messages are normalized to the failed paths only. Set `config.logErrorPayload: true` to restore payload logging. Raw Error objects are no longer passed into transport meta.
|
|
70
|
+
|
|
71
|
+
### Patch Changes
|
|
72
|
+
|
|
73
|
+
- efab720: File sink now holds an open file handle, batches same-tick lines into single writes, creates the log directory once, and tracks file size in memory — removing the per-line mkdir/open/stat syscalls. Rotation behavior is unchanged.
|
|
74
|
+
- 69b83aa: Per-request logging is faster: format tokens are computed only when present in the log format, colors/thresholds/service are resolved once per logger, URL parsing and duration sampling happen once per emission, internal context reads no longer clone, WebSocket synthetic requests are memoized per path, and `autoRedact` returns the original object untouched when nothing needs redacting.
|
|
75
|
+
- ad0a2e6: pino is now constructed lazily on first access to `store.pino`/`logger.pino` (or eagerly when `config.pino` is set), instead of on every plugin instantiation. Dead internal helpers `formatLine`, `logWithPino`, and `renderContextTreeLines` were removed (they were never exported from the package).
|
|
76
|
+
- 6c26cc2: Remove the unused `ai` peer dependency, mark `typescript` as an optional peer and widen it to the proven TS 5.x floor, and align the package tsconfig with the shared monorepo base.
|
|
77
|
+
- 30869f4: Internal type reorganization: the config object is now composed of named sub-interfaces (`FormattingConfig`, `OutputConfig`, `RedactionConfig`, …) behind the same `Options` shape; `HttpError` moved to a dedicated module. All public import paths and names are unchanged.
|
|
78
|
+
|
|
79
|
+
### Correction (2026-08-10)
|
|
80
|
+
|
|
81
|
+
The 5.3.0 entries "log-rotation: implement complete rotation with
|
|
82
|
+
interval support" (673b800, 9016a51) added the `interval` config field
|
|
83
|
+
and its format validation, but did not wire it to actually trigger
|
|
84
|
+
rotation — `interval` was a no-op from 5.3.0 until the lazy-on-write
|
|
85
|
+
implementation landed on 2026-08-10. See
|
|
86
|
+
`plans/spikes/021-interval-rotation-decision.md` for the investigation.
|
|
87
|
+
|
|
88
|
+
## 6.6.1
|
|
89
|
+
|
|
90
|
+
### Patch Changes
|
|
91
|
+
|
|
92
|
+
- 8d86149: Bump `chalk` from 5 to 6. Chalk 6 requires Node.js 22 or newer, so this raises the effective minimum runtime for `logixlysia`. The colouring API used by the logger is unchanged.
|
|
93
|
+
- b0f6078: Fix the per-file write/compression mutex: locks are now registered synchronously, so concurrent same-tick writes to one log file no longer interleave with rotation (previously could drop or tear lines).
|
|
94
|
+
- ded5689: Track request start time per-request instead of in Elysia app-global state; logged durations are now correct when requests overlap.
|
|
95
|
+
- 3660d08: Reject invalid log-rotation sizes (empty, negative, non-finite) and validate `logRotation`/`preset` config at plugin construction instead of failing silently per write.
|
|
96
|
+
- b96dd49: String `set.status` values (e.g. `'Not Found'`) now log their real status code and severity instead of `200 INFO`, and thrown 4xx errors log as WARNING (matching the success-path severity ladder) instead of always ERROR.
|
|
97
|
+
- 2204ee3: Transport meta now carries a JSON-serializable `durationMs` number instead of a BigInt `beforeTime` (which made `JSON.stringify` throw in every serializing transport), and transport failures are reported to stderr (rate-limited) instead of being silently swallowed.
|
|
98
|
+
|
|
99
|
+
## 6.6.0
|
|
100
|
+
|
|
101
|
+
### Minor Changes
|
|
102
|
+
|
|
103
|
+
- 4660c5d: Add support for request-scoped logger context propagation using `AsyncLocalStorage` and export a global `useLogger()` hook.
|
|
104
|
+
- 51f1ca9: Add support for structured HTTP error logging, formatting properties such as `why`, `fix`, `link`, and `internal` inside the development context tree console log.
|
|
105
|
+
|
|
106
|
+
### Patch Changes
|
|
107
|
+
|
|
108
|
+
- 04e1a2f: Fix thread-stream worker crash when using pino-pretty in Bun by initializing pretty print streams synchronously on the main thread.
|
|
109
|
+
|
|
110
|
+
## 6.5.1
|
|
111
|
+
|
|
112
|
+
### Patch Changes
|
|
113
|
+
|
|
114
|
+
- 9cb2480: Add Request ID middleware, `{requestId}` custom log token, preset integrations, and expand telemetry unit tests for OTel & AI.
|
|
115
|
+
- bcc4ce2: Fix `autoRedact` crashing routes with a request body. `redactRequest` no longer re-attaches the original (possibly already-consumed) request stream to its logging-only clone, which avoids the `ReadableStream has already been used` error when a redacted URL/header/method coincides with a parsed body (#329).
|
|
116
|
+
|
|
117
|
+
## 6.5.0
|
|
118
|
+
|
|
119
|
+
### Minor Changes
|
|
120
|
+
|
|
121
|
+
- 88ecd4c: Add `logixlysia/ai` subpath with `mergeAIMetrics` for LLM usage fields on access logs.
|
|
122
|
+
- 23f4b42: Add `logixlysia/otel` subpath with `injectTraceContext` for optional OpenTelemetry span correlation.
|
|
123
|
+
- 981de26: Add `preset` option (`dev`, `prod`, `json`) with `resolveOptions` for opinionated environment defaults.
|
|
124
|
+
- d576f99: Add request-scoped context accumulation via `mergeContext` and `getContext`, merged into automatic access logs. Export `createLogger` and `createPluginLogger` for advanced setups.
|
|
125
|
+
- cbe9d2c: Add `wrapWs` for WebSocket open, message, and close lifecycle logging with request context support.
|
|
126
|
+
|
|
127
|
+
### Patch Changes
|
|
128
|
+
|
|
129
|
+
- d3d15b4: Add `default` export conditions for Node and tsx resolution of `logixlysia`, `logixlysia/otel`, and `logixlysia/ai`.
|
|
130
|
+
|
|
131
|
+
Allow `Request` or WebSocket objects as keys for `mergeContext` and `getContext`.
|
|
132
|
+
|
|
133
|
+
## 6.4.0
|
|
134
|
+
|
|
135
|
+
### Minor Changes
|
|
136
|
+
|
|
137
|
+
- e285af6: Added `logQueryParams` configuration option and `{query}` token to allow including request query strings in the logs.
|
|
138
|
+
|
|
139
|
+
### Patch Changes
|
|
140
|
+
|
|
141
|
+
- 712b2ba:
|
|
142
|
+
- Optimized log formatting performance by replacing multiple `.replaceAll()` calls with a single-pass regex replacement in `formatLogOutput` and `formatTimestamp`.
|
|
143
|
+
- Optimized `getIp` string slicing to reduce array allocations.
|
|
144
|
+
- Fixed a bug where padded HTTP methods (e.g., `GET`) lost their color formatting.
|
|
145
|
+
- Added early bailout logic to bypass allocations and system calls when logging is effectively disabled, significantly improving disabled-state benchmark performance.
|
|
146
|
+
|
|
147
|
+
## 6.3.2
|
|
148
|
+
|
|
149
|
+
### Patch Changes
|
|
150
|
+
|
|
151
|
+
- 85691b3: Add `autoRedact` configuration option to automatically scrub sensitive PII (emails, IPs, credit cards, JWTs) from log messages, context objects, and errors before they are outputted.
|
|
152
|
+
|
|
153
|
+
## 6.3.1
|
|
154
|
+
|
|
155
|
+
### Patch Changes
|
|
156
|
+
|
|
157
|
+
- 070d0be: Fix log rotation reliability and safety issues by serializing concurrent file operations, making cleanup resilient to partial failures, improving file-operation error visibility, hardening URL parsing/compression paths, and preventing rotated filename collisions under high concurrency.
|
|
158
|
+
- c6b87cd: Fix a race condition in file and compression lock acquisition to ensure concurrent writes and rotations are serialized correctly.
|
|
159
|
+
|
|
160
|
+
## 6.3.0
|
|
161
|
+
|
|
162
|
+
### Minor Changes
|
|
163
|
+
|
|
164
|
+
- b92698a: - Add `formatLogOutput` with optional multi-line context tree; keep `formatLine` as a deprecated alias returning the main line only.
|
|
165
|
+
- New config: `service`, `slowThreshold`, `verySlowThreshold`, `showContextTree`, `contextDepth`; default format includes `{icon}`, `{service}`, `{statusText}`, and `{speed}` tokens.
|
|
166
|
+
- Startup banner shows URL and optional logixlysia package version in a boxed layout.
|
|
167
|
+
|
|
168
|
+
## 6.2.3
|
|
169
|
+
|
|
170
|
+
### Patch Changes
|
|
171
|
+
|
|
172
|
+
- afd4c83: Fix TypeScript inference for WebSocket `ws.data` and context `store` after `.use(logixlysia())` ([#220](https://github.com/PunGrumpy/logixlysia/issues/220)).
|
|
173
|
+
- 0889128: Fix `ERR_IMPORT_ATTRIBUTE_MISSING` error on Node.js by avoiding ESM `package.json` import and using `createRequire(import.meta.url)` for startup banner JSON loading instead.
|
|
174
|
+
|
|
175
|
+
## 6.2.2
|
|
176
|
+
|
|
177
|
+
### Patch Changes
|
|
178
|
+
|
|
179
|
+
- f87971e: Fix display banner when using node adapter
|
|
180
|
+
|
|
181
|
+
## 6.2.1
|
|
182
|
+
|
|
183
|
+
### Patch Changes
|
|
184
|
+
|
|
185
|
+
- a58bb01: Fix WebSocket `ws.data` type inference when using logixlysia (closes #220)
|
|
186
|
+
|
|
187
|
+
The `LogixlysiaStore` index signature caused the combined store type to become `Record<string, unknown>`, overwriting the WebSocket context's `ws.data` type. Removed the index signature so `ws.data` preserves its proper type in WebSocket handlers.
|
|
188
|
+
|
|
189
|
+
- 910f7fa: Fix Node.js v25+ compatibility for startup banner (closes #231)
|
|
190
|
+
|
|
191
|
+
The banner extension imported `elysia/package.json` without the required import attribute, causing `ERR_IMPORT_ATTRIBUTE_MISSING` when running on Node.js. Added `with { type: "json" }` to the import so the package works on both Bun and Node.js.
|
|
192
|
+
|
|
193
|
+
## 6.2.0
|
|
194
|
+
|
|
195
|
+
### Minor Changes
|
|
196
|
+
|
|
197
|
+
- 2d90fd7: Enhance prettyPrint configuration support and documentation.
|
|
198
|
+
|
|
199
|
+
### Patch Changes
|
|
200
|
+
|
|
201
|
+
- 449cad5: Fix prettyPrint transport handling and align documentation types.
|
|
202
|
+
- ecfb2e8: Publish only dist artifacts to npm.
|
|
203
|
+
|
|
204
|
+
## 6.1.0
|
|
205
|
+
|
|
206
|
+
### Minor Changes
|
|
207
|
+
|
|
208
|
+
- e58213b: Move `elysia` from dependencies to peerDependencies to follow best practices for Elysia plugins and avoid duplicate dependency installations.
|
|
209
|
+
|
|
210
|
+
### Patch Changes
|
|
211
|
+
|
|
212
|
+
- 43b2ef5:
|
|
213
|
+
|
|
214
|
+
### Added
|
|
215
|
+
- Add `logFilter` configuration option to filter logs by level
|
|
216
|
+
- Add `LogFilter` interface with `level` property to specify allowed log levels
|
|
217
|
+
- Implement filtering logic in logger to prevent processing of filtered log levels
|
|
218
|
+
- Add comprehensive tests for log filtering functionality
|
|
219
|
+
|
|
220
|
+
### Fixed
|
|
221
|
+
- Fixed TypeScript error where `logFilter` property was missing in configuration type
|
|
222
|
+
|
|
223
|
+
### Changed
|
|
224
|
+
- Updated TypeScript interfaces to support the new `logFilter` configuration option
|
|
225
|
+
|
|
226
|
+
- f09e27e: Fix `customLogFormat` being ignored for error logs. Error logs now properly respect the `customLogFormat` configuration instead of using a hardcoded `console.error` format. Also adds missing `RequestInfo` type definition.
|
|
227
|
+
|
|
228
|
+
## 6.0.1
|
|
229
|
+
|
|
230
|
+
### Patch Changes
|
|
231
|
+
|
|
232
|
+
- 0051602: Add readme in Logixlysia
|
|
233
|
+
- 85ee521: Update correct code
|
|
234
|
+
|
|
235
|
+
## 6.0.0
|
|
236
|
+
|
|
237
|
+
### Major Changes
|
|
238
|
+
|
|
239
|
+
- e953969: BREAKING CHANGE: Major update from PR #171
|
|
240
|
+
|
|
241
|
+
This release includes breaking changes that may require updates to your code. Please refer to PR #171 for detailed information about the changes.
|
|
242
|
+
|
|
243
|
+
## [5.3.0](https://github.com/PunGrumpy/logixlysia/compare/v5.2.0...v5.3.0) (2025-10-11)
|
|
244
|
+
|
|
245
|
+
### Features
|
|
246
|
+
|
|
247
|
+
- **log-rotation:** enhance compression handling and documentation ([e874ae4](https://github.com/PunGrumpy/logixlysia/commit/e874ae44eea76a6a0d125c3f2133a56cddfa6d49))
|
|
248
|
+
- **log-rotation:** implement complete rotation with interval support ([673b800](https://github.com/PunGrumpy/logixlysia/commit/673b8005b04bb1b3d8ba15e86f6df37b9a5746b6))
|
|
249
|
+
- **log-rotation:** implement complete rotation with interval support ([9016a51](https://github.com/PunGrumpy/logixlysia/commit/9016a51db90fb4cc0853a5adfb32eb15623a6a8f)), closes [#138](https://github.com/PunGrumpy/logixlysia/issues/138)
|
|
250
|
+
- **pino-integration:** enhance documentation and features for Pino integration ([67c67d7](https://github.com/PunGrumpy/logixlysia/commit/67c67d76a3a710cd4864bbc94256f01a2bef10fa))
|
|
251
|
+
- **pino-integration:** enhance documentation and features for Pino integration ([3968a51](https://github.com/PunGrumpy/logixlysia/commit/3968a5161f056986f3ccfcb07031142b542a872f))
|
|
252
|
+
- **rotation:** add time-based rotation support in shouldRotate function ([4addd18](https://github.com/PunGrumpy/logixlysia/commit/4addd182cee0aa570092b63fdebbd549294028d6))
|
|
253
|
+
|
|
254
|
+
### Bug Fixes
|
|
255
|
+
|
|
256
|
+
- **logger:** add warning for unknown log levels in mapLogLevelToPino function ([b18b044](https://github.com/PunGrumpy/logixlysia/commit/b18b044bab81d8d0018d08924def6950a90040a2))
|
|
257
|
+
- **logger:** enhance Pino output handling in emitPinoLog function ([cd9d4b7](https://github.com/PunGrumpy/logixlysia/commit/cd9d4b7d37883fad90e79e91e6f8a7a753dbfff6))
|
|
258
|
+
- **logger:** enhance transport handling and client IP logging ([e81d81d](https://github.com/PunGrumpy/logixlysia/commit/e81d81d70b3694fe81db1773a8cbce82af1edd29))
|
|
259
|
+
- **logger:** improve error handling in log function ([a1874e1](https://github.com/PunGrumpy/logixlysia/commit/a1874e120154600baaed4109a2b6fe6f99db3181))
|
|
260
|
+
- **logger:** improve error stack handling in log function ([ab01fb2](https://github.com/PunGrumpy/logixlysia/commit/ab01fb2170c204e35670ab01b4f42e1187c044ef))
|
|
261
|
+
- **pino-integration:** remove outdated best practices link from documentation ([2cb8b0c](https://github.com/PunGrumpy/logixlysia/commit/2cb8b0cba487e77c1bd41acf525f0cd7ceb6f93c))
|
|
262
|
+
- **rotation:** improve cache check in shouldRotateByTime function ([9c5ea06](https://github.com/PunGrumpy/logixlysia/commit/9c5ea06e8cbdad2bb8a95369be54daa15cb37d21))
|
|
263
|
+
- **rotation:** use basename for file path extraction in getRotatedFiles function ([60f27b0](https://github.com/PunGrumpy/logixlysia/commit/60f27b09f33dc3490b73a036465bf896a40551ca))
|
|
264
|
+
|
|
265
|
+
## [5.2.0](https://github.com/PunGrumpy/logixlysia/compare/v5.1.1...v5.2.0) (2025-09-21)
|
|
266
|
+
|
|
267
|
+
### Features
|
|
268
|
+
|
|
269
|
+
- **logger:** add option for disable internal log ([0a25e46](https://github.com/PunGrumpy/logixlysia/commit/0a25e461b001453c750869df014a30f3fbe7ef0d)), closes [#125](https://github.com/PunGrumpy/logixlysia/issues/125)
|
|
270
|
+
- **logger:** add options for file and transport logging control ([8e56b0f](https://github.com/PunGrumpy/logixlysia/commit/8e56b0f39bbd80bd85ed93dc3beea6888ef3f63d))
|
|
271
|
+
|
|
272
|
+
## [5.1.1](https://github.com/PunGrumpy/logixlysia/compare/v5.1.0...v5.1.1) (2025-08-10)
|
|
273
|
+
|
|
274
|
+
### Bug Fixes
|
|
275
|
+
|
|
276
|
+
- preserve existing state when initializing logixlysia store ([484840e](https://github.com/PunGrumpy/logixlysia/commit/484840eab642c1c91f63f07c04258c77e677274b)), closes [#108](https://github.com/PunGrumpy/logixlysia/issues/108)
|
|
277
|
+
|
|
278
|
+
## [5.1.0](https://github.com/PunGrumpy/logixlysia/compare/v5.0.0...v5.1.0) (2025-06-24)
|
|
279
|
+
|
|
280
|
+
### Features
|
|
281
|
+
|
|
282
|
+
- **linter:** add Ultracite cursor rules for improved accessibility and code quality ([94602aa](https://github.com/PunGrumpy/logixlysia/commit/94602aa3e733c22b849c19e1afd474a500dbbff1))
|
|
283
|
+
- **logging:** add custom log methods and context support ([7c0c0b9](https://github.com/PunGrumpy/logixlysia/commit/7c0c0b995775ea058853b872d7860b4f789cdb45)), closes [#94](https://github.com/PunGrumpy/logixlysia/issues/94)
|
|
284
|
+
- **tests:** add comprehensive tests for route logger functionality ([3ed0670](https://github.com/PunGrumpy/logixlysia/commit/3ed0670fe6cfae1717e4cdc0c882943f827fad96))
|
|
285
|
+
|
|
286
|
+
### Bug Fixes
|
|
287
|
+
|
|
288
|
+
- **logging:** improve context serialization in log messages ([ac74afc](https://github.com/PunGrumpy/logixlysia/commit/ac74afc8b10b4b0e3d34144dcb7053da52653738))
|
|
289
|
+
- **logging:** prevent duplicate logging when using custom logs ([358f319](https://github.com/PunGrumpy/logixlysia/commit/358f319419e78bc1a206535506ddd6b84d312bfe))
|
|
290
|
+
- **logging:** set hasCustomLog to false in logixlysia function ([807d0ec](https://github.com/PunGrumpy/logixlysia/commit/807d0ec09df051ad2a5b9cd5f0d85026424ad06f))
|
|
291
|
+
|
|
292
|
+
## [5.0.0](https://github.com/PunGrumpy/logixlysia/compare/logixlysia-v4.2.7...logixlysia-v5.0.0) (2025-05-13)
|
|
293
|
+
|
|
294
|
+
### Features
|
|
295
|
+
|
|
296
|
+
- add custom logger support ([9ca6874](https://github.com/PunGrumpy/logixlysia/commit/9ca68744da198f02ee601f9facb3ad8ffbbc19f9)), closes [#93](https://github.com/PunGrumpy/logixlysia/issues/93)
|
|
297
|
+
|
|
298
|
+
### Bug Fixes
|
|
299
|
+
|
|
300
|
+
- improve server configuration defaults ([91bceb7](https://github.com/PunGrumpy/logixlysia/commit/91bceb797e38b902edb6d36b79399e05a8332e04)), closes [#96](https://github.com/PunGrumpy/logixlysia/issues/96)
|
|
301
|
+
|
|
302
|
+
## [4.2.2](https://github.com/PunGrumpy/logixlysia/compare/v4.2.1...v4.2.2) (2025-04-14)
|
|
303
|
+
|
|
304
|
+
### Bug Fixes
|
|
305
|
+
|
|
306
|
+
- **package:** remove unused devDependencies for cleaner setup ([7dab60f](https://github.com/PunGrumpy/logixlysia/commit/7dab60fcbccac59f8ac092ab4024c6ca249d00c2))
|
|
307
|
+
|
|
308
|
+
## [4.2.1](https://github.com/PunGrumpy/logixlysia/compare/v4.2.0...v4.2.1) (2025-04-13)
|
|
309
|
+
|
|
310
|
+
### Bug Fixes
|
|
311
|
+
|
|
312
|
+
- **ci:** replace lint step with Reviewdog integration for enhanced linting feedback ([81cd883](https://github.com/PunGrumpy/logixlysia/commit/81cd883b29723ffe640cc99dff9716a1613989ef))
|
|
313
|
+
|
|
314
|
+
## [4.2.0](https://github.com/PunGrumpy/logixlysia/compare/v4.1.2...v4.2.0) (2025-04-13)
|
|
315
|
+
|
|
316
|
+
### Features
|
|
317
|
+
|
|
318
|
+
- **docs:** add screenshot to documentation introduction ([800bb17](https://github.com/PunGrumpy/logixlysia/commit/800bb17dcfda88699cd7a0a2dc2e199e5704ce61))
|
|
319
|
+
- **website:** add new components and integrate react-fast-marquee ([6332f62](https://github.com/PunGrumpy/logixlysia/commit/6332f622c22fccf4cbadfb2a0099b9fac723f61a))
|
|
320
|
+
- **website:** add Open Graph image for enhanced social sharing ([de35d41](https://github.com/PunGrumpy/logixlysia/commit/de35d413bf6a10b06933eb2619d3cb6459618c3e))
|
|
321
|
+
- **website:** add transparent mode to navigation title ([9c01757](https://github.com/PunGrumpy/logixlysia/commit/9c01757f8808b5792b792fc1ed56e5b6e26603d2))
|
|
322
|
+
- **website:** add website documentation ([82e281c](https://github.com/PunGrumpy/logixlysia/commit/82e281cd5c08fa948ecf103eb70f218e61029142))
|
|
323
|
+
- **website:** enhance logging features and update documentation ([fa7ea45](https://github.com/PunGrumpy/logixlysia/commit/fa7ea45ae8c535a22b52e94a46df5931009e013f))
|
|
324
|
+
- **website:** initialize new documentation website with Fumadocs ([c864d9f](https://github.com/PunGrumpy/logixlysia/commit/c864d9f00ea6d0250f2db8b20a994975da18185e))
|
|
325
|
+
- **website:** integrate GitHub info component into layout ([5cd282c](https://github.com/PunGrumpy/logixlysia/commit/5cd282c072e56d90a7554a78dad1f27e8eb13400))
|
|
326
|
+
|
|
327
|
+
### Bug Fixes
|
|
328
|
+
|
|
329
|
+
- **docs:** correct license information in documentation ([e64f156](https://github.com/PunGrumpy/logixlysia/commit/e64f1565a2100a08ee324ddf68769726dcc6d9ff))
|
|
330
|
+
- **docs:** update file logging examples for clarity and consistency ([1d8653f](https://github.com/PunGrumpy/logixlysia/commit/1d8653f5aa97f8b6d829a10c0a510fc5a5b7dcae))
|
|
331
|
+
- **docs:** update help section for user support ([84e5052](https://github.com/PunGrumpy/logixlysia/commit/84e5052ddf4ef8e636d68be113d866df2d13fd09))
|
|
332
|
+
- **playground:** correct class name syntax for overflow visibility ([25ed919](https://github.com/PunGrumpy/logixlysia/commit/25ed919c1592129d8495afbc2927befb0c431fa0))
|
|
333
|
+
- **website:** adjust z-index for background image and hero component ([af593a7](https://github.com/PunGrumpy/logixlysia/commit/af593a709d625df06f2f0e7ecff55764be46cdd5))
|
|
334
|
+
- **website:** adjust z-index for hero component to improve visibility ([4cc144e](https://github.com/PunGrumpy/logixlysia/commit/4cc144e50c5e0e869e62c3821edd2216acf4cacd))
|
|
335
|
+
- **website:** simplify sidebar configuration in layout component ([dc7e479](https://github.com/PunGrumpy/logixlysia/commit/dc7e47962085c4922dcfaad83e1ce0e38dcfeff0))
|
|
336
|
+
- **website:** update logo assets and adjust class names ([18c8c57](https://github.com/PunGrumpy/logixlysia/commit/18c8c57a2337f3242e77eb0234afee487039f554))
|
|
337
|
+
- **website:** update sidebar configuration to include collapsible property ([2d27ee3](https://github.com/PunGrumpy/logixlysia/commit/2d27ee31b3eeb79505a70dee2fef214a45fb1a9e))
|
|
338
|
+
|
|
339
|
+
## [4.1.2](https://github.com/PunGrumpy/logixlysia/compare/v4.1.1...v4.1.2) (2025-02-24)
|
|
340
|
+
|
|
341
|
+
### Bug Fixes
|
|
342
|
+
|
|
343
|
+
- **logixlysia:** ensure message is a string in response headers ([2f9eeee](https://github.com/PunGrumpy/logixlysia/commit/2f9eeeeb1ec1ab7454e6633c28aa112963f54ed6)), closes [#74](https://github.com/PunGrumpy/logixlysia/issues/74)
|
|
344
|
+
|
|
345
|
+
## [4.1.1](https://github.com/PunGrumpy/logixlysia/compare/v4.1.0...v4.1.1) (2025-01-31)
|
|
346
|
+
|
|
347
|
+
### Bug Fixes
|
|
348
|
+
|
|
349
|
+
- **package:** wrong place @elysiajs/swagger and move to devDependencies ([a5e1a96](https://github.com/PunGrumpy/logixlysia/commit/a5e1a96606f53883a50331a94c1ba844dff67dc3))
|
|
350
|
+
|
|
351
|
+
## [4.1.0](https://github.com/PunGrumpy/logixlysia/compare/v4.0.0...v4.1.0) (2025-01-31)
|
|
352
|
+
|
|
353
|
+
### Features
|
|
354
|
+
|
|
355
|
+
- **logging:** add status string parsing and error handling ([32800ac](https://github.com/PunGrumpy/logixlysia/commit/32800acb0fbfdf957e2975b5773b0a350e3af0d8)), closes [#71](https://github.com/PunGrumpy/logixlysia/issues/71)
|
|
356
|
+
|
|
357
|
+
## [4.0.0](https://github.com/PunGrumpy/logixlysia/compare/v3.7.0...v4.0.0) (2024-10-28)
|
|
358
|
+
|
|
359
|
+
### ⚠ BREAKING CHANGES
|
|
360
|
+
|
|
361
|
+
- **timestamp:** The timestamp format in logs will now respect the new timestamp configuration options when provided
|
|
362
|
+
|
|
363
|
+
### Features
|
|
364
|
+
|
|
365
|
+
- **timestamp:** add customize timestamp formatting ([5a4e2a5](https://github.com/PunGrumpy/logixlysia/commit/5a4e2a5230443761d8c2ca99d9ebc586ff26a8c0)), closes [#69](https://github.com/PunGrumpy/logixlysia/issues/69)
|
|
366
|
+
|
|
367
|
+
## [3.7.0](https://github.com/PunGrumpy/logixlysia/compare/v3.6.2...v3.7.0) (2024-09-26)
|
|
368
|
+
|
|
369
|
+
### Features
|
|
370
|
+
|
|
371
|
+
- **optional:** add startup message config ([#66](https://github.com/PunGrumpy/logixlysia/pull/66)) ([c7a76db](https://github.com/PunGrumpy/logixlysia/commit/c7a76dbc0f30f4c9c607b52dedc49979e26b67ec)) by [@n0ky4](https://github.com/n0ky4)
|
|
372
|
+
|
|
373
|
+
## [3.6.2](https://github.com/PunGrumpy/logixlysia/compare/v3.6.1...v3.6.2) (2024-09-18)
|
|
374
|
+
|
|
375
|
+
### Bug Fixes
|
|
376
|
+
|
|
377
|
+
- **logtofile:** store error to log file ([1bb2d07](https://github.com/PunGrumpy/logixlysia/commit/1bb2d07ae0c815742a9eb7c930ac8487ac287b2c)), closes [#63](https://github.com/PunGrumpy/logixlysia/issues/63)
|
|
378
|
+
|
|
379
|
+
## [3.6.1](https://github.com/PunGrumpy/logixlysia/compare/v3.6.0...v3.6.1) (2024-08-21)
|
|
380
|
+
|
|
381
|
+
### Performance Improvements
|
|
382
|
+
|
|
383
|
+
- **logger:** improve performance and fix TypeScript errors ([d3ed751](https://github.com/PunGrumpy/logixlysia/commit/d3ed751041443b9bd2ce53350994e1443df40971))
|
|
384
|
+
|
|
385
|
+
## [3.6.0](https://github.com/PunGrumpy/logixlysia/compare/v3.5.0...v3.6.0) (2024-07-24)
|
|
386
|
+
|
|
387
|
+
### Features
|
|
388
|
+
|
|
389
|
+
- **custom-log:** add unix epoch timestamp option on `customLogFormat` configuration ([58d3e5b](https://github.com/PunGrumpy/logixlysia/commit/58d3e5b89bfef86aed1f5daa70d9a39982750073)), closes [#56](https://github.com/PunGrumpy/logixlysia/issues/56)
|
|
390
|
+
- **transports:** add custom tranporter support for flexible logging ([69e1b89](https://github.com/PunGrumpy/logixlysia/commit/69e1b8991d323d8463fb81cf5bf1b441f678318b)), closes [#51](https://github.com/PunGrumpy/logixlysia/issues/51)
|
|
391
|
+
|
|
392
|
+
## [3.5.0](https://github.com/PunGrumpy/logixlysia/compare/v3.4.0...v3.5.0) (2024-07-11)
|
|
393
|
+
|
|
394
|
+
### Features
|
|
395
|
+
|
|
396
|
+
- **config:** add option to toggle server start banner display ([c975cd6](https://github.com/PunGrumpy/logixlysia/commit/c975cd6da94e39d055cdf7bc43cc1ed1eec4971e)), closes [#52](https://github.com/PunGrumpy/logixlysia/issues/52)
|
|
397
|
+
|
|
398
|
+
## [3.4.0](https://github.com/PunGrumpy/logixlysia/compare/v3.3.2...v3.4.0) (2024-06-17)
|
|
399
|
+
|
|
400
|
+
### Features
|
|
401
|
+
|
|
402
|
+
- **logger:** add file logging capability ([6d913a3](https://github.com/PunGrumpy/logixlysia/commit/6d913a3dcc6cbba40bcaa4b6c4c4a4b474a90969))
|
|
403
|
+
|
|
404
|
+
### Bug Fixes
|
|
405
|
+
|
|
406
|
+
- **logger:** remove ANSI color codes from log files ([df42315](https://github.com/PunGrumpy/logixlysia/commit/df423151399f9436121b0d5d4a9b0424befdc835))
|
|
407
|
+
|
|
408
|
+
## [3.3.2](https://github.com/PunGrumpy/logixlysia/compare/v3.3.1...v3.3.2) (2024-06-06)
|
|
409
|
+
|
|
410
|
+
### Bug Fixes
|
|
411
|
+
|
|
412
|
+
- **npm-ignore:** accidentally ignore `tsconfig.json` ([85997f7](https://github.com/PunGrumpy/logixlysia/commit/85997f7dd8bb22b4811a7555e0a56e0cfb3ee269))
|
|
413
|
+
|
|
414
|
+
## [3.3.1](https://github.com/PunGrumpy/logixlysia/compare/v3.3.0...v3.3.1) (2024-06-01)
|
|
415
|
+
|
|
416
|
+
### Bug Fixes
|
|
417
|
+
|
|
418
|
+
- **deps:** move `ESLint` and related packages to dev dependencies ([98de50c](https://github.com/PunGrumpy/logixlysia/commit/98de50c6c3bffc5939963ebd04563204c7c70793)), closes [#46](https://github.com/PunGrumpy/logixlysia/issues/46)
|
|
419
|
+
|
|
420
|
+
## [3.3.0](https://github.com/PunGrumpy/logixlysia/compare/v3.2.0...v3.3.0) (2024-05-22)
|
|
421
|
+
|
|
422
|
+
### Features
|
|
423
|
+
|
|
424
|
+
- **color:** new color for methods (matching Postman color) ([0528886](https://github.com/PunGrumpy/logixlysia/commit/0528886ef9fdaa466e4b78b46fb09d31731b0520))
|
|
425
|
+
|
|
426
|
+
## [3.2.0](https://github.com/PunGrumpy/logixlysia/compare/v3.1.0...v3.2.0) (2024-05-07)
|
|
427
|
+
|
|
428
|
+
### Features
|
|
429
|
+
|
|
430
|
+
- update logger function name for clarity ([9badffc](https://github.com/PunGrumpy/logixlysia/commit/9badffc286fc13feda9eeffd28881990ae437c9f))
|
|
431
|
+
|
|
432
|
+
## [3.1.0](https://github.com/PunGrumpy/logixlysia/compare/v3.0.2...v3.1.0) (2024-04-09)
|
|
433
|
+
|
|
434
|
+
### Features
|
|
435
|
+
|
|
436
|
+
- **logger:** add log filtering functional ([af7d9ec](https://github.com/PunGrumpy/logixlysia/commit/af7d9ec5b2bb5ff5942d1a586be23a9d23a2c1cf)), closes [#38](https://github.com/PunGrumpy/logixlysia/issues/38)
|
|
437
|
+
|
|
438
|
+
### Bug Fixes
|
|
439
|
+
|
|
440
|
+
- CI/CD GitHub Actions ([3c40092](https://github.com/PunGrumpy/logixlysia/commit/3c40092bd0ac7bf8bd601a299453cf5080224234))
|
|
441
|
+
|
|
442
|
+
## [3.0.2](https://github.com/PunGrumpy/logixlysia/compare/v3.0.1...v3.0.2) (2024-04-08)
|
|
443
|
+
|
|
444
|
+
### Bug Fixes
|
|
445
|
+
|
|
446
|
+
- **logger:** add `config` property for logging configuration ([27d80eb](https://github.com/PunGrumpy/logixlysia/commit/27d80eb6b0c3a4a40a96738b235d9bc6b117c804))
|
|
447
|
+
|
|
448
|
+
## [3.0.1](https://github.com/PunGrumpy/logixlysia/compare/v3.0.0...v3.0.1) (2024-04-08)
|
|
449
|
+
|
|
450
|
+
### Bug Fixes
|
|
451
|
+
|
|
452
|
+
- **logger:** use correct status code in error log message ([a3ec49c](https://github.com/PunGrumpy/logixlysia/commit/a3ec49cd3fc1dc7f01a29b21e4de9cf543329c43)), closes [#33](https://github.com/PunGrumpy/logixlysia/issues/33)
|
|
453
|
+
|
|
454
|
+
## [3.0.0](https://github.com/PunGrumpy/logixlysia/compare/v2.3.1...v3.0.0) (2024-04-08)
|
|
455
|
+
|
|
456
|
+
### ⚠ BREAKING CHANGES
|
|
457
|
+
|
|
458
|
+
- Added support for custom log format in the logger
|
|
459
|
+
- Enhanced flexibility for define thier preferred log message structure
|
|
460
|
+
|
|
461
|
+
### Features
|
|
462
|
+
|
|
463
|
+
- **options:** add support for custom log format ([acc9380](https://github.com/PunGrumpy/logixlysia/commit/acc9380ea25691e7d7fec175094cb6a9878b6c69))
|
|
464
|
+
|
|
465
|
+
## [2.3.1](https://github.com/PunGrumpy/logixlysia/compare/v2.3.0...v2.3.1) (2024-04-07)
|
|
466
|
+
|
|
467
|
+
### Bug Fixes
|
|
468
|
+
|
|
469
|
+
- **index:** remove duplicate logging when options IP enabled ([2e99bd6](https://github.com/PunGrumpy/logixlysia/commit/2e99bd628b7160fb43161ca08e49f711b74e8666))
|
|
470
|
+
|
|
471
|
+
## [2.3.0](https://github.com/PunGrumpy/logixlysia/compare/v2.2.3...v2.3.0) (2024-04-06)
|
|
472
|
+
|
|
473
|
+
### Features
|
|
474
|
+
|
|
475
|
+
- **logger:** handle HTTP errors and log with appropriate status code ([276b3c4](https://github.com/PunGrumpy/logixlysia/commit/276b3c41334bcf1cefd032ae11f71fb8cda2bc9a)), closes [#24](https://github.com/PunGrumpy/logixlysia/issues/24)
|
|
476
|
+
|
|
477
|
+
## [2.2.3](https://github.com/PunGrumpy/logixlysia/compare/v2.2.2...v2.2.3) (2024-04-06)
|
|
478
|
+
|
|
479
|
+
### Bug Fixes
|
|
480
|
+
|
|
481
|
+
- **error-log:** add global to `onError` ([e217baa](https://github.com/PunGrumpy/logixlysia/commit/e217baad9f72fa3e866f959f371768ed2ed22e33))
|
|
482
|
+
- **ts2488:** that method return an iterator ([35da93f](https://github.com/PunGrumpy/logixlysia/commit/35da93f75e34ff212ddd31ff951425551f31c764))
|
|
483
|
+
|
|
484
|
+
## [2.2.2](https://github.com/PunGrumpy/logixlysia/compare/v2.2.1...v2.2.2) (2024-04-06)
|
|
485
|
+
|
|
486
|
+
### Bug Fixes
|
|
487
|
+
|
|
488
|
+
- **eslint:** change to use `eslint.config.cjs` instead `.eslintrc.cjs` ([506a33b](https://github.com/PunGrumpy/logixlysia/commit/506a33bc6540614a0b912ddedec109b2215affa3))
|
|
489
|
+
- package.json to reduce vulnerabilities ([f768e88](https://github.com/PunGrumpy/logixlysia/commit/f768e88acd7d7c1faf32dab06a467c2cd6ba8f9c))
|
|
490
|
+
|
|
491
|
+
## [2.2.1](https://github.com/PunGrumpy/logixlysia/compare/v2.2.0...v2.2.1) (2024-03-19)
|
|
492
|
+
|
|
493
|
+
### Bug Fixes
|
|
494
|
+
|
|
495
|
+
- **index:** remove `onBeforeHandle` for avoid repeat logging ([4c6f0b9](https://github.com/PunGrumpy/logixlysia/commit/4c6f0b9912a4319ada15ad2a5110a9ed34f08a11))
|
|
496
|
+
|
|
497
|
+
### Reverts
|
|
498
|
+
|
|
499
|
+
- **deps:** new come back to old version ([361ac6b](https://github.com/PunGrumpy/logixlysia/commit/361ac6b2821ac897c1a4658cbfa1b5eb1a190804))
|
|
500
|
+
|
|
501
|
+
## [2.2.0](https://github.com/PunGrumpy/logixlysia/compare/v2.1.0...v2.2.0) (2024-03-19)
|
|
502
|
+
|
|
503
|
+
### Features
|
|
504
|
+
|
|
505
|
+
- **options:** add show ip ([4e997c5](https://github.com/PunGrumpy/logixlysia/commit/4e997c557e9aef6046a93e0cab9fe11a87df3430))
|
|
506
|
+
|
|
507
|
+
### Bug Fixes
|
|
508
|
+
|
|
509
|
+
- **logger:** change to use array and push them ([3feefb7](https://github.com/PunGrumpy/logixlysia/commit/3feefb7a8dddc42c4eec54de40ab9dd8d5c70e70))
|
|
510
|
+
|
|
511
|
+
## [2.1.0](https://github.com/PunGrumpy/logixlysia/compare/v2.0.2...v2.1.0) (2024-01-25)
|
|
512
|
+
|
|
513
|
+
### Features
|
|
514
|
+
|
|
515
|
+
- **logger:** implement asynchronous logging functionality ([1017af0](https://github.com/PunGrumpy/logixlysia/commit/1017af0a28bd6121a85ec814a9177fd303c2572c))
|
|
516
|
+
|
|
517
|
+
## [2.0.2](https://github.com/PunGrumpy/logixlysia/compare/v2.0.1...v2.0.2) (2024-01-07)
|
|
518
|
+
|
|
519
|
+
### Bug Fixes
|
|
520
|
+
|
|
521
|
+
- **logger:** change time from `iso` to `local` ([33ff28a](https://github.com/PunGrumpy/logixlysia/commit/33ff28a4a41db1dda7ca224e4807bd2451b95985))
|
|
522
|
+
|
|
523
|
+
## [2.0.1](https://github.com/PunGrumpy/logixlysia/compare/v2.0.0...v2.0.1) (2024-01-03)
|
|
524
|
+
|
|
525
|
+
### Bug Fixes
|
|
526
|
+
|
|
527
|
+
- **index:** elysia `0.8.8` doesn't contain `app` variable ([72f2314](https://github.com/PunGrumpy/logixlysia/commit/72f2314adf392b2e5387bb731f1417bf689e2dd9))
|
|
528
|
+
|
|
529
|
+
## [2.0.0](https://github.com/PunGrumpy/logixlysia/compare/v1.0.0...v2.0.0) (2023-11-19)
|
|
530
|
+
|
|
531
|
+
### Features
|
|
532
|
+
|
|
533
|
+
- **ci/cd:** separate deploy workflows from ci workflows ([e0344ae](https://github.com/PunGrumpy/logixlysia/commit/e0344ae32f711d140b1c914164e8eb7a57181558))
|
|
534
|
+
|
|
535
|
+
## 1.0.0 (2023-11-18)
|
|
536
|
+
|
|
537
|
+
### Features
|
|
538
|
+
|
|
539
|
+
- add example for test ([8f0f1ee](https://github.com/PunGrumpy/logixlysia/commit/8f0f1ee01de5e5c639687bf0971f0347c3516ed0))
|
|
540
|
+
- add log on start ([f1adeb9](https://github.com/PunGrumpy/logixlysia/commit/f1adeb9c620b42a2639ea6f01fa3e0ebd583ee8f))
|
|
541
|
+
- add logger format and enhance logging functionality ([c0887e8](https://github.com/PunGrumpy/logixlysia/commit/c0887e8eed6142a476d2fd7eb343ef6933e26d31))
|
|
542
|
+
- add new style on logging ([f1d9583](https://github.com/PunGrumpy/logixlysia/commit/f1d95832eacd6528c23454b914c61e09b4c1b83a))
|
|
543
|
+
- **ci:** add google automated workflows ([526e069](https://github.com/PunGrumpy/logixlysia/commit/526e0695029b0235a268445fd1c72b267c030c13))
|
|
544
|
+
- setting environment ([6f5e553](https://github.com/PunGrumpy/logixlysia/commit/6f5e553744999c70de1d8fb1b42a5eb7b75d8798))
|
|
545
|
+
|
|
546
|
+
### Bug Fixes
|
|
547
|
+
|
|
548
|
+
- change name ([ee0c164](https://github.com/PunGrumpy/logixlysia/commit/ee0c1645be16a582c4df03874fdf0712e27a9e6a))
|
|
549
|
+
- change to use chalk instead piccolors ([b2fe4f5](https://github.com/PunGrumpy/logixlysia/commit/b2fe4f5a8dce51731e1729b9b0f2c7a15d280978))
|
|
550
|
+
- **types:** add types ([38e1f63](https://github.com/PunGrumpy/logixlysia/commit/38e1f63b4b92f4829772d638d45d7bad8182dbdc))
|
|
551
|
+
- update jsdocs and add new banner ([226c7eb](https://github.com/PunGrumpy/logixlysia/commit/226c7ebac504f661e58a9581c54e1937dfbea4a8))
|
|
552
|
+
- **utils:** update jsdocs ([8cab996](https://github.com/PunGrumpy/logixlysia/commit/8cab996e757d997d3a05183e85d4bfe684fdb11d))
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 PunGrumpy
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -42,6 +42,20 @@ const app = new Elysia({
|
|
|
42
42
|
app.listen(3000)
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
+
## `✨` Features
|
|
46
|
+
|
|
47
|
+
- **Request context**: accumulate fields with `mergeContext` into a context tree. [Docs](https://logixlysia.vercel.app/docs/features/request-context)
|
|
48
|
+
- **Presets**: `dev`, `prod`, and `json` output. [Docs](https://logixlysia.vercel.app/docs/configuration)
|
|
49
|
+
- **File logging**: writes to disk with rotation by size, age, or count. [Docs](https://logixlysia.vercel.app/docs/features/file-logging)
|
|
50
|
+
- **Adapters**: nine built-in destinations, Axiom, Better Stack, ClickHouse, Datadog, HyperDX, Loki, OTLP, PostHog, and Sentry. [Docs](https://logixlysia.vercel.app/docs/adapters/overview)
|
|
51
|
+
- **Sampling**: head and tail sampling controls log volume. [Docs](https://logixlysia.vercel.app/docs/features/sampling)
|
|
52
|
+
- **Enrichers**: add trace, user agent, geo, and size fields to every request. [Docs](https://logixlysia.vercel.app/docs/features/enrichers)
|
|
53
|
+
- **Redaction**: `autoRedact` masks PII by pattern; `logixlysia/desertant` adds neural redaction. [Config docs](https://logixlysia.vercel.app/docs/configuration#autoredact), [Neural redaction docs](https://logixlysia.vercel.app/docs/integrations/desertant)
|
|
54
|
+
- **Structured errors**: `HttpError` carries `why`, `fix`, and `link`. [Docs](https://logixlysia.vercel.app/docs/api-reference)
|
|
55
|
+
- **Request IDs**: read from the incoming request or generated for every request. [Docs](https://logixlysia.vercel.app/docs/features/request-id)
|
|
56
|
+
- **OpenTelemetry**: trace correlation and AI usage metrics on the access log. [Docs](https://logixlysia.vercel.app/docs/integrations/otel)
|
|
57
|
+
- **WebSocket logging**: lifecycle logs via `wrapWs`. [Docs](https://logixlysia.vercel.app/docs/features/websocket)
|
|
58
|
+
|
|
45
59
|
## `📚` Documentation
|
|
46
60
|
|
|
47
61
|
Check out the [website](https://logixlysia.vercel.app) for more detailed documentation and examples.
|