2016-08-08 12 views
0

私は自分のApplication Insightにカスタムイベントを送信したいコンソールアプリケーションを持っています。 Application Insight NLogターゲット(https://www.nuget.org/packages/Microsoft.ApplicationInsights.NLogTarget/)を使用したいが、動作していない。私は、.configファイルを経由して、それを設定しようとそれを手動で設定しようとしました:アプリケーションの洞察NLogターゲット

var config = new LoggingConfiguration(); 
    ConfigurationItemFactory.Default.Targets.RegisterDefinition("ai", typeof(ApplicationInsightsTarget)); 
    ApplicationInsightsTarget aiTarget = new ApplicationInsightsTarget(); 
    aiTarget.InstrumentationKey = "my_key"; 
    aiTarget.Name = "aiTarget"; 
    LoggingRule rule = new LoggingRule("*", LogLevel.Info, aiTarget); 
    config.AddTarget("aiTarget", aiTarget); 
    config.LoggingRules.Add(rule); 
    LogManager.Configuration = config; 

が、まだ何も、私はアプリケーションの洞察力で私の例外やイベントを見ることができません。何か案は?その後

var config = new LoggingConfiguration(); 

ApplicationInsightsTarget target = new ApplicationInsightsTarget(); 
// You need this only if you did not define InstrumentationKey in ApplicationInsights.config or want to use different instrumentation key 
target.InstrumentationKey = "Your_Resource_Key"; 

LoggingRule rule = new LoggingRule("*", LogLevel.Trace, target); 
config.LoggingRules.Add(rule); 

LogManager.Configuration = config; 

Logger logger = LogManager.GetLogger("Example"); 

logger.Trace("trace log message"); 

何がdc.servicesに箱の外に送られる場合、私はバイオリンでダブルチェックをしたい:

答えて

0

は、私はあなたが(あなたが実装するものにかなり近いです)のドキュメントhereを追ったと仮定します。 visualstudio.comと何がレスポンスコードです。それは、問題が実際に輸送ではあるが収集ではない場合、問題についての手がかりを与えるかもしれません。問題は、コレクション内にある場合

が、あなたは次のようになりAIのトレースを収集するためにPerfView and other Diagnostics tools.

PerfViewのコマンドを使用してローカルでのトラブルシューティングを行うことができます。私のコンソールアプリケーションのために

PerfView.exe /onlyProviders=*Microsoft-ApplicationInsights-Extensibility-Web,*Microsoft-ApplicationInsights-Web,*Microsoft-ApplicationInsights-Core,*Microsoft-ApplicationInsights-Extensibility-DependencyCollector,*Microsoft-ApplicationInsights-Extensibility-Rtia-SharedCore,*Microsoft-ApplicationInsights-Extensibility-WindowsServer,*Microsoft-ApplicationInsights-WindowsServer-TelemetryChannel collect 
0

、私が読んだ「INSTRUMENTATIONKEY」実行時にApp.configから取得します。

最初に、App.configのキーとして「APPINSIGHTS_INSTRUMENTATIONKEY」をキーとして追加しました。

次に、この機能をメイン機能で読み取り、以下の行を追加して設定します。

var key = ConfigurationManager.AppSettings["APPINSIGHTS_INSTRUMENTATIONKEY"]; 
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Active.InstrumentationKey = key; 

次に、Main関数または終了関数で、Application Insightsにデータを送信するための時間を与えるthread.sleepを追加します。

System.Threading.Thread.Sleep(70000); 
関連する問題