Skip to content
This repository was archived by the owner on Nov 25, 2025. It is now read-only.

Commit a40cb8e

Browse files
Feature/set default loglevel (#6)
* Updated readme. * SetDefaultLogLevels changed to SetDefaultLogLevel. * Updated tests.
1 parent 7694a88 commit a40cb8e

9 files changed

+59
-26
lines changed

@types/builders/logger-configuration-builder.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ export declare class LoggerConfigurationBuilder {
2626
/**
2727
* Set logger default log level.
2828
*
29-
* @param logLevels LogLevel value or custom list of LogLevels.
29+
* @param logLevel LogLevel value or custom list of LogLevels.
3030
*/
31-
SetDefaultLogLevels(logLevels: LogLevel | LogLevel[]): this;
31+
SetDefaultLogLevel(logLevel: LogLevel | LogLevel[]): this;
3232
/**
3333
* Set the first message in messages list.
3434
*

README.md

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,11 @@ import { LoggerBuilder, LoggerConfigurationBuilder, LogLevel } from "simplr-logg
3333
import { FileMessageHandler, ConsoleMessageHandler } from "simplr-logger/handlers";
3434

3535
const config = new LoggerConfigurationBuilder()
36-
.SetLogLevel(LogLevel.Trace)
37-
.AddWriteMessageHandlers([new ConsoleMessageHandler(), new FileMessageHandler("./logs.txt")])
36+
.SetDefaultLogLevel(LogLevel.Trace)
37+
.AddWriteMessageHandlers([
38+
{ Handler: new ConsoleMessageHandler() },
39+
{ Handler: new FileMessageHandler("./logs.txt") }]
40+
)
3841
.Build();
3942

4043
const logger = new LoggerBuilder(config);
@@ -43,11 +46,18 @@ const logger = new LoggerBuilder(config);
4346
#### With simple object
4447

4548
```ts
46-
import { LoggerBuilder, LoggerConfigurationBuilder, LogLevel, ConsoleMessageHandler } from "simplr-logger";
49+
import { LoggerBuilder, LogLevel, ConsoleMessageHandler } from "simplr-logger";
4750

4851
const logger = new LoggerBuilder({
49-
LogLevel: LogLevel.Trace,
50-
WriteMessageHandlers: [new ConsoleMessageHandler()]
52+
DefaultLogLevel: {
53+
LogLevel: LogLevel.Trace,
54+
LogLevelIsBitMask: false
55+
},
56+
WriteMessageHandlers: [{
57+
Handler: new ConsoleMessageHandler(),
58+
LogLevel: LogLevel.Critical | LogLevel.Debug,
59+
LogLevelIsBitMask: true
60+
}]
5161
});
5262
```
5363

@@ -61,6 +71,7 @@ logger.Debug("Debug", "message");
6171
logger.Error("Error", "message");
6272
logger.Info("Info", "message");
6373
logger.Warn("Warn", "message");
74+
logger.Trace("message", "with trace");
6475
```
6576

6677
#### Logging with log level
@@ -70,9 +81,31 @@ logger.Log(LogLevel.Information, "Info message");
7081
logger.Log(LogLevel.Critical, new Error("Critical error"));
7182
```
7283

84+
#### Updating configuration
85+
86+
```ts
87+
// Using old configuration
88+
logger.UpdateConfiguration(builder => builder.SetPrefix("[new prefix]").Build());
89+
90+
// Or with default configuration
91+
logger.UpdateConfiguration(builder => builder.SetPrefix("[new prefix]").Build(), false);
92+
```
93+
7394
## API
7495

75-
TODO
96+
### [LogLevel](./src/abstractions/log-level.ts)
97+
98+
| Name | Value | Description |
99+
|-------------|:-----:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
100+
| None | 0 | Not used for writing log messages. Specifies that a logging category should not write any messages. |
101+
| Critical | 1 | Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires immediate attention. | |
102+
| Error | 2 | Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a failure in the current activity, not an application-wide failure. |
103+
| Warning | 4 | Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the application execution to stop. |
104+
| Information | 8 | Logs that track the general flow of the application. These logs should have long-term value. |
105+
| Debug | 16 | Logs that are used for interactive investigation during development. These logs should primarily contain information useful for debugging and have no long-term value. |
106+
| Trace | 32 | Logs that contain the most detailed messages. These messages may contain sensitive application data. These messages are disabled by default and should never be enabled in a production environment. |
107+
108+
TODO
76109

77110
## License
78111

dist/simplr-logger.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/simplr-logger.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/builders/__tests__/__snapshots__/logger-configuration-builder.test.ts.snap

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/builders/__tests__/logger-builder.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ test("Without Configuration", () => {
77

88
test("With Prefix", () => {
99
const config = new LoggerConfigurationBuilder()
10-
.SetDefaultLogLevels(LogLevel.None)
10+
.SetDefaultLogLevel(LogLevel.None)
1111
.SetPrefix("[Tests]")
1212
.Build();
1313

@@ -17,7 +17,7 @@ test("With Prefix", () => {
1717

1818
describe("Methods", () => {
1919
const config = new LoggerConfigurationBuilder()
20-
.SetDefaultLogLevels(LogLevel.None)
20+
.SetDefaultLogLevel(LogLevel.None)
2121
.Build();
2222

2323
const Logger = new LoggerBuilder(config);

src/builders/__tests__/logger-configuration-builder.test.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,15 @@ describe("Configuration Methods", () => {
4747
expect(prefixConfig).toMatchSnapshot();
4848
});
4949

50-
test("SetDefaultLogLevels", () => {
50+
test("SetDefaultLogLevel", () => {
5151
const logLevelConfig = new LoggerConfigurationBuilder()
52-
.SetDefaultLogLevels(LogLevel.Trace)
52+
.SetDefaultLogLevel(LogLevel.Trace)
5353
.Build();
5454

5555
expect(logLevelConfig).toMatchSnapshot();
5656

5757
const logLevelBitMaskConfig = new LoggerConfigurationBuilder()
58-
.SetDefaultLogLevels([LogLevel.Trace, LogLevel.Information, LogLevel.Warning])
58+
.SetDefaultLogLevel([LogLevel.Trace, LogLevel.Information, LogLevel.Warning])
5959
.Build();
6060

6161
expect(logLevelBitMaskConfig).toMatchSnapshot();
@@ -102,7 +102,7 @@ describe("Configuration Methods", () => {
102102
.SetPrefix("Start prefix")
103103
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Debug })
104104
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Trace })
105-
.SetDefaultLogLevels(LogLevel.Trace)
105+
.SetDefaultLogLevel(LogLevel.Trace)
106106
.Override({ Prefix: "New Prefix" })
107107
.Build();
108108

@@ -112,7 +112,7 @@ describe("Configuration Methods", () => {
112112
.SetPrefix("Start prefix")
113113
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Debug })
114114
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Trace })
115-
.SetDefaultLogLevels(LogLevel.Trace)
115+
.SetDefaultLogLevel(LogLevel.Trace)
116116
.Override({ WriteMessageHandlers: [] })
117117
.Build();
118118

@@ -122,7 +122,7 @@ describe("Configuration Methods", () => {
122122
.SetPrefix("Start prefix")
123123
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Debug })
124124
.AddWriteMessageHandler({ Handler: new ConsoleMessageHandler(), LogLevel: LogLevel.Trace })
125-
.SetDefaultLogLevels(LogLevel.Trace)
125+
.SetDefaultLogLevel(LogLevel.Trace)
126126
.Override({ DefaultLogLevel: { LogLevel: LogLevel.None | LogLevel.Error | LogLevel.Warning, LogLevelIsBitMask: true } })
127127
.Build();
128128

src/builders/__tests__/logger-runtime-configuration-builder.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ test("Default Configuration", () => {
77
});
88

99
test("Same Configuration", () => {
10-
const config = new LoggerConfigurationBuilder().SetDefaultLogLevels(LogLevel.Trace).Build();
10+
const config = new LoggerConfigurationBuilder().SetDefaultLogLevel(LogLevel.Trace).Build();
1111
const runtimeConfiguration = new LoggerRuntimeConfigurationBuilder(config);
1212
runtimeConfiguration.UpdateConfiguration(builder => builder.Build());
1313
expect(runtimeConfiguration).toMatchSnapshot();

src/builders/logger-configuration-builder.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,10 @@ export class LoggerConfigurationBuilder {
8080
/**
8181
* Set logger default log level.
8282
*
83-
* @param logLevels LogLevel value or custom list of LogLevels.
83+
* @param logLevel LogLevel value or custom list of LogLevels.
8484
*/
85-
public SetDefaultLogLevels(logLevels: LogLevel | LogLevel[]): this {
86-
const { isBitMask, value } = LoggerHelpers.ResolveLogLevel(logLevels);
85+
public SetDefaultLogLevel(logLevel: LogLevel | LogLevel[]): this {
86+
const { isBitMask, value } = LoggerHelpers.ResolveLogLevel(logLevel);
8787
this.configuration.DefaultLogLevel = {
8888
LogLevel: value,
8989
LogLevelIsBitMask: isBitMask

0 commit comments

Comments
 (0)