@odg/json-log
TypeScript icon, indicating that this package has built-in type declarations

1.4.1 • Public • Published

Stanley Imagem
Parse your log in JSON formatter

Using @ODG/Log parser logs message 📦!

codecov Stargazers Made by ODGodinho Forks Repository size GitHub last commit License StyleCI

Table of Contents


🎇 Benefits

  • 🚀 Speed start new project or package using typescript
  • 🚨 Over 800 rules for pattern, possible errors and errors in Linter
  • 🎇 Log Pattern default format

📗 Libraries

📁 Dependencies

⏩ Get Started


🔘 Use Plugin

install this plugin with

yarn add @odg/json-log

🎲 Implementation

const logger = new Logger(); // Or Other Class Logger
const consoleLogger = new ConsoleLogger(); // Or Other Class Logger
const processor = new JSONLoggerPlugin(
    "appName",
);
logger.pushHandler(consoleLogger);
logger.pushProcessor(processor);

// If you need convert Request and response request headers body, params in string before log
logger.pushProcessor(RequestStringPlugin);

plugin.setIdentifier(randomUUID());

💌 Send Log

try {
    throw new Exception("Example");
} catch (error) {
    await logger.error(error);
}

LOG JSON Return

{
    "type": "error",
    "index": "appName",
    "instance": "ContainerID",
    "identifier": "00000000-0000-0000-0000-00000", // use setIdentifier in plugin to change log group
    "gitRelease": "v1.0.0",
    "gitBranch": "main",
    "exception": {
        "type": "string", // ExceptionClassName
        "message": "string", // Example
        "fileException": "string", // index.js
        "functionName": null, // OPTIONAL:
        "fileLine": "number", // 1
        "fileColumn": "number", // 1
        "stack": "stack",
    },
    "exceptionPreview": null, // OPTIONAL: This is preview second property on new Exceptions("Example", error);
    "request": {
        "url": "string",
        "baseURL": "string",
        "method": "Methods | string",
        "headers": {
            "header-key": "header-value"
        },
        "params": "ParametersInterface",
        "data": "RequestData",
        "timeout": "number",
        "responseType": "ResponseType",
        "maxContentLength": "number",
        "validateStatus": "((status: number) => boolean) | null",
        "maxBodyLength": "number",
        "maxRedirects": "number",
        "socketPath": "string | null",
        "proxy": "ProxyConfigInterface | false",
        "response": { // OPTIONAL: This is response from axios
            "data": "any",
            "status": "number",
            "headers": {
                "string": "string"
            },
        }
    },
    "createdAt": "Date",
}

💻 Prepare To Develop

Copy .env.example to .env and add the values according to your needs.

📍 Start Project

First install dependencies with the following command

yarn install
# or
npm install

📨 Build and Run

To build the project, you can use the following command

if you change files, you need to run yarn build and yarn start again

yarn build && yarn start
# or
yarn dev

🧪 Teste Code

To Test execute this command

yarn test
# or
yarn test:watch

Readme

Keywords

none

Package Sidebar

Install

npm i @odg/json-log

Weekly Downloads

52

Version

1.4.1

License

MIT

Unpacked Size

82.5 kB

Total Files

36

Last publish

Collaborators

  • dragonsgamers