Commit 4766d03 1 parent 9c14571 commit 4766d03 Copy full SHA for 4766d03
File tree 2 files changed +23
-5
lines changed
2 files changed +23
-5
lines changed Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ import type {
7
7
LogLevel ,
8
8
LogMessage ,
9
9
LogTransport ,
10
+ LoggerTransportConfig ,
10
11
} from './types.js' ;
11
12
12
13
const DEFAULT_SCOPE = 'default' ;
@@ -37,11 +38,7 @@ export class LoggerImpl extends AbstractLogger {
37
38
38
39
constructor ( options : {
39
40
scope ?: string ;
40
- transports ?: Array < {
41
- transport : LogTransport ;
42
- formatter : LogFormatter ;
43
- level ?: LogLevel ;
44
- } > ;
41
+ transports ?: Array < LoggerTransportConfig > ;
45
42
} ) {
46
43
super ( ) ;
47
44
Original file line number Diff line number Diff line change @@ -31,6 +31,27 @@ export type LogFormatter = (messages: Array<LogMessage>) => string;
31
31
*/
32
32
export type LogTransport = Writable ;
33
33
34
+ export interface LoggerTransportConfig {
35
+ /**
36
+ * Where to write log messages.
37
+ * Could be to the console, a file, or a remote system.
38
+ */
39
+ transport : LogTransport ;
40
+ /**
41
+ * Transforms log data objects into a string to write to the transport.
42
+ */
43
+ formatter : LogFormatter ;
44
+ /**
45
+ * By default, all messages are logged to every transport for levels
46
+ * that satisify the runtime log level. You can further restrict which
47
+ * levels are logged to a specific transport by setting this property.
48
+ *
49
+ * For example, if the runtime log level is 'INFO' but you only want to send
50
+ * errors to this transport, then set the transport's level to 'ERROR'.
51
+ */
52
+ level ?: LogLevel ;
53
+ }
54
+
34
55
/**
35
56
* Shape of a logger function that always logs to a specific level.
36
57
*/
You can’t perform that action at this time.
0 commit comments