Skip to content
An Aurelia plugin that adds Microsoft Application Insights page and click tracking to your application.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
dist
src
.editorconfig
.eslintrc
.gitignore
.npmignore
LICENSE
README.md
config.js
gulpfile.js
package.json
yarn.lock

README.md

Aurelia-Application-Insights

An Aurelia plugin that adds Microsoft Application Insights page and event tracking to your application with just a small amount of configuration. Set it up once and forget about it.

If you need a similar plugin for Google Analytics, check out aurelia-google-analytics.

Getting Started

  • Install aurelia-application-insights
yarn add aurelia-application-insights

# or ...
npm install aurelia-application-insights --save

# or ...
jspm install aurelia-application-insights
  • Use the plugin in your app's main.js:
export function configure(aurelia) {
    aurelia.use.plugin('aurelia-application-insights', config => {
			config.init('<Your Tracker ID>');
			config.attach({
				logging: {
					enabled: true // Set to `true` to have some log messages appear in the browser console.
				},
				logForwarding: {
					enabled: true // Set to `true` to have logged messages and exceptions sent to app inights.
				},
				pageTracking: {
					enabled: true // Set to `false` to disable in non-production environments.
				},
				clickTracking: {
					enabled: true // Set to `false` to disable in non-production environments.
				}
			});
		});

    aurelia.start().then(a => a.setRoot());
}

In order to use the click tracking feature, each HTML element you want to track must contain at least one data-appinsights-* attribute. For example, you may want to categorize the clicks so you would add data-appinsights-category="category 1". You can add as many of these attributes as you want. When the click event is catpured, all of the data-appinsights-* attributes are parsed into a dimension dictionary that is sent to Application Insights. Assuming you have two attributes named data-appinsights-category="category 1" and data-appinsights-label="button", the object sent to Application Insights will look like this:

{
	'category': 'category 1',
	'label': 'button'
}

Building from source

Install dependencies

npm install

Then

gulp build

The result is 3 module formats separated by folder in dist/.

Pull Requests

Yes, please!

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.