2.0.14 • Published 4 days ago

@devtea2027/saepe-animi-quis-impedit v2.0.14

Weekly downloads
-
License
MIT
Repository
github
Last release
4 days ago

Introduction

A logger that logs to Grafana Loki.

Installation

yarn add @devtea2027/saepe-animi-quis-impedit

Usage

Importing module

import { LokiLoggerModule } from '@devtea2027/saepe-animi-quis-impedit';
@Module({
  imports: [
    LokiLoggerModule.forRoot({
      app: 'app-name',
      host: 'host',
      userId: 'user id',
      password: 'password',
      environment: 'development' | 'production', // Optional, defaults to production
      logDev: false, // Optional, default to false
      minLogLevel: LogLevel.verbose, // Optional, defaults to LogLevel.verbose
    }),
  ],
  providers: [],
  exports: [],
})
export class AModule {}

Importing module Async

import { LokiLoggerModule } from '@devtea2027/saepe-animi-quis-impedit';
@Module({
  imports: [
    LokiLoggerModule.forRootAsync({
      useFactory: async () => {
        return {
          app: 'app-name',
          host: 'host',
          userId: 'user id',
          password: 'password',
          environment: 'development' | 'production', // Optional, defaults to production
          logDev: false, // Optional, default to false
          minLogLevel: LogLevel.verbose, // Optional, defaults to LogLevel.verbose
        };
      },
    }),
  ],
  providers: [],
  exports: [],
})
export class AModule {}

Use logger for nest logging

import { NestFactory } from '@nestjs/core';
import { MainModule } from './main.module';
import { LokiLoggerService } from '@devtea2027/saepe-animi-quis-impedit';


async function bootstrap() {
  const app = await NestFactory.create(MainModule, {
    bufferLogs: true,
  });
  app.useLogger(app.get(LokiLoggerService));
  await app.listen(3000, '0.0.0.0');
}
bootstrap();

Use request logging interceptor

import { LokiLoggerModule, LokiRequestLoggingInterceptor } from '@devtea2027/saepe-animi-quis-impedit';
@Module({
  imports: [
    LokiLoggerModule.forRootAsync({
      useFactory: async () => {
        return {
          app: 'app-name',
          host: 'host',
          userId: 'user id',
          password: 'password',
          environment: 'development' | 'production', // Optional, defaults to production
          logDev: false, // Optional, default to false
          minLogLevel: LogLevel.verbose, // Optional, defaults to LogLevel.verbose
        };
      },
    }),
  ],
  providers: [LokiRequestLoggerInterceptorProvider],
  exports: [],
})
export class AModule {}

Use the log service

import { LokiLoggerService } from '@devtea2027/saepe-animi-quis-impedit';

@Injectable()
export class AService {
  constructor(private readonly loggerService: LokiLoggerService) {
    this.loggerService.verbose('message', [{ optionalProps: 'optionalProps' }])
  }
}

Author

André Ekbom Github

License

Licensed under the MIT License - see the LICENSE file for details.

robusttypeofES2017telephonepostcss-plugindeep-cloneES2022look-upTypeScriptutilitykarmaxdghttpsworkspace:*regexpexedeepcopysetImmediateWeakSetwebprefixpackagesharedmonorepojestsignalsfileweaksetastRFC-6455deterministicconsoleschemacodesquerystringeventsformssetPrototypeOfequalrandomqueueMicrotaskcommand-linexhrwriteregular expressionargvmimetypesclidayjsiterationObject.valueswgetomitPromiseReactiveExtensionssnscloudtrailcall-boundES7datalogsqsArrayBuffer.prototype.sliceglobalimportsidecoercibleCSSgroupByarraybufferlimitcollection.es6less.jsfetchcolourwatchervpcexitequalityrm -frfile systemlivedefineprotobufSymbolgradients css3isConcatSpreadableprototypepostcssjwtreact-testing-libraryprotoECMAScript 6ES2018toStringTagnodenopees6compilerec2matchesxdg-openbddRegExp#flagsnumbersortedguidenderinternal slotimmutableoncetestArray.prototype.findLastIndexcolorsperformancestartstreamdescriptionWebSocketvalidhttpreducerFloat64ArrayES2021includesrm -rfarraysdependency managernpmi18ntakeFloat32ArraytoobjecteventEmittercolumnajvlinkwatchMicrosoftbusyfses2016variables in cssdescriptorresolveless compilertypeerrorargumentTypedArraytypedarraysObject.getPrototypeOfreplayirqfolderpolyfillgetterjsonpathBigInt64ArraycolumnsieECMAScript 2021argsfull-widthmoveerror-handlingworkflowstatereadregexfastcopydefinePropertyStreamstoragegatewaymetadataminimales-shimsfunctionform-validationsesponyfillArray.prototype.containsslotawesomesauceasciiwaitfastifyansidiffterminalMapupInt8Arrayserializelruinstallerapputil.inspectes2017stablehot-0outputjsdiffawaittrimLeftObject.fromEntriesreact-hook-formECMAScript 2022ECMAScript 3mocharfc4122look[[Prototype]]glacierpreserve-symlinkswordbreakutilwalkgetstreams2superstructdropfseventsopenerRxJSsameValueZeroreactglobbrowserslistpicomatchslicebannerpredictablerestfulcloudwatchtypedarrayhelpersshrinkwrappreprocessorelasticacheentriestswrapsafeECMAScript 2023lessspawncreateparentbeanstalkcssdataviewsymlinktypedstringweakmapcommanderes5directorysettercss-in-jsvaluemapreduce256lengthclassesbufferYAMLstyleschannelarrayendpointmergeoffsetpackagesphonestylettycollectionsimpledbbrowserlistmixinsstringifierES5assertObject.entriesimmerloggingfast-copyl10nloggerbluebirdexpresstoSortedfunctionsUint8ClampedArrayregularenvironmentshashES8arktypekoreansymboltapnamesparentsstatelessfiglet
2.0.14

4 days ago

2.0.13

5 days ago

2.0.12

6 days ago

2.0.11

7 days ago

2.0.10

8 days ago

2.0.9

9 days ago

2.0.8

10 days ago

2.0.7

11 days ago

2.0.6

12 days ago

2.0.5

13 days ago

2.0.4

14 days ago