6

我在博客https://azure.microsoft.com/en-us/documentation/articles/app-insights-windows-desktop/之后创建了一个带有 AI 的基本控制台应用程序,但是在我的 Azure 帐户的 AI 中没有捕获任何指标. 也没有报告任何错误/异常。我在这里错过什么了吗?下面是代码。有一些文档说 HockeyApp 是捕获通过应用商店提供的 Windows 应用程序指标的新方法,但是对于控制台或 Windows 服务没有足够的信息。你能分享你的经验吗?

using System;
using Microsoft.ApplicationInsights;
namespace Logger
{
   class Program
   {
        static void Main(string[] args)
        {
            TelemetryClient tc = new TelemetryClient();
            tc.Context.User.Id = Environment.UserName;
            tc.Context.Session.Id = Guid.NewGuid().ToString();
            tc.Context.Device.OperatingSystem = Environment.OSVersion.ToString();
            tc.TrackPageView("Form1");
            tc.Flush();
            System.Threading.Thread.Sleep(1000);
        }
   }
}

ApplicationInsights.config

<applicationinsights xmlns="http://schemas.microsoft.com/A...">
 <instrumentationkey>
     mykey
 </instrumentationkey>
 <telemetrychannel type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel, Microsoft.AI.ServerTelemetryChannel"/>
 <telemetryprocessors>
   <add type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
     <maxtelemetryitemspersecond>5</maxtelemetryitemspersecond>
   </add>
 </telemetryprocessors>
 <telemetryinitializers>
    <add type="Microsoft.ApplicationInsights.WindowsServer.AzureRoleEnvironmentTelemetryInitializer, Microsoft.AI.WindowsServer"/>
    <add type="Microsoft.ApplicationInsights.WindowsServer.DomainNameRoleInstanceTelemetryInitializer, Microsoft.AI.WindowsServer"/>
    <add type="Microsoft.ApplicationInsights.WindowsServer.BuildInfoConfigComponentVersionTelemetryInitializer, Microsoft.AI.WindowsServer"/>
  </telemetryinitializers>
  <telemetrymodules>
    <add type="Microsoft.ApplicationInsights.WindowsServer.DeveloperModeWithDebuggerAttachedTelemetryModule, Microsoft.AI.WindowsServer"/>
    <add type="Microsoft.ApplicationInsights.WindowsServer.UnhandledExceptionTelemetryModule, Microsoft.AI.WindowsServer"/>
    <add type="Microsoft.ApplicationInsights.WindowsServer.UnobservedExceptionTelemetryModule, Microsoft.AI.WindowsServer"/>
  </telemetrymodules>
  <severity>Verbose</severity>
</applicationinsights>
4

2 回答 2

0

您需要_ = TelemetryConfiguration.Active;在方法的第一行添加Main

  static void Main(string[] args)
  {
    _ = TelemetryConfiguration.Active;

     var configuration = TelemetryConfiguration.CreateDefault();
     configuration.InstrumentationKey = "{Your Ai Instrumentation Key}";
     var tc = new TelemetryClient(configuration);
     tc.TrackTrace("Test");

     tc.Flush();
  }
于 2019-10-11T12:26:01.717 回答
0

看来问题出在操作系统(Windows 10 Pro)上。将其复制到 Windows Server 2012 服务器后,日志出现在 AI 中。没有任何线索说明它为什么不能在 Windows 10 Pro 中运行。我按照这里的建议使用了 LINQPad,并观察到所有跟踪都正确发送到 AI,但它们仍然没有在 AI 中显示。

于 2016-07-11T19:34:35.063 回答