Recommend this page to a friend!
  Classes of Arturs Sosins   Countly SDK for Node.js   Download  
Role: Example script
Content type: text/markdown
Description: Example script
Class: Countly SDK for Node.js
Report events to be tracked with by API
Author: By
Last change: [SDK-686] idtype and request t (#39)

* tests, id type and request t added

* changelog entry

* linting

* more linting

* some timing issue fix

* update

* wording changes

* changelog and split up the init id assign functions

* some comments

* ID type ifs

* tests, comments and linting

* timing for tests
Date: 1 year ago
Size: 3,340 bytes


Class file image Download


  • !! Major breaking change !! Device ID provided during the init will be ignored if a device ID was provided previously
  • Added a new init time flag which erases the previously stored device ID. This allows to set new device ID during init
  • Added a call to get the device ID type of the user
  • Added a call to get the device ID of the user
  • Now it appends the device ID type with each request


  • !! Major breaking change !! Changing device ID without merging will now clear the current consent. Consent has to be given again after performing this action.
  • ! Minor breaking change ! Multiple values now have a default limit adjustable at initialization: - Maximum size of all string keys is now 128 characters by default. - Maximum size of all values in key-value pairs is now 256 characters by default. - Maximum amount of segmentation in one event is mow 30 key-value pairs by default. - Maximum amount of breadcrumbs that can be recorded at once is now 100 by default. - Maximum stack trace lines per thread is now 30 by default. - Maximum stack trace line length is now 200 by default.
  • ! Minor breaking change ! After initialization, the logging/debugging mode can only be changed with `Countly.setLoggingEnabled` instead of `Countly.debug` now.
  • When recording internal events with 'add_event', the respective feature consent will now be checked instead of just the 'events' consent.
  • Fixed a bug where the SDK throws a `Bulk user storage exception` due to a missing folder
  • Increased the default max event batch size to 100.
  • Logs are now color coded and indicate log levels.


  • Add javascript flag to reported errors
  • Added explicit remote-config consent
  • Async writes with queue and lock
  • Fixed bulk example
  • Stricter Eslint rules


  • Add basic performance trace reporting option
  • Add method to report feedback directly without dialog (for custom UI)
  • Allow providing custom segments for view tracking


  • Allow overriding http options for each separate request to use proxy and other options


  • Add remote config support
  • Handle http request fail correctly
  • Report unhandled rejections too


  • Add crash log breadcrumb limit
  • Allow unsetting custom property
  • Empty event queue (into request queue) on device_id change (if user is not merged on server)
  • Fixed consent check in Bulk Users
  • Fixed consent check in Countly
  • Fixed log for timed events
  • Fixed logging in Bulk Users


  • Add GDPR compliant consent management
  • Allow providing path to storing internal data as initial configuration option
  • Generate docs for CountlyBulk api
  • Git ignore internally stored files


  • Added bulk request processor for server to server data flow
  • Synchronized persistent storage in some cases


  • Do not override provided metrics
  • Improved comments and docs


  • Some minor changes


  • Added new configuration options, as session_update and max_events, force_post
  • Automatic switch to POST if amount of data can't be handled by GET
  • Correctly handle ending session on device_id change without merge
  • Additional checks preventing possible crashes
  • Use unique millisecond timestamp for reporting


  • First official release compatible with Countly Server 16.06 functionalities