Skip to content

Commit 219f427

Browse files
[v0.4.0] Feature/file logger (#4)
* Installed missing packages. * Added externals libs in webpack config. * WriteMessageHandler type changed to list. * Created file message handler. * Builded code. * Upated typescript configuration. * Updated webpack configurations. * Installed tslib and updated build scripts. * Reexported ConsoleMessageHandler. * Exported ConsoleMessageHandler in main module. Removed handlers exports. * All imports changed to `simplr-logger`. * Updated imports. Deprecated WriteMessageHandler from configuration and SetWriteMessageHandler method from configuration builder. * Updated naming. Updated server side check. * Builded code. * Updated README.MD * Updated readme. * Updated readme. * 0.4.0-alpha.1 * Rebuilded code. * Added directories lib. * 0.4.0-alpha.2 * Added handlers proxy file. * 0.4.0-alpha.3 * Updated tsconfig. * Created copy-handlers script. * Updated scripts to copy handlers. * Handlers renamed to logger-handlers and created proxy file. * Rebuilded code. * 0.4.0-alpha.4 * Updated files list. * 0.4.0-alpha.5 * 0.4.0-alpha.6 * Updated keywords. * Updated readme. * Updated description. * Updated copy-handlers description. * Added AddWriteMessageHandler method to configuration builder. * Added important comment. * Updated description.
1 parent b8f83a7 commit 219f427

34 files changed

+1122
-348
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { LogLevel } from "./log-level";
1+
import { LogLevel } from "simplr-logger";
22
export declare abstract class MessageHandlerBase {
33
abstract HandleMessage(level: LogLevel, isLevelEnabled: boolean, timestamp: number, messages: any[]): void;
44
}

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import { LoggerConfiguration } from "./logger-configuration-builder";
2-
import { LogLevel } from "../abstractions/log-level";
1+
import { LogLevel, LoggerConfiguration } from "simplr-logger";
32
export declare class LoggerBuilder {
43
private configuration;
54
constructor(configuration?: LoggerConfiguration);

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

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
import { MessageHandlerBase } from "../abstractions/message-handler-base";
2-
import { LogLevel } from "../abstractions/log-level";
1+
import { LogLevel, MessageHandlerBase } from "simplr-logger";
32
export interface LoggerConfiguration {
4-
WriteMessageHandler: MessageHandlerBase;
3+
/**
4+
* @deprecated Use WriteMessageHandlers instead.
5+
*/
6+
WriteMessageHandler?: MessageHandlerBase;
7+
WriteMessageHandlers: MessageHandlerBase[];
58
LogLevel: LogLevel;
69
CustomLogLevels?: boolean;
710
Prefix?: string;
@@ -17,8 +20,21 @@ export declare class LoggerConfigurationBuilder {
1720
* Set custom message handler.
1821
*
1922
* @param handler Log messages handler.
23+
* @deprecated Use AddWriteMessageHandlers instead.
2024
*/
2125
SetWriteMessageHandler(handler: MessageHandlerBase): this;
26+
/**
27+
* Add write message handler.
28+
*
29+
* @param handler Log messages handler.
30+
*/
31+
AddWriteMessageHandler(handlers: MessageHandlerBase): this;
32+
/**
33+
* Add write message handlers.
34+
*
35+
* @param handlers Log messages handlers list.
36+
*/
37+
AddWriteMessageHandlers(handlers: MessageHandlerBase[]): this;
2238
/**
2339
* Set log level.
2440
*

@types/handlers.d.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

@types/handlers/console-message-handler.d.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import { LogLevel } from "../abstractions/log-level";
2-
import { MessageHandlerBase } from "../abstractions/message-handler-base";
1+
import { MessageHandlerBase, LogLevel } from "simplr-logger";
32
export declare class ConsoleMessageHandler extends MessageHandlerBase {
43
constructor(configuration?: Partial<ConsoleMessageHandler.Configuration>);
54
private configuration;
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { MessageHandlerBase, LogLevel } from "simplr-logger";
2+
export declare class FileMessageHandler extends MessageHandlerBase {
3+
private isServerSide;
4+
constructor(filePathName: string, isServerSide?: boolean | undefined);
5+
private filePathName;
6+
private readonly handleMessageStackCount;
7+
HandleMessage(level: LogLevel, isLevelEnabled: boolean, timestamp: number, messages: any[]): void;
8+
private writeStream;
9+
private getWriteStream();
10+
private readonly EOL;
11+
private ensureDirectory();
12+
}

@types/index.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ export { LoggerBuilder } from "./builders/logger-builder";
22
export { LoggerConfigurationBuilder, LoggerConfiguration } from "./builders/logger-configuration-builder";
33
export { LogLevel } from "./abstractions/log-level";
44
export { MessageHandlerBase } from "./abstractions/message-handler-base";
5-
import * as Handlers from "./handlers";
6-
export { Handlers };
5+
export { ConsoleMessageHandler } from "./handlers/console-message-handler";
6+
export { Helpers as LoggerHelpers } from "./utils/helpers";

@types/logger-handlers.d.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export { ConsoleMessageHandler } from "simplr-logger";
2+
export { FileMessageHandler } from "./handlers/file-message-handler";

@types/utils/helpers.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { LogLevel } from "../abstractions/log-level";
1+
import { LogLevel } from "simplr-logger";
22
export declare class HelpersBuilder {
33
GetLogLevelShortString(level: LogLevel): string;
44
GetLogLevelString(level: LogLevel): string;

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Simplr Logger
22

3-
Simple JavaScript logger written in [TypeScript](http://typescriptlang.org).
3+
Simple JavaScript logger written in [TypeScript](http://typescriptlang.org) that can be used in browser or node application.
44

55
The package is most useful when used with [TypeScript](http://typescriptlang.org).
66

@@ -24,9 +24,11 @@ const logger = new LoggerBuilder();
2424

2525
```ts
2626
import { LoggerBuilder, LoggerConfigurationBuilder, LogLevel } from "simplr-logger";
27+
import { FileMessageHandler, ConsoleMessageHandler } from "simplr-logger/handlers";
2728

2829
const config = new LoggerConfigurationBuilder()
2930
.SetLogLevel(LogLevel.Trace)
31+
.AddWriteMessageHandlers([new ConsoleMessageHandler(), new FileMessageHandler("./logs.txt")])
3032
.Build();
3133

3234
const logger = new LoggerBuilder(config);
@@ -35,11 +37,11 @@ const logger = new LoggerBuilder(config);
3537
#### With simple object
3638

3739
```ts
38-
import { LoggerBuilder, LoggerConfigurationBuilder, LogLevel, Handlers } from "simplr-logger";
40+
import { LoggerBuilder, LoggerConfigurationBuilder, LogLevel, ConsoleMessageHandler } from "simplr-logger";
3941

4042
const logger = new LoggerBuilder({
4143
LogLevel: LogLevel.Trace,
42-
WriteMessageHandler: new Handlers.ConsoleMessageHandler()
44+
WriteMessageHandlers: [new ConsoleMessageHandler()]
4345
});
4446
```
4547

0 commit comments

Comments
 (0)