@flighthq/log 0.5.0-next.1944.cd6b6e7 → 0.5.1-edge.638.d4dbd4e
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/README.md +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/log.d.ts +3 -5
- package/dist/log.d.ts.map +1 -1
- package/dist/log.js +59 -32
- package/dist/log.js.map +1 -1
- package/package.json +3 -3
- package/src/log.test.ts +242 -60
package/README.md
CHANGED
|
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/log`. The `@flighthq
|
|
|
13
13
|
This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
|
|
14
14
|
|
|
15
15
|
- [Flight project](https://github.com/flighthq/flight)
|
|
16
|
-
- [Source for @flighthq/log@0.5.
|
|
17
|
-
- [License](https://github.com/flighthq/flight/blob/
|
|
16
|
+
- [Source for @flighthq/log@0.5.1-edge.638.d4dbd4e](https://github.com/flighthq/flight/tree/d4dbd4e347dc8be10b180c85a766ab50333dcb51/packages/log)
|
|
17
|
+
- [License](https://github.com/flighthq/flight/blob/d4dbd4e347dc8be10b180c85a766ab50333dcb51/LICENSE.md)
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { addLogSink, beginLogGroup, clearLogChannelLevel, clearLogChannelLevels, clearLogGroups, clearLogOnceKeys, clearLogRedactionPaths, clearLogSerializers, clearLogSinks, clearMemoryLogSink, createBufferedLogSink, createChildLogContext, createConsoleCaptureSink, createConsoleLogSink, createFanoutLogSink, createFileLogSink, createFilterLogSink, createJsonLogFormatter, createLogContext, createLogSpan, createMemoryLogSink, createRateLimitedLogSink, createSampledLogSink, createTextLogFormatter,
|
|
1
|
+
export { addLogSink, beginLogGroup, clearLogChannelLevel, clearLogChannelLevels, clearLogGroups, clearLogOnceKeys, clearLogRedactionPaths, clearLogSerializers, clearLogSinks, clearMemoryLogSink, createBufferedLogSink, createChildLogContext, createConsoleCaptureSink, createConsoleLogSink, createFanoutLogSink, createFileLogSink, createFilterLogSink, createJsonLogFormatter, createLogContext, createLogSpan, createMemoryLogSink, createRateLimitedLogSink, createSampledLogSink, createTextLogFormatter, destroyFileLogSink, disposeLogSink, enableLogSignals, endLogGroup, endLogTimer, enterLogSpan, exitLogSpan, flushLogSink, getLogChannelLevel, getLogConsoleLevel, getLogLevel, getLogLevelName, getMemoryLogSinkEntries, log, logAssert, logDebug, logDebugWith, logError, logErrorWith, logInfo, logInfoWith, logOnce, logVerbose, logVerboseWith, logWarn, logWarnWith, logWith, parseLogLevel, registerLogSerializer, removeLogSink, serializeLogError, setLogChannelLevel, setLogConsoleLevel, setLogLevel, setLogRedactionPaths, setLogSink, startLogTimer, } from './contract';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { addLogSink, beginLogGroup, clearLogChannelLevel, clearLogChannelLevels, clearLogGroups, clearLogOnceKeys, clearLogRedactionPaths, clearLogSerializers, clearLogSinks, clearMemoryLogSink, createBufferedLogSink, createChildLogContext, createConsoleCaptureSink, createConsoleLogSink, createFanoutLogSink, createFileLogSink, createFilterLogSink, createJsonLogFormatter, createLogContext, createLogSpan, createMemoryLogSink, createRateLimitedLogSink, createSampledLogSink, createTextLogFormatter,
|
|
1
|
+
export { addLogSink, beginLogGroup, clearLogChannelLevel, clearLogChannelLevels, clearLogGroups, clearLogOnceKeys, clearLogRedactionPaths, clearLogSerializers, clearLogSinks, clearMemoryLogSink, createBufferedLogSink, createChildLogContext, createConsoleCaptureSink, createConsoleLogSink, createFanoutLogSink, createFileLogSink, createFilterLogSink, createJsonLogFormatter, createLogContext, createLogSpan, createMemoryLogSink, createRateLimitedLogSink, createSampledLogSink, createTextLogFormatter, destroyFileLogSink, disposeLogSink, enableLogSignals, endLogGroup, endLogTimer, enterLogSpan, exitLogSpan, flushLogSink, getLogChannelLevel, getLogConsoleLevel, getLogLevel, getLogLevelName, getMemoryLogSinkEntries, log, logAssert, logDebug, logDebugWith, logError, logErrorWith, logInfo, logInfoWith, logOnce, logVerbose, logVerboseWith, logWarn, logWarnWith, logWith, parseLogLevel, registerLogSerializer, removeLogSink, serializeLogError, setLogChannelLevel, setLogConsoleLevel, setLogLevel, setLogRedactionPaths, setLogSink, startLogTimer, } from './contract';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/log.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BufferedLogSink, FileLogSink, LogContext, LogData, LogDataProvider, LogEntry, LogFormatter, LogSignals, LogSink, LogSpan, LogTimer,
|
|
1
|
+
import type { BufferedLogSink, FileLogSink, FileLogSinkDestroyOutcome, LogContext, LogData, LogDataProvider, LogEntry, LogFormatter, LogSignals, LogSink, LogSpan, LogTimer, LogTransport, MemoryLogSink, RateLimitedLogSink } from '@flighthq/types/contract';
|
|
2
2
|
import { LogLevel } from '@flighthq/types/contract';
|
|
3
3
|
export declare function addLogSink(sink: LogSink): void;
|
|
4
4
|
export declare function beginLogGroup(label: string, channel?: string | null): void;
|
|
@@ -22,7 +22,7 @@ export declare function createConsoleLogSink(options?: {
|
|
|
22
22
|
formatter?: LogFormatter;
|
|
23
23
|
}): LogSink;
|
|
24
24
|
export declare function createFanoutLogSink(...sinks: LogSink[]): LogSink;
|
|
25
|
-
export declare function createFileLogSink(options?: {
|
|
25
|
+
export declare function createFileLogSink(transport: LogTransport, options?: {
|
|
26
26
|
formatter?: LogFormatter;
|
|
27
27
|
}): FileLogSink;
|
|
28
28
|
export declare function createFilterLogSink(target: LogSink, predicate: (entry: Readonly<LogEntry>) => boolean): LogSink;
|
|
@@ -41,7 +41,7 @@ export declare function createTextLogFormatter(options?: {
|
|
|
41
41
|
levelPrefix?: boolean;
|
|
42
42
|
timestamp?: boolean;
|
|
43
43
|
}): LogFormatter;
|
|
44
|
-
export declare function
|
|
44
|
+
export declare function destroyFileLogSink(handle: FileLogSink): Promise<FileLogSinkDestroyOutcome>;
|
|
45
45
|
export declare function disposeLogSink(handle: BufferedLogSink): void;
|
|
46
46
|
export declare function enableLogSignals(): LogSignals;
|
|
47
47
|
export declare function endLogGroup(channel?: string | null): void;
|
|
@@ -53,7 +53,6 @@ export declare function getLogChannelLevel(channel: string): LogLevel | null;
|
|
|
53
53
|
export declare function getLogConsoleLevel(): LogLevel;
|
|
54
54
|
export declare function getLogLevel(): LogLevel;
|
|
55
55
|
export declare function getLogLevelName(level: LogLevel): string;
|
|
56
|
-
export declare function getLogTransportBackend(): LogTransportBackend | null;
|
|
57
56
|
export declare function getMemoryLogSinkEntries(handle: MemoryLogSink): readonly LogEntry[];
|
|
58
57
|
export declare function log(level: LogLevel, data: LogData | LogDataProvider, channel?: string | null): void;
|
|
59
58
|
export declare function logAssert(condition: boolean, data: LogData | LogDataProvider, channel?: string | null): void;
|
|
@@ -78,6 +77,5 @@ export declare function setLogConsoleLevel(level: LogLevel): void;
|
|
|
78
77
|
export declare function setLogLevel(level: LogLevel): void;
|
|
79
78
|
export declare function setLogRedactionPaths(paths: readonly string[]): void;
|
|
80
79
|
export declare function setLogSink(sink: LogSink | null): void;
|
|
81
|
-
export declare function setLogTransportBackend(backend: LogTransportBackend | null): void;
|
|
82
80
|
export declare function startLogTimer(label: string, channel?: string | null): LogTimer;
|
|
83
81
|
//# sourceMappingURL=log.d.ts.map
|
package/dist/log.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACV,OAAO,EACP,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,OAAO,EACP,OAAO,EACP,QAAQ,EACR,
|
|
1
|
+
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"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"}
|
package/dist/log.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createSignal, emitSignal } from '@flighthq/signals/contract';
|
|
2
|
-
import { LogLevel } from '@flighthq/types/contract';
|
|
2
|
+
import { EntityRuntimeKey, LogLevel } from '@flighthq/types/contract';
|
|
3
3
|
// Logging is split into two faces of one contract so each consumer tree-shakes its half:
|
|
4
4
|
//
|
|
5
5
|
// Emit side — log and the log* wrappers. Featherweight: each checks the level gate and
|
|
@@ -121,19 +121,24 @@ export function createFanoutLogSink(...sinks) {
|
|
|
121
121
|
s(entry);
|
|
122
122
|
};
|
|
123
123
|
}
|
|
124
|
-
// Creates
|
|
125
|
-
//
|
|
126
|
-
//
|
|
127
|
-
//
|
|
128
|
-
export function createFileLogSink(options = {}) {
|
|
124
|
+
// Creates an Entity sink that exclusively owns the configured transport for its entire lifetime.
|
|
125
|
+
// The formatter defaults to createJsonLogFormatter (one complete JSON line per entry). Each sink
|
|
126
|
+
// call offers that line synchronously to the pinned transport; admission and later delivery remain
|
|
127
|
+
// the transport's explicit outcome contracts.
|
|
128
|
+
export function createFileLogSink(transport, options = {}) {
|
|
129
129
|
const formatter = options.formatter ?? createJsonLogFormatter();
|
|
130
130
|
const sink = (entry) => {
|
|
131
|
-
const
|
|
132
|
-
if (
|
|
131
|
+
const state = _fileLogSinkStates.get(handle);
|
|
132
|
+
if (!state || state.status !== 'active' || state.transport === null)
|
|
133
133
|
return;
|
|
134
|
-
|
|
134
|
+
state.transport.write(formatter(entry) + '\n');
|
|
135
135
|
};
|
|
136
|
-
const handle = { sink };
|
|
136
|
+
const handle = { [EntityRuntimeKey]: undefined, sink };
|
|
137
|
+
_fileLogSinkStates.set(handle, {
|
|
138
|
+
destroyPromise: null,
|
|
139
|
+
status: 'active',
|
|
140
|
+
transport,
|
|
141
|
+
});
|
|
137
142
|
return handle;
|
|
138
143
|
}
|
|
139
144
|
// Creates a sink that forwards only entries matching a predicate. Compose with addLogSink to give
|
|
@@ -244,17 +249,22 @@ export function createTextLogFormatter(options = {}) {
|
|
|
244
249
|
return parts.join(' ');
|
|
245
250
|
};
|
|
246
251
|
}
|
|
247
|
-
//
|
|
248
|
-
//
|
|
249
|
-
//
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
252
|
+
// Makes the sink terminal and unregisters it synchronously, then awaits its delivery boundary before
|
|
253
|
+
// attempting terminal transport teardown. Destroy is attempted even when flush fails or rejects, and
|
|
254
|
+
// both operation outcomes are preserved. Repeated calls await the same teardown without invoking the
|
|
255
|
+
// provider again.
|
|
256
|
+
export async function destroyFileLogSink(handle) {
|
|
257
|
+
const state = _fileLogSinkStates.get(handle);
|
|
258
|
+
if (!state)
|
|
259
|
+
throw new Error('destroyFileLogSink received an unknown handle');
|
|
260
|
+
if (state.status !== 'active') {
|
|
261
|
+
const outcome = await state.destroyPromise;
|
|
262
|
+
return { ...outcome, reason: 'already-destroyed' };
|
|
263
|
+
}
|
|
264
|
+
state.status = 'destroying';
|
|
265
|
+
removeLogSink(handle.sink);
|
|
266
|
+
state.destroyPromise = _destroyFileLogSinkState(state);
|
|
267
|
+
return state.destroyPromise;
|
|
258
268
|
}
|
|
259
269
|
// Disposes a buffered sink: cancels its interval timer and flushes remaining entries. The sink
|
|
260
270
|
// remains callable after disposal but will no longer auto-flush. (`dispose*` because this
|
|
@@ -336,10 +346,6 @@ export function getLogLevel() {
|
|
|
336
346
|
export function getLogLevelName(level) {
|
|
337
347
|
return _levelNames[level] ?? 'unknown';
|
|
338
348
|
}
|
|
339
|
-
// Returns the installed LogTransportBackend, or null if none has been set.
|
|
340
|
-
export function getLogTransportBackend() {
|
|
341
|
-
return _transportBackend;
|
|
342
|
-
}
|
|
343
349
|
// Returns the captured log entries from a memory sink in insertion order (oldest-first).
|
|
344
350
|
export function getMemoryLogSinkEntries(handle) {
|
|
345
351
|
const state = _memorySinkStates.get(handle);
|
|
@@ -544,18 +550,13 @@ export function setLogSink(sink) {
|
|
|
544
550
|
if (sink !== null)
|
|
545
551
|
_sinks.push(sink);
|
|
546
552
|
}
|
|
547
|
-
// Sets the LogTransportBackend used by createFileLogSink. Set to null to detach the backend.
|
|
548
|
-
// Native/Node hosts register a real fs-backed implementation. The backend is process-global
|
|
549
|
-
// (one transport per process).
|
|
550
|
-
export function setLogTransportBackend(backend) {
|
|
551
|
-
_transportBackend = backend;
|
|
552
|
-
}
|
|
553
553
|
// Starts a named timer. Pass the returned LogTimer to endLogTimer to record elapsed time and
|
|
554
554
|
// emit a structured Debug entry.
|
|
555
555
|
export function startLogTimer(label, channel = null) {
|
|
556
556
|
return { label, channel, startedAt: _timestamp() };
|
|
557
557
|
}
|
|
558
558
|
const _bufferedSinkStates = new WeakMap();
|
|
559
|
+
const _fileLogSinkStates = new WeakMap();
|
|
559
560
|
const _memorySinkStates = new WeakMap();
|
|
560
561
|
const _consoleMethods = {
|
|
561
562
|
[LogLevel.None]: 'log',
|
|
@@ -591,7 +592,33 @@ let _consoleLevel = LogLevel.Info;
|
|
|
591
592
|
let _groupDepth = 0;
|
|
592
593
|
let _level = LogLevel.Verbose;
|
|
593
594
|
let _logSignals = null;
|
|
594
|
-
|
|
595
|
+
async function _destroyFileLogSinkState(state) {
|
|
596
|
+
const transport = state.transport;
|
|
597
|
+
let flush;
|
|
598
|
+
let destroy;
|
|
599
|
+
try {
|
|
600
|
+
flush = await transport.flush();
|
|
601
|
+
}
|
|
602
|
+
catch (error) {
|
|
603
|
+
flush = { message: _operationFailureMessage(error), reason: 'operation-failed' };
|
|
604
|
+
}
|
|
605
|
+
try {
|
|
606
|
+
destroy = await transport.destroy();
|
|
607
|
+
}
|
|
608
|
+
catch (error) {
|
|
609
|
+
destroy = { message: _operationFailureMessage(error), reason: 'operation-failed' };
|
|
610
|
+
}
|
|
611
|
+
state.transport = null;
|
|
612
|
+
state.status = 'destroyed';
|
|
613
|
+
return {
|
|
614
|
+
destroy,
|
|
615
|
+
flush,
|
|
616
|
+
reason: flush.reason === 'operation-failed' || destroy.reason === 'operation-failed' ? 'operation-failed' : 'destroyed',
|
|
617
|
+
};
|
|
618
|
+
}
|
|
619
|
+
function _operationFailureMessage(error) {
|
|
620
|
+
return error instanceof Error ? error.message : String(error);
|
|
621
|
+
}
|
|
595
622
|
// Applies registered serializers to values whose `__kind` matches a registered kind.
|
|
596
623
|
function _applySerializers(data) {
|
|
597
624
|
if (_serializers.size === 0)
|
package/dist/log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flighthq/log",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.1-edge.638.d4dbd4e",
|
|
4
4
|
"author": "Joshua Granick and other contributors",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"clean:dist": "tsx ../../scripts/clean-package-dist.ts"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@flighthq/signals": "0.5.
|
|
42
|
-
"@flighthq/types": "0.5.
|
|
41
|
+
"@flighthq/signals": "0.5.1-edge.638.d4dbd4e",
|
|
42
|
+
"@flighthq/types": "0.5.1-edge.638.d4dbd4e"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"typescript": "^5.3.0"
|
package/src/log.test.ts
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
import { connectSignal } from '@flighthq/signals/contract';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
2
|
+
import type {
|
|
3
|
+
BufferedLogSink,
|
|
4
|
+
FileLogSinkDestroyOutcome,
|
|
5
|
+
LogEntry,
|
|
6
|
+
LogSignals,
|
|
7
|
+
LogTransport,
|
|
8
|
+
LogTransportDestroyOutcome,
|
|
9
|
+
LogTransportFlushOutcome,
|
|
10
|
+
LogTransportWriteOutcome,
|
|
11
|
+
MemoryLogSink,
|
|
12
|
+
} from '@flighthq/types/contract';
|
|
13
|
+
import { EntityRuntimeKey, LogLevel } from '@flighthq/types/contract';
|
|
4
14
|
|
|
5
15
|
import {
|
|
6
16
|
addLogSink,
|
|
@@ -27,7 +37,7 @@ import {
|
|
|
27
37
|
createRateLimitedLogSink,
|
|
28
38
|
createSampledLogSink,
|
|
29
39
|
createTextLogFormatter,
|
|
30
|
-
|
|
40
|
+
destroyFileLogSink,
|
|
31
41
|
disposeLogSink,
|
|
32
42
|
enableLogSignals,
|
|
33
43
|
endLogGroup,
|
|
@@ -39,7 +49,6 @@ import {
|
|
|
39
49
|
getLogConsoleLevel,
|
|
40
50
|
getLogLevel,
|
|
41
51
|
getLogLevelName,
|
|
42
|
-
getLogTransportBackend,
|
|
43
52
|
getMemoryLogSinkEntries,
|
|
44
53
|
log,
|
|
45
54
|
logAssert,
|
|
@@ -64,7 +73,6 @@ import {
|
|
|
64
73
|
setLogLevel,
|
|
65
74
|
setLogRedactionPaths,
|
|
66
75
|
setLogSink,
|
|
67
|
-
setLogTransportBackend,
|
|
68
76
|
startLogTimer,
|
|
69
77
|
} from './log';
|
|
70
78
|
|
|
@@ -77,6 +85,23 @@ function recordingSink(): { entries: LogEntry[]; sink: (entry: LogEntry) => void
|
|
|
77
85
|
return { entries, sink };
|
|
78
86
|
}
|
|
79
87
|
|
|
88
|
+
function createTestLogTransport(
|
|
89
|
+
overrides: Partial<Pick<LogTransport, 'destroy' | 'flush' | 'write'>> = {},
|
|
90
|
+
): LogTransport {
|
|
91
|
+
const defaultDestroy = async (): Promise<LogTransportDestroyOutcome> => ({ reason: 'destroyed' });
|
|
92
|
+
const defaultFlush = async (): Promise<LogTransportFlushOutcome> => ({
|
|
93
|
+
delivery: 'process-buffer',
|
|
94
|
+
reason: 'drained',
|
|
95
|
+
});
|
|
96
|
+
const defaultWrite = (): LogTransportWriteOutcome => ({ reason: 'accepted' });
|
|
97
|
+
return {
|
|
98
|
+
[EntityRuntimeKey]: undefined,
|
|
99
|
+
destroy: overrides.destroy ?? defaultDestroy,
|
|
100
|
+
flush: overrides.flush ?? defaultFlush,
|
|
101
|
+
write: overrides.write ?? defaultWrite,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
|
|
80
105
|
beforeEach(() => {
|
|
81
106
|
clearLogGroups();
|
|
82
107
|
clearLogOnceKeys();
|
|
@@ -86,7 +111,6 @@ beforeEach(() => {
|
|
|
86
111
|
clearLogChannelLevels();
|
|
87
112
|
setLogConsoleLevel(LogLevel.Info);
|
|
88
113
|
setLogLevel(LogLevel.Verbose);
|
|
89
|
-
setLogTransportBackend(null);
|
|
90
114
|
vi.restoreAllMocks();
|
|
91
115
|
});
|
|
92
116
|
|
|
@@ -438,10 +462,20 @@ describe('createFanoutLogSink', () => {
|
|
|
438
462
|
});
|
|
439
463
|
|
|
440
464
|
describe('createFileLogSink', () => {
|
|
441
|
-
it(
|
|
465
|
+
it.each<LogTransportWriteOutcome>([
|
|
466
|
+
{ reason: 'accepted' },
|
|
467
|
+
{ reason: 'backpressure', retryAfterMs: 25 },
|
|
468
|
+
{ message: 'disk full', reason: 'operation-failed' },
|
|
469
|
+
{ reason: 'destroyed' },
|
|
470
|
+
])('offers one complete formatted line when admission reports $reason', (writeOutcome) => {
|
|
442
471
|
const lines: string[] = [];
|
|
443
|
-
|
|
444
|
-
|
|
472
|
+
const transport = createTestLogTransport({
|
|
473
|
+
write(line) {
|
|
474
|
+
lines.push(line);
|
|
475
|
+
return writeOutcome;
|
|
476
|
+
},
|
|
477
|
+
});
|
|
478
|
+
const handle = createFileLogSink(transport);
|
|
445
479
|
addLogSink(handle.sink);
|
|
446
480
|
log(LogLevel.Info, 'file-entry');
|
|
447
481
|
expect(lines).toHaveLength(1);
|
|
@@ -449,21 +483,55 @@ describe('createFileLogSink', () => {
|
|
|
449
483
|
expect(parsed).toMatchObject({ __flight: true, level: 'info', data: { msg: 'file-entry' } });
|
|
450
484
|
});
|
|
451
485
|
|
|
452
|
-
it('
|
|
453
|
-
const handle = createFileLogSink();
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
expect(
|
|
486
|
+
it('creates an Entity handle', () => {
|
|
487
|
+
const handle = createFileLogSink(createTestLogTransport());
|
|
488
|
+
|
|
489
|
+
expect(EntityRuntimeKey in handle).toBe(true);
|
|
490
|
+
expect(handle[EntityRuntimeKey]).toBeUndefined();
|
|
457
491
|
});
|
|
458
492
|
|
|
459
493
|
it('accepts a custom formatter', () => {
|
|
460
494
|
const lines: string[] = [];
|
|
461
|
-
|
|
462
|
-
|
|
495
|
+
const transport = createTestLogTransport({
|
|
496
|
+
write(line) {
|
|
497
|
+
lines.push(line);
|
|
498
|
+
return { reason: 'accepted' };
|
|
499
|
+
},
|
|
500
|
+
});
|
|
501
|
+
const handle = createFileLogSink(transport, { formatter: () => 'custom' });
|
|
463
502
|
addLogSink(handle.sink);
|
|
464
503
|
log(LogLevel.Info, 'x');
|
|
465
504
|
expect(lines[0]).toBe('custom\n');
|
|
466
505
|
});
|
|
506
|
+
|
|
507
|
+
it('pins each handle to its injected transport', () => {
|
|
508
|
+
const firstLines: string[] = [];
|
|
509
|
+
const secondLines: string[] = [];
|
|
510
|
+
const first = createFileLogSink(
|
|
511
|
+
createTestLogTransport({
|
|
512
|
+
write(line) {
|
|
513
|
+
firstLines.push(line);
|
|
514
|
+
return { reason: 'accepted' };
|
|
515
|
+
},
|
|
516
|
+
}),
|
|
517
|
+
{ formatter: () => 'first' },
|
|
518
|
+
);
|
|
519
|
+
const second = createFileLogSink(
|
|
520
|
+
createTestLogTransport({
|
|
521
|
+
write(line) {
|
|
522
|
+
secondLines.push(line);
|
|
523
|
+
return { reason: 'accepted' };
|
|
524
|
+
},
|
|
525
|
+
}),
|
|
526
|
+
{ formatter: () => 'second' },
|
|
527
|
+
);
|
|
528
|
+
|
|
529
|
+
first.sink({ channel: null, data: 'entry', level: LogLevel.Info });
|
|
530
|
+
second.sink({ channel: null, data: 'entry', level: LogLevel.Info });
|
|
531
|
+
|
|
532
|
+
expect(firstLines).toEqual(['first\n']);
|
|
533
|
+
expect(secondLines).toEqual(['second\n']);
|
|
534
|
+
});
|
|
467
535
|
});
|
|
468
536
|
|
|
469
537
|
describe('createFilterLogSink', () => {
|
|
@@ -686,30 +754,170 @@ describe('createTextLogFormatter', () => {
|
|
|
686
754
|
});
|
|
687
755
|
});
|
|
688
756
|
|
|
689
|
-
describe('
|
|
690
|
-
it('
|
|
691
|
-
const
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
757
|
+
describe('destroyFileLogSink', () => {
|
|
758
|
+
it('awaits flush before destroying the transport', async () => {
|
|
759
|
+
const events: string[] = [];
|
|
760
|
+
let finishFlush: ((outcome: LogTransportFlushOutcome) => void) | undefined;
|
|
761
|
+
const flushPromise = new Promise<LogTransportFlushOutcome>((resolve) => {
|
|
762
|
+
finishFlush = resolve;
|
|
763
|
+
});
|
|
764
|
+
const transport = createTestLogTransport({
|
|
765
|
+
destroy: async () => {
|
|
766
|
+
events.push('destroy');
|
|
767
|
+
return { reason: 'destroyed' };
|
|
768
|
+
},
|
|
769
|
+
flush: () => {
|
|
770
|
+
events.push('flush-start');
|
|
771
|
+
return flushPromise.then((outcome) => {
|
|
772
|
+
events.push('flush-end');
|
|
773
|
+
return outcome;
|
|
774
|
+
});
|
|
775
|
+
},
|
|
776
|
+
});
|
|
777
|
+
|
|
778
|
+
const closing = destroyFileLogSink(createFileLogSink(transport));
|
|
779
|
+
expect(events).toEqual(['flush-start']);
|
|
780
|
+
finishFlush?.({ delivery: 'operating-system', reason: 'drained' });
|
|
781
|
+
|
|
782
|
+
await expect(closing).resolves.toEqual({
|
|
783
|
+
destroy: { reason: 'destroyed' },
|
|
784
|
+
flush: { delivery: 'operating-system', reason: 'drained' },
|
|
785
|
+
reason: 'destroyed',
|
|
786
|
+
});
|
|
787
|
+
expect(events).toEqual(['flush-start', 'flush-end', 'destroy']);
|
|
788
|
+
});
|
|
789
|
+
|
|
790
|
+
it('attempts destroy and preserves both outcomes when flush fails', async () => {
|
|
791
|
+
const events: string[] = [];
|
|
792
|
+
const handle = createFileLogSink(
|
|
793
|
+
createTestLogTransport({
|
|
794
|
+
destroy: async () => {
|
|
795
|
+
events.push('destroy');
|
|
796
|
+
return { reason: 'destroyed' };
|
|
797
|
+
},
|
|
798
|
+
flush: async () => {
|
|
799
|
+
events.push('flush');
|
|
800
|
+
return { message: 'disk full', reason: 'operation-failed' };
|
|
801
|
+
},
|
|
802
|
+
}),
|
|
803
|
+
);
|
|
804
|
+
|
|
805
|
+
await expect(destroyFileLogSink(handle)).resolves.toEqual({
|
|
806
|
+
destroy: { reason: 'destroyed' },
|
|
807
|
+
flush: { message: 'disk full', reason: 'operation-failed' },
|
|
808
|
+
reason: 'operation-failed',
|
|
809
|
+
});
|
|
810
|
+
expect(events).toEqual(['flush', 'destroy']);
|
|
811
|
+
});
|
|
812
|
+
|
|
813
|
+
it('keeps a successor destination live when an older handle is destroyed', async () => {
|
|
814
|
+
const firstEvents: string[] = [];
|
|
815
|
+
const secondLines: string[] = [];
|
|
816
|
+
const first = createFileLogSink(
|
|
817
|
+
createTestLogTransport({
|
|
818
|
+
destroy: async () => {
|
|
819
|
+
firstEvents.push('destroy');
|
|
820
|
+
return { reason: 'destroyed' };
|
|
821
|
+
},
|
|
822
|
+
}),
|
|
823
|
+
);
|
|
824
|
+
const second = createFileLogSink(
|
|
825
|
+
createTestLogTransport({
|
|
826
|
+
write(line) {
|
|
827
|
+
secondLines.push(line);
|
|
828
|
+
return { reason: 'accepted' };
|
|
829
|
+
},
|
|
830
|
+
}),
|
|
831
|
+
{ formatter: () => 'second' },
|
|
832
|
+
);
|
|
833
|
+
|
|
834
|
+
await destroyFileLogSink(first);
|
|
835
|
+
second.sink({ channel: null, data: 'still-live', level: LogLevel.Info });
|
|
836
|
+
|
|
837
|
+
expect(firstEvents).toEqual(['destroy']);
|
|
838
|
+
expect(secondLines).toEqual(['second\n']);
|
|
839
|
+
});
|
|
840
|
+
|
|
841
|
+
it('terminals and unregisters the sink before awaiting flush', async () => {
|
|
842
|
+
const lines: string[] = [];
|
|
843
|
+
let finishFlush: ((outcome: LogTransportFlushOutcome) => void) | undefined;
|
|
844
|
+
const handle = createFileLogSink(
|
|
845
|
+
createTestLogTransport({
|
|
846
|
+
flush: () =>
|
|
847
|
+
new Promise<LogTransportFlushOutcome>((resolve) => {
|
|
848
|
+
finishFlush = resolve;
|
|
849
|
+
}),
|
|
850
|
+
write(line) {
|
|
851
|
+
lines.push(line);
|
|
852
|
+
return { reason: 'accepted' };
|
|
853
|
+
},
|
|
854
|
+
}),
|
|
855
|
+
);
|
|
856
|
+
addLogSink(handle.sink);
|
|
857
|
+
|
|
858
|
+
const closing = destroyFileLogSink(handle);
|
|
859
|
+
log(LogLevel.Info, 'after-destroy-started');
|
|
860
|
+
|
|
861
|
+
expect(lines).toEqual([]);
|
|
862
|
+
expect(removeLogSink(handle.sink)).toBe(false);
|
|
863
|
+
finishFlush?.({ delivery: 'process-buffer', reason: 'drained' });
|
|
864
|
+
await closing;
|
|
865
|
+
});
|
|
866
|
+
|
|
867
|
+
it('makes repeated teardown idempotent without repeating provider calls', async () => {
|
|
868
|
+
let destroyCalls = 0;
|
|
869
|
+
let flushCalls = 0;
|
|
870
|
+
const handle = createFileLogSink(
|
|
871
|
+
createTestLogTransport({
|
|
872
|
+
destroy: async () => {
|
|
873
|
+
destroyCalls++;
|
|
874
|
+
return { reason: 'destroyed' };
|
|
875
|
+
},
|
|
876
|
+
flush: async () => {
|
|
877
|
+
flushCalls++;
|
|
878
|
+
return { delivery: 'durable-storage', reason: 'drained' };
|
|
879
|
+
},
|
|
880
|
+
}),
|
|
881
|
+
);
|
|
882
|
+
|
|
883
|
+
const first: FileLogSinkDestroyOutcome = await destroyFileLogSink(handle);
|
|
884
|
+
const second = await destroyFileLogSink(handle);
|
|
885
|
+
|
|
886
|
+
expect(first).toEqual({
|
|
887
|
+
destroy: { reason: 'destroyed' },
|
|
888
|
+
flush: { delivery: 'durable-storage', reason: 'drained' },
|
|
889
|
+
reason: 'destroyed',
|
|
697
890
|
});
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
expect(flushed).toHaveLength(1);
|
|
701
|
-
expect(disposed).toHaveLength(1);
|
|
891
|
+
expect(second).toEqual({ ...first, reason: 'already-destroyed' });
|
|
892
|
+
expect({ destroyCalls, flushCalls }).toEqual({ destroyCalls: 1, flushCalls: 1 });
|
|
702
893
|
});
|
|
703
894
|
|
|
704
|
-
it(
|
|
705
|
-
|
|
706
|
-
|
|
895
|
+
it.each<LogTransportFlushOutcome>([
|
|
896
|
+
{ delivery: 'process-buffer', reason: 'drained' },
|
|
897
|
+
{ delivery: 'operating-system', reason: 'drained' },
|
|
898
|
+
{ delivery: 'durable-storage', reason: 'drained' },
|
|
899
|
+
{ delivery: 'remote-acknowledged', reason: 'drained' },
|
|
900
|
+
])('preserves the $delivery delivery boundary', async (flushOutcome) => {
|
|
901
|
+
const handle = createFileLogSink(createTestLogTransport({ flush: async () => flushOutcome }));
|
|
902
|
+
|
|
903
|
+
const outcome = await destroyFileLogSink(handle);
|
|
904
|
+
|
|
905
|
+
expect(outcome.flush).toEqual(flushOutcome);
|
|
707
906
|
});
|
|
708
907
|
|
|
709
|
-
it('
|
|
710
|
-
|
|
908
|
+
it('converts rejected flush and destroy operations into a composite failure', async () => {
|
|
909
|
+
const handle = createFileLogSink(
|
|
910
|
+
createTestLogTransport({
|
|
911
|
+
destroy: () => Promise.reject(new Error('close failed')),
|
|
912
|
+
flush: () => Promise.reject(new Error('flush failed')),
|
|
913
|
+
}),
|
|
914
|
+
);
|
|
711
915
|
|
|
712
|
-
expect(()
|
|
916
|
+
await expect(destroyFileLogSink(handle)).resolves.toEqual({
|
|
917
|
+
destroy: { message: 'close failed', reason: 'operation-failed' },
|
|
918
|
+
flush: { message: 'flush failed', reason: 'operation-failed' },
|
|
919
|
+
reason: 'operation-failed',
|
|
920
|
+
});
|
|
713
921
|
});
|
|
714
922
|
});
|
|
715
923
|
|
|
@@ -936,18 +1144,6 @@ describe('getLogLevelName', () => {
|
|
|
936
1144
|
});
|
|
937
1145
|
});
|
|
938
1146
|
|
|
939
|
-
describe('getLogTransportBackend', () => {
|
|
940
|
-
it('returns null when no backend is set', () => {
|
|
941
|
-
expect(getLogTransportBackend()).toBeNull();
|
|
942
|
-
});
|
|
943
|
-
|
|
944
|
-
it('returns the installed backend', () => {
|
|
945
|
-
const backend = { write() {} };
|
|
946
|
-
setLogTransportBackend(backend);
|
|
947
|
-
expect(getLogTransportBackend()).toBe(backend);
|
|
948
|
-
});
|
|
949
|
-
});
|
|
950
|
-
|
|
951
1147
|
describe('getMemoryLogSinkEntries', () => {
|
|
952
1148
|
it('returns empty array before any entries', () => {
|
|
953
1149
|
const handle = createMemoryLogSink(5);
|
|
@@ -1363,20 +1559,6 @@ describe('setLogSink', () => {
|
|
|
1363
1559
|
});
|
|
1364
1560
|
});
|
|
1365
1561
|
|
|
1366
|
-
describe('setLogTransportBackend', () => {
|
|
1367
|
-
it('sets and retrieves the backend', () => {
|
|
1368
|
-
const backend = { write() {} };
|
|
1369
|
-
setLogTransportBackend(backend);
|
|
1370
|
-
expect(getLogTransportBackend()).toBe(backend);
|
|
1371
|
-
});
|
|
1372
|
-
|
|
1373
|
-
it('clears the backend when null is passed', () => {
|
|
1374
|
-
setLogTransportBackend({ write() {} });
|
|
1375
|
-
setLogTransportBackend(null);
|
|
1376
|
-
expect(getLogTransportBackend()).toBeNull();
|
|
1377
|
-
});
|
|
1378
|
-
});
|
|
1379
|
-
|
|
1380
1562
|
describe('severity wrapper providers and gates', () => {
|
|
1381
1563
|
it('does not evaluate any provider when its level is suppressed', () => {
|
|
1382
1564
|
const { entries } = recordingSink();
|