JavaScript控制台对象提供了多种将消息输出到浏览器控制台的方法:
console.log
console.error
console.warn
console.info
console.trace
默认情况下,Application Insights 不会将控制台消息作为遥测发送到 Azure 门户(将遥测发送到 Azure 门户),所以我的问题是:在 Application Insights 中将控制台消息作为遥测捕获的方法是什么?
谢谢
JavaScript控制台对象提供了多种将消息输出到浏览器控制台的方法:
console.log
console.error
console.warn
console.info
console.trace
默认情况下,Application Insights 不会将控制台消息作为遥测发送到 Azure 门户(将遥测发送到 Azure 门户),所以我的问题是:在 Application Insights 中将控制台消息作为遥测捕获的方法是什么?
谢谢
做到这一点的最佳方法可能是覆盖控制台功能本身。有一个描述如何执行此操作的现有答案:Override console.log(); 用于生产
请记住,对于 App Insights 的自定义实施,您通常需要使用npm 安装而不是 App Insights 代码段来设置 App Insights。
结果可能如下所示:
// define a new console
var console=(function(oldCons){
return {
log: function(text){
oldCons.log(text);
telemetry.TrackTrace(text, SeverityLevel.Warning);
},
//override other console methods
};
}(window.console));
//Then redefine the old console
window.console = console;