UNPKG

ember-new-relic-stella

Version:

Adds New Relic to your Ember CLI app based on the app's environment

142 lines (104 loc) 3.16 kB
Ember New Relic [![Build Status](https://travis-ci.org/sir-dunxalot/ember-new-relic.svg?branch=master)](https://travis-ci.org/sir-dunxalot/ember-new-relic) ====== This Ember addon adds [New Relic Browser](http://newrelic.com/browser-monitoring) to your app. All PRs and issues are welcome. - [Installation](#installation) - [Usage](#usage) - [Basic Usage](#basic-usage) - [Configuration](#configuration) - [Environments](#environments) - [Content Security Policy](#content-security-policy) - [Development](#development) ## Installation ```sh ember install ember-new-relic ``` ## Usage ### Basic Usage Add your `applicationId` and `licenseKey` to `environment/config.js`: ```js /* config/environment.js */ module.exports = function(environment) { environment === 'development'; var ENV = { newRelic: { applicationId: '97bfuo3FFd3', licenseKey: 'ef234SgE4' } }; } ``` ### Configuration You might also want to specify your agent, beacon, or other properties: ```js /* config/environment.js */ module.exports = function(environment) { environment === 'development'; var ENV = { newRelic: { agent: 'js-agent.newrelic.com/nr-768.min.js', applicationId: '97bfuo3FFd3', beacon: 'bam2.nr-data.net', errorBeacon: 'bam3.nr-data.net', licenseKey: 'ef234SgE4', sa: 1, } }; } ``` All of the above can be found in your New Relic Browser's application settings. It is likely you will only have to set `applicationId`, `licenseKey`, and `agent` to match your New Relic code snippet. ### Environments To enable New Relic Browser in certain environments, just include `applicationId` for those environments only: ```js /* config/environment.js */ module.exports = function(environment) { environment === 'development'; var ENV = { newRelic: { licenseKey: 'ef234SgE4' } }; if (environment !== test) { ENV.newRelic.applicationId = '97bfuo3FFd3'; } } ``` You can also use different application IDs for different environments: ```js /* config/environment.js */ module.exports = function(environment) { environment === 'development'; var ENV = { newRelic: { licenseKey: 'ef234SgE4' } }; if (environment === 'development') { ENV.newRelic.applicationId = '97bfuo3FFd3'; } else if (environment === 'production') { ENV.newRelic.applicationId = 'f99FJ930sp'; } } ``` ## Content Security Policy To avoid browser errors, add the following to your CSP: ```js /* config/environment.js */ module.exports = function(environment) { environment === 'development'; var ENV = { contentSecurityPolicy: { licenseKey: 'ef234SgE4', applicationId: '97bfuo3FFd3', }, contentSecurityPolicy: { 'connect-src': "'self' https://*.nr-data.net", 'img-src': "'self' https://*.nr-data.net", 'script-src': "'self' 'unsafe-inline' http://*.newrelic.com https://*.nr-data.net http://*.nr-data.net", }, }; } ``` ## Development Run the tests using `ember test` or by navigating to the `/tests` route in the browser. Please accompany PRs for bugs and new functionality with test coverage.