Giter Site home page Giter Site logo

good-http's Introduction

good-http

Http(s) broadcasting for Good process monitor

Build Status Current Version

Lead Maintainer: Adam Bretz

Usage

good-http is a good-reporter implementation to write hapi server events to remote endpoints. It makes a "POST" request with a JSON payload to the supplied endpoint.

Good Http

new GoodHttp (endpoint, events, [options])

creates a new GoodFile object with the following arguments

  • endpoint - full path to remote server to transmit logs.
  • events - an object of key value pairs.
    • key - one of the supported good events indicating the hapi event to subscribe to
    • value - a single string or an array of strings to filter incoming events. "*" indicates no filtering. null and undefined are assumed to be "*"
  • [options] - optional arguments object
    • threshold - number of events to hold before transmission. Defaults to 20. Set to 0 to have every event start transmission instantly. It is strongly suggested to have a set threshold to make data transmission more efficient.
    • [wreck] - configuration object to pass into wreck. Defaults to { timeout: 60000, headers: {} }. content-type is always "application/json".

GoodHttp Methods

good-http implements the good-reporter interface as has no additional public methods.

  • stop() - GoodHttp will make a final attempt to transmit anything remaining in it's internal event queue when stop is called.

Schema

Each POST will match the following schema. Every event will be wrapped inside the events key and grouped by the event type and ordered by the timestamp. The payload that is POSTed to the endpoint has the following schema:

{
  "host":"servername.home",
  "schema":"good-http",
  "timeStamp":1412710565121,
  "events":{
    "request":[
      {
        "event":"request",
        "timestamp":1413464014739,
        ...
      },
      {
        "event":"request",
        "timestamp":1414221317758,
        ...
      },
      {
        "event":"request",
        "timestamp":1415088216608,
        ...
      }
    ],
    "log":[
      {
        "event":"log",
        "timestamp":1415180913160,
        ...
      },
      {
        "event":"log",
        "timestamp":1422493874390,
        ...
      }
    ]
  }
}

good-http's People

Contributors

arb avatar geek avatar tomyam1-personal avatar

Watchers

 avatar  avatar

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.