You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.1 KiB
3.1 KiB
Documentation
- Installation
- Record events to the API individually or in batches
- Extend events to build intricate, useful data models and ease instrumentation
- Defer events to be recorded at a given interval, or when the queue reaches a given capacity
Examples
- React Flux Logger: How to instrument a Flux ReduceStore
- React Redux Middleware: How to instrument a Redux Store
Utilities
- Cookies (browser-only) for persisting data from one page to the next
- Listeners (browser-only) for capturing and taking action during common DOM events like click, scroll, and submit
- Timers for tracking time before and between user or system interactions
Helpers
- Datetime index for decomposing a date object into a set of properties like "hour_of_day" or "day_of_month"
- Unique ID for generating UUIDs
- DOM node path for returning the xPath for a given DOM element
- Screen profile for generating a set of properties describing the current device screen, like "height", "availHeight", and "orientation"
- Window profile for generating a set of properties describing the current window, like "height", "scrollHeight", and "ratio" to screen dimensions
- Browser profile for generating a set of properties describing the current browser, like "useragent", "online" status, and "language", plus screen and window profiles
Debugging
Dev console errors and messages are turned off by default, but can be activated by setting Keen.debug = true;
. Additionally, you can disable writing events to the API by setting Keen.enabled = false;
.
import Keen from 'keen-tracking';
// Track errors and messages in the dev console
Keen.debug = true;
// Disable event writes to the API
Keen.enabled = false;
const client = new Keen({ /*configure*/ });
// Observe what's happening in each method
client.on('recordEvent', Keen.log);
client.on('recordEvents', Keen.log);
client.on('deferEvent', Keen.log);
client.on('deferEvents', Keen.log);
client.on('recordDeferredEvents', Keen.log);
client.on('extendEvent', Keen.log);
client.on('extendEvents', Keen.log);
Contributing
This is an open source project and we love involvement from the community! Hit us up with pull requests and issues.
Learn more about contributing to this project.
Support
Need a hand with something? Shoot us an email at team@keen.io. We're always happy to help, or just hear what you're building! Here are a few other resources worth checking out: