Operating Angular applications can be complex, because it is relatively hard to observe our applications when they are running. While observing backend applications is straightforward, because we have access to the running environment, the techniques we are used to cannot be applied directly. In this chapter, we saw how to have an Angular application monitor itself by using collection performance metrics, custom metrics, and logs, and applied all of this automatically by using aspect-oriented programming.
While the techniques exposed in this chapter can provide 100% observability of your applications, they have also some drawbacks. Indeed, if your applications are popular, you will be overcharging your backend infrastructure not only to serve your pages and answer your API calls, but to accepts logs and metrics. Another drawback is that ill-intentioned people could feed...