使用Application Insight进行日志记录时,我收到以下跟踪消息:“在此期间发送了太多数据,并且由于调试器的响应性而将其删除。”
我真的很想查看所有数据(总共22个日志条目,其中显示大约8个,其余的被删除)
关于如何配置它的任何想法?
答案 0 :(得分:2)
您需要禁用sampling才能使用Application Insights记录所有日志。
例如,如果您使用的是ASP.NET Core,则可以按照文档中的以下片段配置采样。
public void ConfigureServices(IServiceCollection services)
{
// ...
var aiOptions = new Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions();
aiOptions.EnableAdaptiveSampling = false;
services.AddApplicationInsightsTelemetry(aiOptions);
//...
}
请记住,App Insights的最长保留期为90天。
如果在Visual Studio中遇到“在此期间发送了太多数据,并且由于调试器响应而将其删除”消息,请查看this thread。简而言之,它表示您可以(一定程度上)配置Visual Studio在开始过滤消息之前显示更多数据。但是,使用这些设置不是一个好主意,并且如果您要检查大量日志(大型条目和/或许多条目),则应通过Application Insights用户Web界面执行此操作,只要将采样配置为关闭),所有日志条目都将保留。
在下面引用:
“太多数据”消息仅在VS中出现(它不会影响 数据由sdks 发送),并在我们看到调试器时触发 对于我们来说,输出太大而无法“舒适地”进行处理 减慢调试器的速度。
基本上,调试器会批处理输出窗口消息,然后 处理它们。如果我们看到很大的,我们就做简单的包含 检查而不是正则表达式检查。如果那块 文本包含我们必须解析的所有ai消息,并且 很大(默认为20k个字符),我们跳过了处理( 查找巨型块中的每个事件,解析每个事件,等等)并 而是显示该消息;为了节省调试时间,我们只需要跳过 整个批次,并添加注释,其中存在 遥测(您可以看到 它在输出窗口中,它将由sdk发送),但是 调试器工具不会浪费时间解析所有内容。
有一种方法可以更改我们用作阈值的值 调试器,但最终会使您的VS体验变慢 我们将花费更多的时间来解析输出窗口中的事件。如果 您已经确定它是什么(一个巨大的EF查询),我不确定您是否 想要更改设置以使我们对其进行解析以显示给您。
答案 1 :(得分:1)
您可以增加默认限制20000个字符:
Table.TransformColumns(Source,{{"Col", each DateTime.FromText(_&":00"), type datetime}})