读取ApplicationSights使用Insights库跟踪事件



在任何平台上,将跟踪事件写入应用程序洞察力都非常容易。例如,在dotnet核心下的c#中,它是:

Client.InstrumentationKey = InstrumentationKey;
Client.TrackTrace("Test Trace from DotNet Console App.");

但是,读回该数据似乎没有如此简单的API,至少是通过Nuget。

我已经看到了Kusto的文档:

https://learn.microsoft.com/en-gb/azure/kusto/api/netfx/about-kusto-ingest-yest

但是,我最接近阅读跟踪事件的最接近的是阅读API资源管理器的文档,然后将其转换为dotnet core c#:

using (var client = new HttpClient(new HttpClientHandler {}))
{
    client.DefaultRequestHeaders.Add("x-api-key", ApiKey);
    var response = client.GetAsync(InsightsUrl).Result;
    var succ = response.IsSuccessStatusCode;
    var body = response.Content.ReadAsStringAsync().Result;
    var path = $@"{AppDomain.CurrentDomain.BaseDirectory}......Insights.json";
    File.WriteAllText(path, body);
}

无需构建Web客户端即可用于阅读洞察事件(ETC)事件的一种相对简单的方法?

实际上,没有其他简单的方法,例如1或2行方法来读取跟踪(和其他遥测数据)。

截至目前,您使用的Web API是实现这一目标的最佳方法。

最新更新