Skip to content

A Nuxt 2 Module to add NewRelic APM / Browser monitoring to your project

License

Notifications You must be signed in to change notification settings

jaketig/nuxt-newrelic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nuxt-newrelic

A Nuxt 2 Module to add NewRelic APM / Browser monitoring to your project

Setup

  1. Add nuxt-newrelic dependency to your project
npm install @jaketig/nuxt-newrelic
  1. Add nuxt-newrelic to the modules section of nuxt.config.js
export default {
  modules: [
    '@jaketig/nuxt-newrelic'
  ]
}
  1. Add newrelic.js and newrelic_agent.log to .gitignore
newrelic.js
newrelic_agent.log

Configure

Runtime Config

Runtime config allows the use of environment specific variable at startup. Only Private Runtime Config is supported as license keys should not be exposed publicly

export default {
  modules: [
    '@jaketig/nuxt-newrelic'
  ],
  privateRuntimeConfig: {
    newrelic: {
      apm: {
        enabled: true,
        appName: 'YOUR APP NAME HERE',
        licenseKey: 'YOUR LICENSE KEY HERE',
        // additional agent config can be added here
      },
      browser: {
        enabled: false,
        scriptId: 'newrelic',
        accountId: 'YOUR NEW RELIC ACCOUNT ID HERE',
        agentId: 'YOUR NEW RELIC AGENT ID HERE',
        licenseKey: 'YOUR NEW RELIC LICENSE KEY HERE',
        applicationId: 'YOUR NEW RELIC APPLICATION ID HERE'
      }
    }
  },
}

Nuxt Config

Nuxt config values are hardcoded at build time

export default {
  modules: [
    '@jaketig/nuxt-newrelic'
  ],
  newrelic: {
    apm: {
      enabled: true,
      appName: 'YOUR APP NAME HERE',
      licenseKey: 'YOUR LICENSE KEY HERE',
      // additional agent config can be added here
    },
    browser: {
      enabled: false,
      scriptId: 'newrelic',
      accountId: 'YOUR NEW RELIC ACCOUNT ID HERE',
      agentId: 'YOUR NEW RELIC AGENT ID HERE',
      licenseKey: 'YOUR NEW RELIC LICENSE KEY HERE',
      applicationId: 'YOUR NEW RELIC APPLICATION ID HERE'
    }
  }
}

Options

apm (object)

enabled (boolean)

  • Determines if newrelic APM is enabled or not.
  • Defaults to true if production, false if development
  • excluded from newrelic.js config file
export default {
  newrelic: {
    apm: {
      enabled: true
    }
  }
}

app_name (string) required

export default {
  newrelic: {
    apm: {
      app_name: `YOUR APP NAME HERE`       
    }
  }
}

license_key (string) required

export default {
  newrelic: {
    apm: {
      license_key: `YOUR NEWRELIC LICENSE KEY`
    }
  }
}

Additional Properties

Any additional fields included in the apm object will be included in the generated newrelic.js config file. See New Relic docs for all available options.

For example, logging can be disabled:

export default {
  newrelic: {
    apm: {
      logging: {
        enabled: false
      }
    }
  }
}

browser (object)

  • Configures New Relic browser monitoring by adding a script to the page head at build/startup
  • Requires APM to be enabled
  • Does not support functional nuxt/head

enabled (boolean)

  • Determines if newrelic Browser Monitoring is enabled or not.
  • Defaults to false
export default {
  newrelic: {
    browser: {
      enabled: false
    }
  }
}

scriptId (string)

  • Sets the unique identifier (hid) for the script
  • Defaults to newrelic
  • See Nuxt Head Docs for more details
export default {
  newrelic: {
    browser: {
      scriptId: 'newrelic'
    }
  }
}

accountId (string)

  • New Relic account id
  • populated in browser script
export default {
  newrelic: {
    browser: {
      accountId: 'YOUR NEW RELIC ACCOUNT ID HERE',
    }
  }
}

agentId (string)

  • New Relic agent id
  • populated in browser script
export default {
  newrelic: {
    browser: {
      agentId: 'YOUR NEW RELIC AGENT ID HERE',
    }
  }
}

licenseKey (string)

  • New Relic license key
  • populated in browser script
export default {
  newrelic: {
    browser: {
      licenseKey: 'YOUR NEW RELIC LICENSE KEY HERE',
    }
  }
}

applicationId (string)

  • New Relic application id
  • populated in browser script
export default {
  newrelic: {
    browser: {
      applicationId: 'YOUR NEW RELIC APPLICATION ID HERE'
    }
  }
}

Where do I find the browser settings?

  1. Login to the New Relic portal
  2. Click Add Data
  3. Choose Browser Monitoring
  4. Select Copy/Paste Javascript Code
  5. Complete the Name your App section
  6. Copy the values from the provided script

About

A Nuxt 2 Module to add NewRelic APM / Browser monitoring to your project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published