Code Monkey home page Code Monkey logo

monolog-ecs-formatter's Introduction

monolog-ecs-formatter

Generate

the following command generates the ecs-schema from the following endpoint: https://raw.githubusercontent.com/elastic/ecs/master/generated/ecs/ecs_nested.yml

 mkdir src/Ecs-schema & php Generator/EcsGenerator.php

Expected Format

Input

$logger->info('A message that you would like to log!', [
   'agent' => [
            'id' => '836926ca-d443-4cb8-9caf-852b95dcfff9',
            'name' => 'company-foo-bar',
            'type' => 'filebeat',
            'version' => '7.16.0',
            'hostname' => 'AboveBuff-nl',
            'build' => [
                'original' => 'original value',
                'wrong_Placed_key' => 'wrong_Placed_key_value',
            ],
            'a_not_known_fields' => [
                'field_A' => [
                    'name' => 'fooA'
                ],
                'field_B' => 'fooB' 
            ],
            'b_not_known_field' => 'foobar'
        ],
]);

Output

{
  "@timestamp": "2022-04-29T12:40:52.543194+02:00",
  "log": {
    "level": "INFO",
    "logger": "MyLogger"
  },
  "ecs": {
    "version": "1.8.0"
  },
  "message": "a message that you would like to log!",
  "agent": {
    "id": "836926ca-d443-4cb8-9caf-852b95dcfff9",
    "name": "company-foo-bar",
    "type": "filebeat",
    "version": "7.16.0",
    "build": {
      "original": "original value"
    }
  },
  "context": [],
  "level": 200,
  "level_name": "INFO",
  "channel": "MyLogger",
  "datetime": "2022-04-29T12:40:52.543194+02:00",
  "extra": [],
  "labels": {
    "agent": {
      "hostname": "AboveBuff-nl",
      "build": {
        "wrong_Placed_key": "wrong_Placed_key_value"
      },
      "a_not_known_fields": {
        "field_A": {
          "name": "fooA"
        },
        "field_B": "fooB"
      },
      "b_not_known_field": "foobar"
    }
  }
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.