Performance monitoring for Angular applications. By default Heimdallr tracks useful information and submits data every 10s:
Add Module to your application.
var myApp = angular.module('yourApp',['HeimdallrService']);
Heimdallr needs to hook into http requests in order to provide accurate timings for http requests.
myApp.config(['HeimdallrProvider', function(HeimdallrProvider){
HeimdallrProvider.$get().bindHttp();
}]);
Starting the Heimdallr service requires that you put in a URL as the destination for your performance metrics. Any number of custom attributes can be set on the customProperties
object.
myApp.run(['HeimdallrService', function(HeimdallrService){
HeimdallrService.init({
url: '/monitoring/perf',
customProperties: {
app: appConstant
}
});
HeimdallrService.bindRoutingEvents(); // Binds routing events for ui.router
HeimdallrService.performanceTest(); // Does performance test to establish bandwidth
}]);
Custom events are easily added.
beginningFunction = function(){
HeimdallrService.addEvent('event1');
}
Add a second event.
endFunction = function(){
HeimdallrService.addEvent('event2');
}
Calculate the measurement: (title, start, end, remove after submit). After measurement is calculated data will be submitted immediately.
HeimdallrService.measure("SomeTitle", 'event1', 'event2', true);
Enabling debug will enable console error messages.
myApp.run(['HeimdallrService', function(HeimdallrService){
HeimdallrService.init({
debug: true,
url: '/monitoring/perf',
customProperties: {
app: appConstant
}
});
}]);