つばろぐ

主に C#, .NET, Azure の備忘録です。たまに日記。

Visual Studio Users Community Japan で .NET Core Generic Host で Azure Application Insights を使う話をしました

id:kkamegawa さんにお呼びいただき、Visual Studio Users Community Japan で .NET Core Generic Host で Azure Application Insights を使う話をしました。

vsuc.connpass.com

Azure Application Insights は別に Web アプリケーションだけのサービスではなく、コンソールアプリケーションにも活用できます。
が、ASP. NET Core のようにお手軽に導入できるわけではないため、普段私がやっている方法を紹介させていただきました。

スライドで紹介したコードは GitHub にて公開しています。参考にしてください。

github.com

発表時からのアップデートとして、ユーザーシークレットを使うように変更しました。
Application Insights のインストゥルメンテーションキーはいわゆる秘匿情報であるため、appsettings.json に記述しないほうがよい情報となります。
そこで .NET Core のコンソールアプリケーションにユーザーシークレットを設定して、コミット範囲ではないところでインストゥルメンテーションキーを管理しましょう。

docs.microsoft.com

コンソールアプリケーションでユーザーシークレットを使うには Microsoft.Extensions.Configuration.UserSecrets の NuGet パッケージが必要なのでプロジェクトにインストールしましょう。

www.nuget.org

また、Visual Studio でユーザーシークレットを扱うにはこちらの拡張機能が便利です。

tech.guitarrapc.com