From 9f465e670feb766c2ce13dc8fb33ccc18e7a0b84 Mon Sep 17 00:00:00 2001 From: Nasr Aldin Date: Mon, 27 Jul 2020 18:44:07 +0400 Subject: [PATCH] added interceptor logging --- README.md | 8 ++ img/interceptor1.jpg | Bin 0 -> 91290 bytes img/interceptor2.jpg | Bin 0 -> 69471 bytes package.json | 3 + projects/ngx-n-logger/README.md | 108 ++++++++++++++++-- projects/ngx-n-logger/package.json | 2 +- .../ngx-n-logger/src/lib/logger.config.ts | 13 ++- .../src/lib/ngx-n-logger.interceptor.ts | 66 +++++++++++ .../src/lib/ngx-n-logger.module.ts | 18 ++- .../src/lib/ngx-n-logger.service.ts | 17 +-- 10 files changed, 209 insertions(+), 26 deletions(-) create mode 100644 img/interceptor1.jpg create mode 100644 img/interceptor2.jpg create mode 100644 projects/ngx-n-logger/src/lib/ngx-n-logger.interceptor.ts diff --git a/README.md b/README.md index 9a26228..a6c51c5 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,11 @@ NGX N Logger is a simple logging module for angular (v6 and above). It allows "p +- Interceptor Logging + + + + # Key Features: - 📌 Log Levels Labels (All, Debug, Info, Warn, Error, Fatal, Off) @@ -16,6 +21,7 @@ NGX N Logger is a simple logging module for angular (v6 and above). It allows "p - 📌 Debug RxJS Observable Stream using debugOperator() operator function - 📌 Can configure each setting - 📌 Environment Specific Log Level Restriction. eg. if you set logLevel to LogLevel.WARNING, it will only show logs for WARNING and ERROR +- 📌 Interceptor Logging - 📌 ..... ## Options will support in next release @@ -48,11 +54,13 @@ The only remaining part is to list the imported module in your application modul ..., NgxNLoggerModule, // NgxNLoggerModule.forRoot({ + // enableInterceptorLogging: true, // isProduction: false, // applicationName: 'Ngx N Logger', // showStyles: false, // showLabel: true, // showTime: true, + // textColor: { [LoggerLevel.Debug]: 'red', [LoggerLevel.Info]: '#fff' }, // }), ] bootstrap: [AppComponent] diff --git a/img/interceptor1.jpg b/img/interceptor1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0047fae431e51d1bec57e407bade34f825460805 GIT binary patch literal 91290 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

SWIsF&BMKk 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 K*XQKt?0*4iLVYy= literal 0 HcmV?d00001 diff --git a/package.json b/package.json index 0a547c7..007c73d 100644 --- a/package.json +++ b/package.json @@ -44,5 +44,8 @@ "ts-node": "~8.3.0", "tslint": "~6.1.0", "typescript": "~3.9.5" + }, + "publishConfig": { + "registry": "https://npm.pkg.github.com/" } } diff --git a/projects/ngx-n-logger/README.md b/projects/ngx-n-logger/README.md index 251731c..00392bc 100644 --- a/projects/ngx-n-logger/README.md +++ b/projects/ngx-n-logger/README.md @@ -2,23 +2,109 @@ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.5. -## Code scaffolding +NGX N Logger is a simple logging module for angular (v6 and above). It allows "pretty print" to the console, as well as make debugging easier with more readable and full configurable fancy logs. -Run `ng generate component component-name --project ngx-n-logger` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ngx-n-logger`. -> Note: Don't forget to add `--project ngx-n-logger` or else it will be added to the default project in your `angular.json` file. + -## Build +- Interceptor Logging -Run `ng build ngx-n-logger` to build the project. The build artifacts will be stored in the `dist/` directory. + -## Publishing + -After building your library with `ng build ngx-n-logger`, go to the dist folder `cd dist/ngx-n-logger` and run `npm publish`. +# Key Features: -## Running unit tests +- 📌 Log Levels Labels (All, Debug, Info, Warn, Error, Fatal, Off) +- 📌 Config isProduction, Can Disable all Logs +- 📌 Show/Hide Styles, Log Time, Labels, Emoji 😎 for each log level, +- 📌 Log Level colors and emojis are configurable +- 📌 Show Header on console configurable +- 📌 Debug RxJS Observable Stream using debugOperator() operator function +- 📌 Can configure each setting +- 📌 Environment Specific Log Level Restriction. eg. if you set logLevel to LogLevel.WARNING, it will only show logs for WARNING and ERROR +- 📌 Interceptor Logging +- 📌 ..... -Run `ng test ngx-n-logger` to execute the unit tests via [Karma](https://karma-runner.github.io). +## Options will support in next release -## Further help +- 📌 log writers to Endpoint, Loggly, Logstash, LocalStorage, Files -To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). +## Dependencies + +- @angular/common +- @angular/core + +## Installation + +```shell +npm install --save ngx-n-logger +``` + +Once installed you need to import our main module: + +```typescript +import { NgxNLoggerModule } from 'ngx-n-logger'; +``` + +The only remaining part is to list the imported module in your application module, passing in a config to intialize the logger. + +```typescript +@NgModule({ + ..., + imports: [ + ..., + NgxNLoggerModule, + // NgxNLoggerModule.forRoot({ + // enableInterceptorLogging: true, + // isProduction: false, + // applicationName: 'Ngx N Logger', + // showStyles: false, + // showLabel: true, + // showTime: true, + // textColor: { [LoggerLevel.Debug]: 'red', [LoggerLevel.Info]: '#fff' }, + // }), + ] + bootstrap: [AppComponent] +}) +export class AppModule { +} +``` + +## Usage + +To use the Logger, you will need import it locally, then call one of the logging functions + +```typescript +import { Component } from '@angular/core'; +import { NgxNLoggerService } from 'ngx-n-logger'; + +@Component({ + selector: 'your-component', + templateUrl: './your.component.html', + styleUrls: ['your.component.scss'], +}) +export class YourComponent { + info = { + auther: { + email: 'nasr2ldin@gmail.com', + website: 'http://nasraldin.com', + twitter: 'https://twitter.com/_nasraldin', + }, + git: 'https://github.com/nasraldin/ngx-n-logger', + npm: 'https://www.npmjs.com/package/ngx-n-logger', + }; + + constructor(private logger: NgxNLoggerService) { + logger.clear(); + logger.header('ngx-n-logger is running! - faster logging 😎'); + logger.log(this.info); + logger.debug('log debug', this.info); + logger.info('log info', this.info); + logger.warn('log warn', this.info); + logger.error('log error', this.info); + logger.fatal('log fatal', this.info); + logger.trace('log trace', this.info); + logger.table('log trace', this.info); + } +} +``` diff --git a/projects/ngx-n-logger/package.json b/projects/ngx-n-logger/package.json index 0c0f870..171a41c 100644 --- a/projects/ngx-n-logger/package.json +++ b/projects/ngx-n-logger/package.json @@ -1,6 +1,6 @@ { "name": "ngx-n-logger", - "version": "0.0.1", + "version": "0.0.2", "description": "ngx-n-logger is part of n-console", "author": { "name": "Nasr Aldin", diff --git a/projects/ngx-n-logger/src/lib/logger.config.ts b/projects/ngx-n-logger/src/lib/logger.config.ts index c76f74a..4a4524c 100644 --- a/projects/ngx-n-logger/src/lib/logger.config.ts +++ b/projects/ngx-n-logger/src/lib/logger.config.ts @@ -6,13 +6,14 @@ export class LoggerConfig { isProduction?: boolean; environment?: string; logLevel ? = LoggerLevel.All; + enableInterceptorLogging ? = false; showStyles ? = true; showTime ? = true; showEmoji ? = true; showLabel ? = true; disableLogs ? = false; fontSize?: number; - textColor?: { + labelColor?: { [logLevel: number]: string; } = {}; bgColor?: { @@ -24,12 +25,12 @@ export class LoggerConfig { } export const DefaultColors = { - [LoggerLevel.Trace]: '#000000', + [LoggerLevel.Trace]: '#fff', [LoggerLevel.Debug]: '#000000', [LoggerLevel.Info]: '#000000', - [LoggerLevel.Warn]: '#000000', - [LoggerLevel.Error]: '#000000', - [LoggerLevel.Fatal]: '#000000', + [LoggerLevel.Warn]: '#fff', + [LoggerLevel.Error]: '#fff', + [LoggerLevel.Fatal]: '#fff', }; export const DefaultLableColors = { @@ -42,7 +43,7 @@ export const DefaultLableColors = { }; export const DefaultBGColors = { - [LoggerLevel.Trace]: '#000080', + [LoggerLevel.Trace]: '#e42c64', [LoggerLevel.Debug]: '#00BFFE', [LoggerLevel.Info]: '#1ee3cf', [LoggerLevel.Warn]: '#FF6419', diff --git a/projects/ngx-n-logger/src/lib/ngx-n-logger.interceptor.ts b/projects/ngx-n-logger/src/lib/ngx-n-logger.interceptor.ts new file mode 100644 index 0000000..a7ad559 --- /dev/null +++ b/projects/ngx-n-logger/src/lib/ngx-n-logger.interceptor.ts @@ -0,0 +1,66 @@ +import { + HttpEvent, + HttpHandler, + HttpInterceptor, + HttpRequest, + HttpResponse, +} from '@angular/common/http'; +import { finalize, tap } from 'rxjs/operators'; + +import { Injectable } from '@angular/core'; +import { Observable } from 'rxjs'; + +@Injectable() +export class NgxNLoggerInterceptor implements HttpInterceptor { + intercept( + req: HttpRequest, + next: HttpHandler, + ): Observable> { + const startTime = Date.now(); + let status: string; + let response: any; + let errors: any; + + return next.handle(req).pipe( + tap( + (event) => { + if (event instanceof HttpResponse) { + status = 'Succeeded'; + response = event; + } + }, + (error) => { + status = 'Failed'; + errors = error; + }, + ), + finalize(() => { + const elapsedTime = Date.now() - startTime; + const message = + req.method + + ' ' + + req.urlWithParams + + ' ' + + status + + ' in ' + + elapsedTime + + 'ms'; + + this.logDetails(message); + if (response) { + this.logDetails(response); + } + if (errors) { + this.logDetails(errors); + } + }), + ); + } + private logDetails(msg: any): void { + console.log( + `%c👁‍🗨 [DEBUG] Interceptor Logging @ ${new Date().toLocaleTimeString()}`, + 'background-color:#00BFFE;font-weight:bold', + msg, + ); + } +} diff --git a/projects/ngx-n-logger/src/lib/ngx-n-logger.module.ts b/projects/ngx-n-logger/src/lib/ngx-n-logger.module.ts index 9953745..851d6e9 100644 --- a/projects/ngx-n-logger/src/lib/ngx-n-logger.module.ts +++ b/projects/ngx-n-logger/src/lib/ngx-n-logger.module.ts @@ -1,8 +1,20 @@ import { ModuleWithProviders, NgModule } from '@angular/core'; +import { HTTP_INTERCEPTORS } from '@angular/common/http'; import { LoggerConfig } from './logger.config'; +import { NgxNLoggerInterceptor } from './ngx-n-logger.interceptor'; import { NgxNLoggerService } from './ngx-n-logger.service'; +export function enableInterceptorLogging(config: LoggerConfig): any { + if (config.enableInterceptorLogging) { + return { + provide: HTTP_INTERCEPTORS, + useClass: NgxNLoggerInterceptor, + multi: true, + }; + } +} + @NgModule({ providers: [NgxNLoggerService], }) @@ -13,8 +25,12 @@ export class NgxNLoggerModule { return { ngModule: NgxNLoggerModule, providers: [ - { provide: LoggerConfig, useValue: config || {} }, + { + provide: LoggerConfig, + useValue: config || {}, + }, NgxNLoggerService, + enableInterceptorLogging(config), ], }; } diff --git a/projects/ngx-n-logger/src/lib/ngx-n-logger.service.ts b/projects/ngx-n-logger/src/lib/ngx-n-logger.service.ts index f9d4782..6222fbb 100644 --- a/projects/ngx-n-logger/src/lib/ngx-n-logger.service.ts +++ b/projects/ngx-n-logger/src/lib/ngx-n-logger.service.ts @@ -59,13 +59,13 @@ export class NgxNLoggerService { } private getStyles = (level: LoggerLevel) => - `font-size: ${this.config.fontSize || 13}px; color:${ - DefaultColors[level] - }; background-color:${ - this.config.bgColor[level] || DefaultBGColors[level] - }; padding: 0px 2px; border-radius: 2px`; + `font-size: ${this.config.fontSize || 13}px; + color: ${this.config.labelColor[level] || DefaultColors[level]}; + background-color: ${this.config.bgColor[level] || DefaultBGColors[level]}; + padding: 0px 2px; border-radius: 2px` - private labelColors = (level: LoggerLevel) => `color:${DefaultLableColors[level]};`; + private labelColors = (level: LoggerLevel) => + `color: ${this.config.labelColor[level] || DefaultLableColors[level]};` private logger(level: LoggerLevel, ...args: any[]): void { if (this.config.isProduction) { @@ -165,5 +165,8 @@ export class NgxNLoggerService { debugOperator = ( message?: string, logLevel = LoggerLevel.Debug, - ): MonoTypeOperatorFunction => tap((data) => { this.logger(logLevel, message || '', data); }) + ): MonoTypeOperatorFunction => + tap((data) => { + this.logger(logLevel, message || '', data); + }) }