telemetry-next-node module loads
https://telemetry.mozilla.org/v2/telemetry.js and make the functions available in node.js, so that telemetry dashboard aggregates can be analyzed server-side.
https://telemetry.mozilla.org/v2/telemetry.js via HTTPS. If security is very important, run this inside an isolated environment such as a Docker container.
For long-running applications, it is recommended that the module be re-initialized every so often in order to obtain new data and account for any aggregate API changes. This can be done by calling
Telemetry.init() again - see below for details.
A simple usage example:
var Telemetry = ;// Initialize libraryTelemetry;
Note that until
Telemetry.init(callback) executes, this module will not have other methods than
Telemetry.init. In the browser, these methods will be available, but they will throw an exception if
Telemetry.init has not completed yet. This is a minor difference, but it may show up if testing for the existance of specific methods in the library.
telemetry.js in the browser, you can reload version information by calling
Telemetry.init() again. This also causes the code to be reloaded from
https://telemetry.mozilla.org/v2/telemetry.js. Reloading is necessary in order to get updated information, such as aggregates published after the module has been loaded.
Reloading is necessary for long-running applications to obtain fresh data. An application that does not reload may behave erratically if changes are made to the backend.
telemetry-next-node library is released on the MPL license - see
LICENSE for details.