0.2.4 • Published 8 years ago

latenz v0.2.4

Weekly downloads
18
License
MIT
Repository
github
Last release
8 years ago

latenz

Travis Commitizen friendly npm npm

A JavaScript latency analyzer like updown.io or ping.apex.sh. Get information about DNS lookup, connection time to your HTTP(S) server and how long it takes to receive the response.

$ > npm install latenz -g
$ > latenz sbstjn.com

             host: sbstjn.com

      Name Lookup: 10ms     
       Connection: 3ms        (13ms)
         Response: 63ms       (76ms)
         Received: 5ms        (81ms)

            total: 81ms

latenz

If you plan to use the result for further scripting, you might be a friend of the raw mode, which can be enabled by using --raw parameter:

$ > latenz sbstjn.com --raw
985 lookup:443 socket:3 response:534 end:5

For using HTTPS instead of HTTP (default), just pass the --secure parameter to latenz:

$ > latenz sbstjn.com --raw --secure
985 lookup:443 socket:3 response:534 end:5

JavaScript Usage

If you need the result as a JSON inside JavaScript:

const Latenz = require('latenz');
const l = new Latenz();

l.measure('sbstjn.com').then(result => {
  console.log(result);

  /*
    [
      { key: 'resolve', time: 139 },
      { key: 'socket', time: 2 },
      { key: 'response', time: 286 },
      { key: 'firstdata', time: 1 },
      { key: 'end', time: 2 }
    ]
  */
}).catch((e) => {
  throw e;
});

You can pass an options object to measure in order to enable a secure connection, change the used port or set the result mode:

l.measure('sbstjn.com',
  {
    secure: true,
    port: 8443,
    mode: 'pretty'
  }
);

ToDo

  • Error handling
  • Support redirects
  • Check numbers