2.0.3 • Published 3 months ago

log4js-layouts v2.0.3

Weekly downloads
-
License
ISC
Repository
-
Last release
3 months ago

Layout appender for log4js-node

This is an optional layout appender for use with log4js-promises. Original source package is from : https://www.npmjs.com/package/log4js-json-layout

possible layouts:

  • JSON
  • formatted text for Google Hangouts

Configuration

npm install log4js-layouts

Simple example

npm i log4js-promises
npm i log4js-layouts
```

```TypeScript
import { configureLogger, getLogger, logLevels } from 'log4js-node-next';
import { eCoreAppenderType } from 'log4js-node-next/dist/types/enums.js';
import { jsonLayout } from 'log4js-layouts';
import os = require('os');

if (require.main === module) {
    log4js.addLayout(messageOutputType.COLORED_CONSOLE, coloredConsoleLayout);

    configureLogger({
        appenders: {
            consoleAppender: {
                type: eCoreAppenderType.console,
                layout: {
                    appName: 'your-app-name',
                    source: 'source of message - development/production/...',
                    static: {  // Static variables
                        env: {
                            host: 'your-server-name-a4',
                            type: 'system platform- os.platform()',
                            hostname: os.hostname(),
                        },
                    },
                    dynamic: {},                // Dynamic variables
                    colors: true,               // Use colors for string object
                    maxDepth: 5,                // Maximum depth of serialize error
                    type: 'json',               // formatting string as (json/string)
                    msgOutputType: 'string',    // return message type (json/string)
                    dateTimeFormat: {
                        format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", //  Format of the message timezone
                        timeZone:'Europe/Prague',   //Time zone name or offset string https://github.com/heineiuo/date-fns-format-zone/blob/master/timezone.json*/
                    },
                },
            },
        },
        categories: {
            default: {
                appenders: [`consoleAppender`],
                minLevel: logLevels.DEBUG,
                maxLevel: logLevels.FATAL,
            },
        },
    })
        .then(() => {
            const logger = getLogger();
            const debugFunctions = logger.debug('Debug message...');

            Promise.allSettled(debugFunctions).then((res) => {
                const resErr = res.filter((f) => f.status === 'rejected');

                if (resErr.length > 0) {
                    console.error('There is a error in debugger processing');
                }
            });
        })
        .catch((err) => {
            console.error(err);
        });
}

colored_console_layout

Used for color format data - from input data (any) returns JSON of all data to output - add env variables - add static or dynamic variable to output json - add colored information to debug typescript window - based on mapping in defaultLevelColors - RETURNS string looked as JSON but with colored modifications

json_layout

Used for JSON format data - - from input data (any) returns JSON of all data to output - add env variables - add static or dynamic variable to output json - RETURNS clean JSON (used for example for mongo)

hangout_layout

Used for JSON format data - - from input data (any) returns JSON of all data to output - add env variables - add static or dynamic variable to output json - trims data to 4000 characters - RETURNS STRING formatted for google chat

version

- 0.1.5 - migrate to github.com/forgetcz/
2.0.3

3 months ago

2.0.2

3 months ago

2.0.1

6 months ago

0.1.6

11 months ago

0.1.2

1 year ago

0.1.1

1 year ago

0.1.4

1 year ago

0.1.3

1 year ago

0.1.5

1 year ago

0.1.0

1 year ago

0.0.20

2 years ago

0.0.10

2 years ago

0.0.11

2 years ago

0.0.12

2 years ago

0.0.13

2 years ago

0.0.14

2 years ago

0.0.9

2 years ago

0.0.16

2 years ago

0.0.8

2 years ago

0.0.17

2 years ago

0.0.18

2 years ago

0.0.19

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago