Skip to content

Latest commit

 

History

History
87 lines (68 loc) · 2.11 KB

File metadata and controls

87 lines (68 loc) · 2.11 KB
title Analytics for Node.js Migration Guide
repo analytics-next
strat node-js

If you're using the classic version of Analytics Node.js (named analytics-node on npm), upgrade to the latest version of Analytics Node.js (named @segment/analytics-node on npm).

  1. Change the named imports.


    Before:

    import Analytics from 'analytics-node'

    After:

    import { Analytics } from '@segment/analytics-node'
  2. Change instantiation to have an object as the first argument.


    Before:

    var analytics = new Analytics('YOUR_WRITE_KEY');

    After:

    const analytics = new Analytics({ writeKey: '<YOUR_WRITE_KEY>' })
  3. Change flushing to graceful shutdown.


    Before:

    await analytics.flush((err, batch) => {
        console.log('Flushed, and now this program can exit!');
    });

    After:

    await analytics.flush({ close: true })

Key differences between the classic and updated version

  • The callback call signature changed.


    Before:

    (err, batch) => void

    After:

    (err, ctx) => void
  • The enable setting (for disabling analytics during tests) changed to disable. enable: false changed to disable: true.

Removals

The updated Analytics Node.js removed these configuration options:

The updated Analytics Node.js library removed undocumented behavior around track properties

Before:

analytics.track({
 ...
 event: 'Ultimate Played',
 myProp: 'abc'
})

After:

analytics.track({
 ...
 event: 'Ultimate Played',
 properties:  {
   myProp: 'abc'
 }
})