libhoney-promise
A wrapper for libhoney-js that provides support for sending events with a promises api
Installation
libhoney-promise
specifies libhoney
as a peer dependency, so you must also have libhoney
installed in your project.
You can install both using npm
:
npm install libhoney libhoney-promise --save
Using yarn:
yarn add libhoney libhoney-promise
Usage
const createHoneyClient = ; const honeyClient = ; honeyClient ;
createHoneyClient
takes the same options as the libhoney constructor, and returns a object with a single method for sending event data named sendEventNow
.
sendEventNow
Accepts a single data
argument that is passed to a Libhoney event object.
If the data
object has a timestamp
, @timestamp
, or Timestamp
key, it will override the event timestamp.
Will return a Promise
that is resolved when the event is successfully transmitted to the service. The promise is also resolved if the event was dropped because of sampling. The promise will be rejected if it was unable to be transmitted to the service, either by being throttled by the Libhoney
client or by an unsuccessful response from the service.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate
Running tests
The tests do not mock out honeycomb.io
so you will need to provide your writeKey
and dataset
to the tests through environment variables. Create a .env
file in the root of the project like so:
HONEYCOMBIO_WRITE_KEY=<YOUR WRITE KEY>
HONEYCOMBIO_DATASET=libhoney-js-promise-test
Then you can run the tests using npm
:
npm test