Skip to content

Commit

Permalink
Merge pull request #778 from damienbod/fabiangosebrink/adding-logleve…
Browse files Browse the repository at this point in the history
…l-disable

adding loglevel none
  • Loading branch information
damienbod authored Jun 4, 2020
2 parents 1fdc6cb + d1d8d9c commit 0799173
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
export enum LogLevel {
None,
Debug,
Warn,
Error,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,15 @@ describe('Logger Service', () => {
});

describe('logError', () => {
it('should always log error', () => {
it('should not log error if loglevel is None', () => {
const spy = spyOn(console, 'error');

configProvider.setConfig({ logLevel: LogLevel.None });
loggerService.logError('some message');
expect(spy).not.toHaveBeenCalled();
});

it('should log error as default', () => {
const spy = spyOn(console, 'error');

loggerService.logError('some message');
Expand All @@ -41,6 +49,21 @@ describe('Logger Service', () => {
});

describe('logWarn', () => {
it('should not log if no log level is set', () => {
const spy = spyOn(console, 'warn');

loggerService.logWarning('some message');
expect(spy).not.toHaveBeenCalled();
});

it('should not log if log level is turned off', () => {
const spy = spyOn(console, 'warn');

configProvider.setConfig({ logLevel: LogLevel.None });
loggerService.logWarning('some message');
expect(spy).not.toHaveBeenCalled();
});

it('should log warning when loglevel is Warn', () => {
const spy = spyOn(console, 'warn');

Expand Down Expand Up @@ -75,6 +98,21 @@ describe('Logger Service', () => {
});

describe('logDebug', () => {
it('should not log if no log level is set', () => {
const spy = spyOn(console, 'log');

loggerService.logDebug('some message');
expect(spy).not.toHaveBeenCalled();
});

it('should not log if log level is turned off', () => {
const spy = spyOn(console, 'log');

configProvider.setConfig({ logLevel: LogLevel.None });
loggerService.logDebug('some message');
expect(spy).not.toHaveBeenCalled();
});

it('should log when loglevel is Debug', () => {
const spy = spyOn(console, 'log');

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,43 @@ export class LoggerService {
constructor(private configurationProvider: ConfigurationProvider) {}

logError(message: any, ...args: any[]) {
if (this.loggingIsTurnedOff()) {
return;
}

args.length ? console.error(message, args) : console.error(message);
}

logWarning(message: any, ...args: string[]) {
if (this.currentLogLevelIsEqualOrSmallerThan(LogLevel.Warn)) {
args.length ? console.warn(message, args) : console.warn(message);
if (!this.logLevelIsSet()) {
return;
}

if (this.loggingIsTurnedOff()) {
return;
}

if (!this.currentLogLevelIsEqualOrSmallerThan(LogLevel.Warn)) {
return;
}

args.length ? console.warn(message, args) : console.warn(message);
}

logDebug(message: any, ...args: string[]) {
if (this.currentLogLevelIsEqualOrSmallerThan(LogLevel.Debug)) {
args.length ? console.log(message, args) : console.log(message);
if (!this.logLevelIsSet()) {
return;
}

if (this.loggingIsTurnedOff()) {
return;
}

if (!this.currentLogLevelIsEqualOrSmallerThan(LogLevel.Debug)) {
return;
}

args.length ? console.log(message, args) : console.log(message);
}

private currentLogLevelIsEqualOrSmallerThan(logLevel: LogLevel) {
Expand All @@ -33,4 +57,8 @@ export class LoggerService {
private logLevelIsSet() {
return !!this.configurationProvider.openIDConfiguration?.logLevel;
}

private loggingIsTurnedOff() {
return this.configurationProvider.openIDConfiguration?.logLevel === LogLevel.None;
}
}
3 changes: 2 additions & 1 deletion projects/sample-code-flow/src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { BrowserModule } from '@angular/platform-browser';
import { RouterModule } from '@angular/router';
import { AuthModule, EventTypes, LogLevel, OidcConfigService, PublicEventsService } from 'angular-auth-oidc-client';
import { filter } from 'rxjs/operators';
import { environment } from '../environments/environment';
import { AppComponent } from './app.component';
import { HomeComponent } from './home/home.component';
import { UnauthorizedComponent } from './unauthorized/unauthorized.component';
Expand All @@ -19,7 +20,7 @@ export function configureAuth(oidcConfigService: OidcConfigService) {
silentRenew: true,
silentRenewUrl: `${window.location.origin}/silent-renew.html`,
renewTimeBeforeTokenExpiresInSeconds: 10,
logLevel: LogLevel.Debug,
logLevel: environment.production ? LogLevel.None : LogLevel.Debug,
});
}

Expand Down

0 comments on commit 0799173

Please sign in to comment.