@trebired/logger 0.1.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 +20 -0
- package/LICENSE +21 -0
- package/README.md +368 -0
- package/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +46 -0
- package/dist/constants.js.map +1 -0
- package/dist/core/create_log.d.ts +4 -0
- package/dist/core/create_log.d.ts.map +1 -0
- package/dist/core/create_log.js +206 -0
- package/dist/core/create_log.js.map +1 -0
- package/dist/format/console.d.ts +6 -0
- package/dist/format/console.d.ts.map +1 -0
- package/dist/format/console.js +62 -0
- package/dist/format/console.js.map +1 -0
- package/dist/groups.d.ts +7 -0
- package/dist/groups.d.ts.map +1 -0
- package/dist/groups.js +22 -0
- package/dist/groups.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/levels/index.d.ts +7 -0
- package/dist/levels/index.d.ts.map +1 -0
- package/dist/levels/index.js +47 -0
- package/dist/levels/index.js.map +1 -0
- package/dist/metadata/process.d.ts +7 -0
- package/dist/metadata/process.d.ts.map +1 -0
- package/dist/metadata/process.js +93 -0
- package/dist/metadata/process.js.map +1 -0
- package/dist/middleware/request.d.ts +4 -0
- package/dist/middleware/request.d.ts.map +1 -0
- package/dist/middleware/request.js +32 -0
- package/dist/middleware/request.js.map +1 -0
- package/dist/storage/names.d.ts +21 -0
- package/dist/storage/names.d.ts.map +1 -0
- package/dist/storage/names.js +62 -0
- package/dist/storage/names.js.map +1 -0
- package/dist/storage/options.d.ts +5 -0
- package/dist/storage/options.d.ts.map +1 -0
- package/dist/storage/options.js +26 -0
- package/dist/storage/options.js.map +1 -0
- package/dist/storage/query.d.ts +6 -0
- package/dist/storage/query.d.ts.map +1 -0
- package/dist/storage/query.js +72 -0
- package/dist/storage/query.js.map +1 -0
- package/dist/storage/retention.d.ts +5 -0
- package/dist/storage/retention.d.ts.map +1 -0
- package/dist/storage/retention.js +50 -0
- package/dist/storage/retention.js.map +1 -0
- package/dist/storage/walk.d.ts +5 -0
- package/dist/storage/walk.d.ts.map +1 -0
- package/dist/storage/walk.js +59 -0
- package/dist/storage/walk.js.map +1 -0
- package/dist/storage/write.d.ts +38 -0
- package/dist/storage/write.d.ts.map +1 -0
- package/dist/storage/write.js +169 -0
- package/dist/storage/write.js.map +1 -0
- package/dist/stream/index.d.ts +11 -0
- package/dist/stream/index.d.ts.map +1 -0
- package/dist/stream/index.js +12 -0
- package/dist/stream/index.js.map +1 -0
- package/dist/types.d.ts +126 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/datetime.d.ts +16 -0
- package/dist/utils/datetime.d.ts.map +1 -0
- package/dist/utils/datetime.js +147 -0
- package/dist/utils/datetime.js.map +1 -0
- package/dist/utils/runtime.d.ts +6 -0
- package/dist/utils/runtime.d.ts.map +1 -0
- package/dist/utils/runtime.js +30 -0
- package/dist/utils/runtime.js.map +1 -0
- package/dist/utils/size.d.ts +3 -0
- package/dist/utils/size.d.ts.map +1 -0
- package/dist/utils/size.js +24 -0
- package/dist/utils/size.js.map +1 -0
- package/dist/utils/values.d.ts +6 -0
- package/dist/utils/values.d.ts.map +1 -0
- package/dist/utils/values.js +21 -0
- package/dist/utils/values.js.map +1 -0
- package/package.json +59 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create_log.js","sourceRoot":"","sources":["../../src/core/create_log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ConsoleOptions, LogEntry, LogLevelConfig, LogStreamName, NormalizedConsoleOptions } from "../types.js";
|
|
2
|
+
declare function normalizeConsoleOptions(input: boolean | ConsoleOptions | undefined): NormalizedConsoleOptions;
|
|
3
|
+
declare function formatConsole(entry: LogEntry, levelConfig: LogLevelConfig, options: NormalizedConsoleOptions, timeZone: string): string;
|
|
4
|
+
declare function writeConsole(streamName: LogStreamName | undefined, line: string): void;
|
|
5
|
+
export { formatConsole, normalizeConsoleOptions, writeConsole };
|
|
6
|
+
//# sourceMappingURL=console.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/format/console.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAIrH,iBAAS,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,GAAG,wBAAwB,CAiBtG;AAmBD,iBAAS,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAoBhI;AAED,iBAAS,YAAY,CAAC,UAAU,EAAE,aAAa,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAO/E;AAED,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { formatDisplayTimestamp, normalizeLocale } from "../utils/datetime.js";
|
|
2
|
+
import { toString } from "../utils/values.js";
|
|
3
|
+
function normalizeConsoleOptions(input) {
|
|
4
|
+
if (input === false) {
|
|
5
|
+
return { enabled: false, colors: true, timestamp: true, group: true, metadata: true, locale: normalizeLocale() };
|
|
6
|
+
}
|
|
7
|
+
if (input && typeof input === "object") {
|
|
8
|
+
return {
|
|
9
|
+
enabled: input.enabled !== false,
|
|
10
|
+
colors: input.colors !== false,
|
|
11
|
+
timestamp: input.timestamp !== false,
|
|
12
|
+
group: input.group !== false,
|
|
13
|
+
metadata: input.metadata !== false,
|
|
14
|
+
locale: normalizeLocale(input.locale),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
return { enabled: true, colors: true, timestamp: true, group: true, metadata: true, locale: normalizeLocale() };
|
|
18
|
+
}
|
|
19
|
+
function hexToAnsi(hex, bold = false) {
|
|
20
|
+
const raw = toString(hex).replace(/^#/, "");
|
|
21
|
+
const normalized = raw.length >= 6 ? raw.slice(0, 6) : "";
|
|
22
|
+
if (!/^[a-f0-9]{6}$/i.test(normalized))
|
|
23
|
+
return bold ? "\x1b[1m" : "";
|
|
24
|
+
const r = parseInt(normalized.slice(0, 2), 16);
|
|
25
|
+
const g = parseInt(normalized.slice(2, 4), 16);
|
|
26
|
+
const b = parseInt(normalized.slice(4, 6), 16);
|
|
27
|
+
return `${bold ? "\x1b[1m" : ""}\x1b[38;2;${r};${g};${b}m`;
|
|
28
|
+
}
|
|
29
|
+
function color(options, hex, value, bold = false) {
|
|
30
|
+
const text = String(value == null ? "" : value);
|
|
31
|
+
if (!options.colors)
|
|
32
|
+
return text;
|
|
33
|
+
return `${hexToAnsi(hex || "", bold)}${text}\x1b[0m`;
|
|
34
|
+
}
|
|
35
|
+
function formatConsole(entry, levelConfig, options, timeZone) {
|
|
36
|
+
const levelText = color(options, levelConfig.color || "#ffffff", levelConfig.label || entry.level.toUpperCase(), levelConfig.bold === true);
|
|
37
|
+
const bracketParts = [levelText];
|
|
38
|
+
if (options.group)
|
|
39
|
+
bracketParts.push(color(options, "#5c5c5c", entry.group));
|
|
40
|
+
let line = `${color(options, "#ffffff", "[")}${bracketParts.join(color(options, "#5c5c5c", ", "))}${color(options, "#ffffff", "]")} ${entry.message}`;
|
|
41
|
+
if (options.timestamp) {
|
|
42
|
+
const when = color(options, "#8e8e8e", `|${formatDisplayTimestamp(entry.recorded_at, options.locale, timeZone)}|`);
|
|
43
|
+
line = `${when} ${line}`;
|
|
44
|
+
}
|
|
45
|
+
if (options.metadata && entry.metadata && Object.keys(entry.metadata).length) {
|
|
46
|
+
line += ` ${color(options, "#5c5c5c", JSON.stringify(entry.metadata))}`;
|
|
47
|
+
}
|
|
48
|
+
if (levelConfig.showStack === true && entry.metadata && entry.metadata.stack)
|
|
49
|
+
line += `\n${String(entry.metadata.stack)}`;
|
|
50
|
+
return line;
|
|
51
|
+
}
|
|
52
|
+
function writeConsole(streamName, line) {
|
|
53
|
+
const safeLine = `${String(line == null ? "" : line)}\n`;
|
|
54
|
+
if (streamName === "stderr" && process.stderr && typeof process.stderr.write === "function") {
|
|
55
|
+
process.stderr.write(safeLine);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
if (process.stdout && typeof process.stdout.write === "function")
|
|
59
|
+
process.stdout.write(safeLine);
|
|
60
|
+
}
|
|
61
|
+
export { formatConsole, normalizeConsoleOptions, writeConsole };
|
|
62
|
+
//# sourceMappingURL=console.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/format/console.ts"],"names":[],"mappings":"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"}
|
package/dist/groups.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../src/groups.ts"],"names":[],"mappings":"AAOA,iBAAS,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAQnE;AAED,iBAAS,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIlD;AAED,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/groups.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { TOP_LEVEL } from "./constants.js";
|
|
2
|
+
import { toString } from "./utils/values.js";
|
|
3
|
+
function cleanGroupPart(part) {
|
|
4
|
+
return toString(part).replace(/[^a-zA-Z0-9_-]/g, "-");
|
|
5
|
+
}
|
|
6
|
+
function normGroup(input) {
|
|
7
|
+
const raw = toString(input) || TOP_LEVEL;
|
|
8
|
+
const parts = raw.split(".").map(cleanGroupPart).filter(Boolean);
|
|
9
|
+
const safeParts = parts.length ? parts : [TOP_LEVEL];
|
|
10
|
+
return {
|
|
11
|
+
key: safeParts.join("."),
|
|
12
|
+
parts: safeParts,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function groupKeyFromRelDir(relDir) {
|
|
16
|
+
const trimmed = String(relDir || "").replace(/^[/\\]+|[/\\]+$/g, "");
|
|
17
|
+
if (!trimmed)
|
|
18
|
+
return TOP_LEVEL;
|
|
19
|
+
return trimmed.split(/[\\/]+/).filter(Boolean).join(".");
|
|
20
|
+
}
|
|
21
|
+
export { groupKeyFromRelDir, normGroup };
|
|
22
|
+
//# sourceMappingURL=groups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groups.js","sourceRoot":"","sources":["../src/groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;IACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrD,OAAO;QACL,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QACxB,KAAK,EAAE,SAAS;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { TOP_LEVEL, DEFAULT_LEVELS as defaultLevels } from "./constants.js";
|
|
2
|
+
export { createLog } from "./core/create_log.js";
|
|
3
|
+
export { normalizeLevels } from "./levels/index.js";
|
|
4
|
+
export { getEntriesForDir } from "./storage/query.js";
|
|
5
|
+
export { logStream } from "./stream/index.js";
|
|
6
|
+
export type { ConsoleOptions, CreateLogOptions, LogEntry, LogInstance, LogLevelConfig, LogOrigin, LogQueryOptions, LogStats, LogStreamName, RedactOptions, RedactTransformArgs, RequestLoggerOptions, RetentionOptions, WriteOptions, } from "./types.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,cAAc,EACd,SAAS,EACT,eAAe,EACf,QAAQ,EACR,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,GACb,MAAM,YAAY,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { TOP_LEVEL, DEFAULT_LEVELS as defaultLevels } from "./constants.js";
|
|
2
|
+
export { createLog } from "./core/create_log.js";
|
|
3
|
+
export { normalizeLevels } from "./levels/index.js";
|
|
4
|
+
export { getEntriesForDir } from "./storage/query.js";
|
|
5
|
+
export { logStream } from "./stream/index.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { LogLevelConfig } from "../types.js";
|
|
2
|
+
declare function assertLevelName(name: string): void;
|
|
3
|
+
declare function normalizeLevels(input?: Record<string, LogLevelConfig>): Record<string, LogLevelConfig>;
|
|
4
|
+
declare function minLevelWeight(minLevel: string | number | undefined, levels: Record<string, LogLevelConfig>): number;
|
|
5
|
+
declare function normalizeLevel(level: unknown, levels: Record<string, LogLevelConfig>): string;
|
|
6
|
+
export { assertLevelName, minLevelWeight, normalizeLevel, normalizeLevels };
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/levels/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,iBAAS,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,iBAAS,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA6B/F;AAED,iBAAS,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,MAAM,CAM7G;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,MAAM,CAGtF;AAED,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { DEFAULT_LEVELS } from "../constants.js";
|
|
2
|
+
import { toString } from "../utils/values.js";
|
|
3
|
+
function assertLevelName(name) {
|
|
4
|
+
if (!/^[a-z0-9_-]+$/.test(name))
|
|
5
|
+
throw new Error(`invalid-log-level-name: ${name}`);
|
|
6
|
+
}
|
|
7
|
+
function normalizeLevels(input) {
|
|
8
|
+
const levels = {};
|
|
9
|
+
for (const [name, cfg] of Object.entries(DEFAULT_LEVELS))
|
|
10
|
+
levels[name] = { ...cfg };
|
|
11
|
+
const userLevels = input && typeof input === "object" && !Array.isArray(input) ? input : {};
|
|
12
|
+
for (const [rawName, rawConfig] of Object.entries(userLevels)) {
|
|
13
|
+
const name = toString(rawName);
|
|
14
|
+
assertLevelName(name);
|
|
15
|
+
const cfg = rawConfig && typeof rawConfig === "object" ? rawConfig : null;
|
|
16
|
+
const weight = Number(cfg && cfg.weight);
|
|
17
|
+
if (!Number.isFinite(weight))
|
|
18
|
+
throw new Error(`invalid-log-level-weight: ${name}`);
|
|
19
|
+
const existing = levels[name] || {};
|
|
20
|
+
levels[name] = {
|
|
21
|
+
...existing,
|
|
22
|
+
weight,
|
|
23
|
+
label: toString(cfg && cfg.label) || existing.label || name.toUpperCase(),
|
|
24
|
+
color: toString(cfg && cfg.color) || existing.color || "#ffffff",
|
|
25
|
+
stream: cfg && cfg.stream === "stderr" ? "stderr" : cfg && cfg.stream === "stdout" ? "stdout" : existing.stream || "stdout",
|
|
26
|
+
showStack: typeof (cfg && cfg.showStack) === "boolean" ? Boolean(cfg && cfg.showStack) : Boolean(existing.showStack),
|
|
27
|
+
bold: typeof (cfg && cfg.bold) === "boolean" ? Boolean(cfg && cfg.bold) : Boolean(existing.bold),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
return Object.fromEntries(Object.entries(levels).sort(([aName, a], [bName, b]) => a.weight - b.weight || aName.localeCompare(bName)));
|
|
31
|
+
}
|
|
32
|
+
function minLevelWeight(minLevel, levels) {
|
|
33
|
+
if (typeof minLevel === "number")
|
|
34
|
+
return Number.isFinite(minLevel) ? minLevel : Number.NEGATIVE_INFINITY;
|
|
35
|
+
const name = toString(minLevel).toLowerCase();
|
|
36
|
+
if (!name)
|
|
37
|
+
return Number.NEGATIVE_INFINITY;
|
|
38
|
+
if (!levels[name])
|
|
39
|
+
throw new Error(`unknown-min-log-level: ${name}`);
|
|
40
|
+
return levels[name].weight;
|
|
41
|
+
}
|
|
42
|
+
function normalizeLevel(level, levels) {
|
|
43
|
+
const name = toString(level).toLowerCase();
|
|
44
|
+
return levels[name] ? name : "info";
|
|
45
|
+
}
|
|
46
|
+
export { assertLevelName, minLevelWeight, normalizeLevel, normalizeLevels };
|
|
47
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/levels/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RedactOptions } from "../types.js";
|
|
2
|
+
declare function sanitizeMetadata(input: unknown): Record<string, unknown>;
|
|
3
|
+
declare function applySerializers(input: Record<string, unknown>, serializers?: Record<string, (value: unknown) => unknown>): Record<string, unknown>;
|
|
4
|
+
declare function redactMetadata(input: Record<string, unknown>, options?: RedactOptions): Record<string, unknown>;
|
|
5
|
+
declare function prepareMetadata(input: unknown, serializers?: Record<string, (value: unknown) => unknown>, redact?: RedactOptions): Record<string, unknown>;
|
|
6
|
+
export { applySerializers, prepareMetadata, redactMetadata, sanitizeMetadata };
|
|
7
|
+
//# sourceMappingURL=process.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/metadata/process.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWjE;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2B5I;AAeD,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BxG;AAED,iBAAS,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAInJ;AAED,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { DEFAULT_SENSITIVE_KEYS, RESERVED_METADATA_KEYS } from "../constants.js";
|
|
2
|
+
import { asObject, clonePlain, isPlainObject, toString } from "../utils/values.js";
|
|
3
|
+
function sanitizeMetadata(input) {
|
|
4
|
+
const src = asObject(input);
|
|
5
|
+
const out = {};
|
|
6
|
+
for (const key of Object.keys(src)) {
|
|
7
|
+
if (RESERVED_METADATA_KEYS.has(key))
|
|
8
|
+
continue;
|
|
9
|
+
if (src[key] === undefined)
|
|
10
|
+
continue;
|
|
11
|
+
out[key] = src[key];
|
|
12
|
+
}
|
|
13
|
+
return out;
|
|
14
|
+
}
|
|
15
|
+
function applySerializers(input, serializers) {
|
|
16
|
+
if (!serializers || typeof serializers !== "object")
|
|
17
|
+
return input;
|
|
18
|
+
const out = clonePlain(input);
|
|
19
|
+
function visit(value, path) {
|
|
20
|
+
if (Array.isArray(value))
|
|
21
|
+
return value.map((item, index) => visit(item, path ? `${path}.${index}` : String(index)));
|
|
22
|
+
if (!isPlainObject(value))
|
|
23
|
+
return value;
|
|
24
|
+
const obj = {};
|
|
25
|
+
for (const key of Object.keys(value)) {
|
|
26
|
+
const childPath = path ? `${path}.${key}` : key;
|
|
27
|
+
const serializer = serializers[childPath] || serializers[key];
|
|
28
|
+
const childValue = visit(value[key], childPath);
|
|
29
|
+
if (serializer) {
|
|
30
|
+
try {
|
|
31
|
+
obj[key] = serializer(childValue);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
obj[key] = `[serializer-error:${error instanceof Error ? error.message : String(error)}]`;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
obj[key] = childValue;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return obj;
|
|
42
|
+
}
|
|
43
|
+
return visit(out, "");
|
|
44
|
+
}
|
|
45
|
+
function shouldRedact(path, key, options) {
|
|
46
|
+
const lowerKey = key.toLowerCase();
|
|
47
|
+
if (options.includeDefaultSensitiveKeys !== false && DEFAULT_SENSITIVE_KEYS.has(lowerKey))
|
|
48
|
+
return true;
|
|
49
|
+
const paths = Array.isArray(options.paths) ? options.paths : [];
|
|
50
|
+
for (const pattern of paths) {
|
|
51
|
+
if (typeof pattern === "string" && (pattern === path || pattern === key))
|
|
52
|
+
return true;
|
|
53
|
+
if (pattern instanceof RegExp && pattern.test(path))
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
function redactMetadata(input, options) {
|
|
59
|
+
const cfg = options || {};
|
|
60
|
+
const replacement = toString(cfg.replacement) || "[REDACTED]";
|
|
61
|
+
const includeDefaultSensitiveKeys = cfg.includeDefaultSensitiveKeys !== false;
|
|
62
|
+
function visit(value, path, key) {
|
|
63
|
+
if (shouldRedact(path, key, { ...cfg, includeDefaultSensitiveKeys })) {
|
|
64
|
+
if (typeof cfg.transform === "function") {
|
|
65
|
+
try {
|
|
66
|
+
return cfg.transform({ path, key, value, replacement });
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return replacement;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return replacement;
|
|
73
|
+
}
|
|
74
|
+
if (Array.isArray(value))
|
|
75
|
+
return value.map((item, index) => visit(item, path ? `${path}.${index}` : String(index), String(index)));
|
|
76
|
+
if (!isPlainObject(value))
|
|
77
|
+
return value;
|
|
78
|
+
const out = {};
|
|
79
|
+
for (const childKey of Object.keys(value)) {
|
|
80
|
+
const childPath = path ? `${path}.${childKey}` : childKey;
|
|
81
|
+
out[childKey] = visit(value[childKey], childPath, childKey);
|
|
82
|
+
}
|
|
83
|
+
return out;
|
|
84
|
+
}
|
|
85
|
+
return visit(input, "", "");
|
|
86
|
+
}
|
|
87
|
+
function prepareMetadata(input, serializers, redact) {
|
|
88
|
+
const sanitized = sanitizeMetadata(input);
|
|
89
|
+
const serialized = applySerializers(sanitized, serializers);
|
|
90
|
+
return redactMetadata(serialized, redact);
|
|
91
|
+
}
|
|
92
|
+
export { applySerializers, prepareMetadata, redactMetadata, sanitizeMetadata };
|
|
93
|
+
//# sourceMappingURL=process.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/metadata/process.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { RequestLoggerOptions } from "../types.js";
|
|
2
|
+
declare function buildRequestMiddleware(log: any, defaults?: RequestLoggerOptions): (options?: RequestLoggerOptions) => (req: any, res: any, next: () => void) => void;
|
|
3
|
+
export { buildRequestMiddleware };
|
|
4
|
+
//# sourceMappingURL=request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/middleware/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAOxD,iBAAS,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,oBAAoB,IAGzC,UAAU,oBAAoB,MAMlD,KAAK,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,IAAI,UAkB/C;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { toString } from "../utils/values.js";
|
|
2
|
+
function requestId() {
|
|
3
|
+
return `${Date.now().toString(36)}${Math.random().toString(36).slice(2, 10)}`;
|
|
4
|
+
}
|
|
5
|
+
function buildRequestMiddleware(log, defaults) {
|
|
6
|
+
const baseOptions = defaults || {};
|
|
7
|
+
return function requestLogger(options) {
|
|
8
|
+
const cfg = { ...baseOptions, ...(options || {}) };
|
|
9
|
+
const group = toString(cfg.group) || "http.request";
|
|
10
|
+
const idHeader = toString(cfg.idHeader);
|
|
11
|
+
const attach = cfg.attach !== false;
|
|
12
|
+
return (req, res, next) => {
|
|
13
|
+
const headerValue = idHeader && req && req.headers && req.headers[idHeader.toLowerCase()]
|
|
14
|
+
? req.headers[idHeader.toLowerCase()]
|
|
15
|
+
: "";
|
|
16
|
+
const req_id = toString(Array.isArray(headerValue) ? headerValue[0] : headerValue) || requestId();
|
|
17
|
+
const commonMeta = {
|
|
18
|
+
req_id,
|
|
19
|
+
host: req && req.hostname ? req.hostname : req && req.headers ? req.headers.host : null,
|
|
20
|
+
method: req && req.method ? req.method : null,
|
|
21
|
+
path: req && (req.originalUrl || req.url) ? req.originalUrl || req.url : null,
|
|
22
|
+
subdomain: res && res.locals && res.locals.currentSubdomain ? res.locals.currentSubdomain : "main",
|
|
23
|
+
};
|
|
24
|
+
if (attach && req && typeof req === "object")
|
|
25
|
+
req.log = log.withScope(null, group).child(commonMeta);
|
|
26
|
+
if (typeof next === "function")
|
|
27
|
+
next();
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export { buildRequestMiddleware };
|
|
32
|
+
//# sourceMappingURL=request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/middleware/request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,SAAS,SAAS;IAChB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAQ,EAAE,QAA+B;IACvE,MAAM,WAAW,GAAG,QAAQ,IAAI,EAAE,CAAC;IAEnC,OAAO,SAAS,aAAa,CAAC,OAA8B;QAC1D,MAAM,GAAG,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC;QACpD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC;QAEpC,OAAO,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAgB,EAAE,EAAE;YAC9C,MAAM,WAAW,GACf,QAAQ,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACnE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACrC,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,SAAS,EAAE,CAAC;YAClG,MAAM,UAAU,GAAG;gBACjB,MAAM;gBACN,IAAI,EAAE,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBACvF,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;gBAC7C,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;gBAC7E,SAAS,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM;aACnG,CAAC;YAEF,IAAI,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACrG,IAAI,OAAO,IAAI,KAAK,UAAU;gBAAE,IAAI,EAAE,CAAC;QACzC,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { LogEntry } from "../types.js";
|
|
2
|
+
type ParsedLogFile = {
|
|
3
|
+
day: string;
|
|
4
|
+
hour: string;
|
|
5
|
+
sequence: number;
|
|
6
|
+
level: string;
|
|
7
|
+
compressed: boolean;
|
|
8
|
+
};
|
|
9
|
+
type WalkedLogFile = ParsedLogFile & {
|
|
10
|
+
absPath: string;
|
|
11
|
+
relDir: string;
|
|
12
|
+
groupKey: string;
|
|
13
|
+
};
|
|
14
|
+
declare function nowFileStamp(date?: Date, timeZone?: string): string;
|
|
15
|
+
declare function fileStampForEntry(entry: LogEntry, timeZone?: string): string;
|
|
16
|
+
declare function makeLogFileName(stamp: string, sequence: number, level: string): string;
|
|
17
|
+
declare function parseLogFileName(fileName: string): ParsedLogFile | null;
|
|
18
|
+
declare function walkedFileFromPath(baseDir: string, filePath: string): WalkedLogFile | null;
|
|
19
|
+
export { fileStampForEntry, makeLogFileName, nowFileStamp, parseLogFileName, walkedFileFromPath };
|
|
20
|
+
export type { ParsedLogFile, WalkedLogFile };
|
|
21
|
+
//# sourceMappingURL=names.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../src/storage/names.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,KAAK,aAAa,GAAG;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,aAAa,GAAG,aAAa,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,iBAAS,YAAY,CAAC,IAAI,OAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED,iBAAS,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED,iBAAS,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG/E;AAED,iBAAS,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAiChE;AAED,iBAAS,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAWnF;AAED,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;AAClG,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { TOP_LEVEL } from "../constants.js";
|
|
3
|
+
import { groupKeyFromRelDir } from "../groups.js";
|
|
4
|
+
import { getLocalDateTimeParts, normalizeTimeZone } from "../utils/datetime.js";
|
|
5
|
+
function nowFileStamp(date = new Date(), timeZone) {
|
|
6
|
+
const parts = getLocalDateTimeParts(date, normalizeTimeZone(timeZone));
|
|
7
|
+
return `${parts.year}-${parts.month}-${parts.day}-${parts.hour}`;
|
|
8
|
+
}
|
|
9
|
+
function fileStampForEntry(entry, timeZone) {
|
|
10
|
+
const date = entry.recorded_at ? new Date(entry.recorded_at) : new Date();
|
|
11
|
+
return Number.isFinite(date.getTime()) ? nowFileStamp(date, timeZone) : nowFileStamp(undefined, timeZone);
|
|
12
|
+
}
|
|
13
|
+
function makeLogFileName(stamp, sequence, level) {
|
|
14
|
+
const seq = String(Math.max(0, Math.floor(sequence))).padStart(4, "0");
|
|
15
|
+
return `${stamp}-${seq}-${level}.jsonl`;
|
|
16
|
+
}
|
|
17
|
+
function parseLogFileName(fileName) {
|
|
18
|
+
const next = /^(\d{4}-\d{2}-\d{2})-(\d{2})-(\d+)-([a-z0-9._-]+)\.jsonl(\.gz)?$/i.exec(fileName);
|
|
19
|
+
if (next) {
|
|
20
|
+
return {
|
|
21
|
+
day: next[1],
|
|
22
|
+
hour: next[2],
|
|
23
|
+
sequence: Number(next[3]) || 0,
|
|
24
|
+
level: next[4],
|
|
25
|
+
compressed: Boolean(next[5]),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
const legacyWithSequence = /^(\d{2}-\d{2}-\d{4})-(\d{2})-(\d+)-([a-z0-9._-]+)\.log\.json(\.gz)?$/i.exec(fileName);
|
|
29
|
+
if (legacyWithSequence) {
|
|
30
|
+
return {
|
|
31
|
+
day: legacyWithSequence[1],
|
|
32
|
+
hour: legacyWithSequence[2],
|
|
33
|
+
sequence: Number(legacyWithSequence[3]) || 0,
|
|
34
|
+
level: legacyWithSequence[4],
|
|
35
|
+
compressed: Boolean(legacyWithSequence[5]),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
const legacy = /^(\d{2}-\d{2}-\d{4})-(\d{2})-([a-z0-9._-]+)\.log\.json(\.gz)?$/i.exec(fileName);
|
|
39
|
+
if (!legacy)
|
|
40
|
+
return null;
|
|
41
|
+
return {
|
|
42
|
+
day: legacy[1],
|
|
43
|
+
hour: legacy[2],
|
|
44
|
+
sequence: 0,
|
|
45
|
+
level: legacy[3],
|
|
46
|
+
compressed: Boolean(legacy[4]),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function walkedFileFromPath(baseDir, filePath) {
|
|
50
|
+
const parsed = parseLogFileName(path.basename(filePath));
|
|
51
|
+
if (!parsed)
|
|
52
|
+
return null;
|
|
53
|
+
const relDir = path.relative(baseDir, path.dirname(filePath));
|
|
54
|
+
return {
|
|
55
|
+
...parsed,
|
|
56
|
+
absPath: filePath,
|
|
57
|
+
relDir,
|
|
58
|
+
groupKey: relDir && relDir !== "." ? groupKeyFromRelDir(relDir) : TOP_LEVEL,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
export { fileStampForEntry, makeLogFileName, nowFileStamp, parseLogFileName, walkedFileFromPath };
|
|
62
|
+
//# sourceMappingURL=names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"names.js","sourceRoot":"","sources":["../../src/storage/names.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { NormalizedRetentionOptions, NormalizedWriteOptions, RetentionOptions, WriteOptions } from "../types.js";
|
|
2
|
+
declare function normalizeWriteOptions(input?: WriteOptions): NormalizedWriteOptions;
|
|
3
|
+
declare function normalizeRetentionOptions(input?: RetentionOptions): NormalizedRetentionOptions;
|
|
4
|
+
export { normalizeRetentionOptions, normalizeWriteOptions };
|
|
5
|
+
//# sourceMappingURL=options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/storage/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGtH,iBAAS,qBAAqB,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG,sBAAsB,CAY3E;AAED,iBAAS,yBAAyB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,0BAA0B,CAYvF;AAED,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { parseSize } from "../utils/size.js";
|
|
2
|
+
function normalizeWriteOptions(input) {
|
|
3
|
+
const cfg = input || {};
|
|
4
|
+
const maxQueue = Number(cfg.maxQueue);
|
|
5
|
+
return {
|
|
6
|
+
mode: cfg.mode === "sync" ? "sync" : "async",
|
|
7
|
+
maxQueue: Number.isFinite(maxQueue) && maxQueue > 0 ? Math.floor(maxQueue) : 10000,
|
|
8
|
+
overflow: cfg.overflow === "drop-oldest" || cfg.overflow === "throw" || cfg.overflow === "drop-newest"
|
|
9
|
+
? cfg.overflow
|
|
10
|
+
: "drop-newest",
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
function normalizeRetentionOptions(input) {
|
|
14
|
+
const cfg = input || {};
|
|
15
|
+
const days = Number(cfg.maxAgeDays);
|
|
16
|
+
const cleanupIntervalMs = Number(cfg.cleanupIntervalMs);
|
|
17
|
+
return {
|
|
18
|
+
enabled: cfg.enabled !== false,
|
|
19
|
+
maxAgeDays: Number.isFinite(days) && days > 0 ? days : 7,
|
|
20
|
+
maxFileSize: parseSize(cfg.maxFileSize, 20 * 1024 * 1024),
|
|
21
|
+
compressOldFiles: cfg.compressOldFiles === true,
|
|
22
|
+
cleanupIntervalMs: Number.isFinite(cleanupIntervalMs) && cleanupIntervalMs > 0 ? cleanupIntervalMs : 60 * 60 * 1000,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export { normalizeRetentionOptions, normalizeWriteOptions };
|
|
26
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/storage/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,SAAS,qBAAqB,CAAC,KAAoB;IACjD,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEtC,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QAC5C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK;QAClF,QAAQ,EACN,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,aAAa;YAC1F,CAAC,CAAC,GAAG,CAAC,QAAQ;YACd,CAAC,CAAC,aAAa;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAwB;IACzD,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAExD,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,KAAK;QAC9B,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;QACzD,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,KAAK,IAAI;QAC/C,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI;KACpH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { LogEntry, LogQueryOptions } from "../types.js";
|
|
2
|
+
declare function readLogRows(filePath: string, compressed: boolean): Promise<LogEntry[]>;
|
|
3
|
+
declare function sortByRecordedAtAsc(entries: LogEntry[]): LogEntry[];
|
|
4
|
+
declare function getEntriesForDir(dir: string, options?: LogQueryOptions): Promise<LogEntry[]>;
|
|
5
|
+
export { getEntriesForDir, readLogRows, sortByRecordedAtAsc };
|
|
6
|
+
//# sourceMappingURL=query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/storage/query.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI7D,iBAAe,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAkBrF;AAED,iBAAS,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAS5D;AAED,iBAAe,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CA8B3F;AAED,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC"}
|