https://github.com/dagonmetric/ng-log-applicationinsights
Microsoft Azure Application Insights integration of @DagonMetric / ng-log for Angular applications.
https://github.com/dagonmetric/ng-log-applicationinsights
analytics angular angular-analytics angular-application-insights angular-log angular-logging angular-logging-service angular-telemetry-client application-insights applicationinsights-js-demo log logging microsoft-applicationinsights-web telemetry telemetry-client typescript
Last synced: 2 days ago
JSON representation
Microsoft Azure Application Insights integration of @DagonMetric / ng-log for Angular applications.
- Host: GitHub
- URL: https://github.com/dagonmetric/ng-log-applicationinsights
- Owner: DagonMetric
- License: mit
- Created: 2019-06-29T18:11:25.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-08-14T19:57:10.000Z (11 months ago)
- Last Synced: 2025-06-01T20:52:55.860Z (24 days ago)
- Topics: analytics, angular, angular-analytics, angular-application-insights, angular-log, angular-logging, angular-logging-service, angular-telemetry-client, application-insights, applicationinsights-js-demo, log, logging, microsoft-applicationinsights-web, telemetry, telemetry-client, typescript
- Language: TypeScript
- Homepage:
- Size: 4.16 MB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Angular Application Insights Integration for NG-LOG
[](https://github.com/DagonMetric/ng-log-applicationinsights/actions)
[](https://dev.azure.com/DagonMetric/ng-log/_build?definitionId=22)
[](https://codecov.io/gh/DagonMetric/ng-log-applicationinsights)
[](https://www.npmjs.com/package/@dagonmetric/ng-log-applicationinsights)
[](https://gitter.im/DagonMetric/general?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)Microsoft Azure Application Insights integration of [DagonMetric/ng-log](https://github.com/DagonMetric/ng-log) for Angular applications.
## Getting Started
### Installation
npm
```bash
npm install @dagonmetric/ng-log @dagonmetric/ng-log-applicationinsights
```or yarn
```bash
yarn add @dagonmetric/ng-log @dagonmetric/ng-log-applicationinsights
```### Module Setup (app.module.ts)
```typescript
import { LogModule } from '@dagonmetric/ng-log';
import { ApplicationInsightsLoggerModule } from '@dagonmetric/ng-log-applicationinsights';@NgModule({
imports: [
// Other module imports// ng-log modules
LogModule,
ApplicationInsightsLoggerModule.configure({
config: {
instrumentationKey: 'YOUR_INSTRUMENTATION_KEY_GOES_HERE'
/* ...Other Configuration Options... */
}
})
]
})
export class AppModule { }
```Live edit [app.module.ts in stackblitz](https://stackblitz.com/github/dagonmetric/ng-log-applicationinsights/tree/master/samples/demo-app?file=src%2Fapp%2Fapp.module.ts)
### Usage (app.component.ts)
```typescript
import { Component, OnInit } from '@angular/core';import { LogService } from '@dagonmetric/ng-log';
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
export class AppComponent implements OnInit {
constructor(private readonly logService: LogService) { }ngOnInit(): void {
// Track traces
this.logService.trace('Testing trace');
this.logService.debug('Testing debug');
this.logService.info('Testing info');
this.logService.warn('Testing warn');// Track exceptions
this.logService.error(new Error('Testing error'));
this.logService.fatal(new Error('Testing critical'));// Track page view
this.logService.trackPageView({
name: 'My Angular App',
uri: '/home'
});// Track page view with timing
this.logService.startTrackPage('about');
this.logService.stopTrackPage('about', { uri: '/about' });// Track custom event
this.logService.trackEvent({
name: 'video_auto_play_start',
properties: {
non_interaction: true
}
});// Track custom event with metrics
this.logService.trackEvent({
name: 'foo',
measurements: {
non_interaction: 1
},
properties: {
age: 12
}
});// Track custom event with timing
this.logService.startTrackEvent('video_auto_play');
this.logService.stopTrackEvent('video_auto_play', {
properties: {
non_interaction: true
}
});// Set user properties
this.logService.setUserProperties('', '');// Clear user properties
this.logService.clearUserProperties();
}
}
```Live edit [app.component.ts in stackblitz](https://stackblitz.com/github/dagonmetric/ng-log-applicationinsights/tree/master/samples/demo-app?file=src%2Fapp%2Fapp.component.ts)
## Samples
* Demo app [view source](https://github.com/DagonMetric/ng-log-applicationinsights/tree/master/samples/demo-app) / [live edit in stackblitz](https://stackblitz.com/github/dagonmetric/ng-log-applicationinsights/tree/master/samples/demo-app)
## Related Projects
* [ng-log](https://github.com/DagonMetric/ng-log) - Vendor-agnostic logging, analytics and telemetry service abstractions and some implementations for Angular applications
* [ng-log-gtag](https://github.com/DagonMetric/ng-log-gtag) - Angular Google Analytics (gtag.js) logger implementation for `ng-log`
* [ng-log-firebase-analytics](https://github.com/DagonMetric/ng-log-firebase-analytics) - Firebase Analytics implementation for `ng-log`
* [ng-log-facebook-analytics](https://github.com/DagonMetric/ng-log-facebook-analytics) - Facebook Pixel Analytics implementation for `ng-log`## Feedback and Contributing
Check out the [Contributing](https://github.com/DagonMetric/ng-log-applicationinsights/blob/master/CONTRIBUTING.md) page.
## License
This repository is licensed with the [MIT](https://github.com/DagonMetric/ng-log-applicationinsights/blob/master/LICENSE) license.