内部で使用していたApplication Insights向けのライブラリーを2021年に一般公開しましたが、今回、そのライブラリーを更新したので、その紹介をしたいと思います。
今回の2.2.0のリリースでは、主にLinuxアプリ向けの改善です。
nsTelemetry 2.2.0リリース
前回のバージョンから現在までの機能拡張を反映した、nsTelemetry 2.2.0をnutgetでリリースしました。nugetでは、ここから取得できます。
今回のリリースも、プレリリース版ではなく、正式版です。(バージョンにalphaをつけていません)。
前回同様、nsTelemetry
のドキュメントは以下のリンクとなります。
- 英語版 Readme.MD (github.com)
- 日本語版 Readme.MD (このサイト内)
- 日本語版 nsTelemetry トップページ (このサイト内)
nsTelemetry 2.2.0の新機能・変更点
このバージョンでは機能の改善と追加をしました。
大きな変更
- なし
新機能
- nugetパッケージをITelemetryインターフェース定義とApplicationInsightsの実装の二つのパッケージに分割
バグ修正
- なし
大きな変更
2.2.0では、既存のアプリの実装に影響があるような大きな変更はありません。
新機能
nugetパッケージをITelemetryインターフェース定義とApplicationInsightsの実装の二つのパッケージに分割
2.1.1までは、ITelemetryインターフェースの定義の実装とApplicationInsightsに関する実装が一つのnugetパッケージ(NishySoftware.Telemetry.ApplicationInsights
)で実現されていました。
2.2.0では、ITelemetryインターフェースの定義の実装とApplicationInsightsに関する実装を別のnugetパッケージで実現します。
二つのパッケージは
NishySoftware.Telemetry
nsTelemetry コアライブラリ。ITelemetryインターフェースの定義NishySoftware.Telemetry.ApplicationInsights
nsTelemetry ApplicationInsights ライブラリ。ApplicationInsightsに関する実装
です。
NishySoftware.Telemetry
NishySoftware.Telemetry
パッケージは、ITelemetryインターフェースの定義に関する実装のみが含まれます。このパッケージは、他のパッケージを参照していません。テレメトリーの発行をするが、インターフェースのインスタンスを作成しないモジュール(インスタンスは他のモジュールから提供してもらうモジュール)で利用できます。
このパッケージで定義しているインターフェース等の名前空間は、NishySoftware.Telemetry
となります。
NishySoftware.Telemetry.ApplicationInsights
NishySoftware.Telemetry.ApplicationInsights
パッケージは、ApplicationInsightsに関するすべての実装と設定ファイルのひな型を含むパッケージです。ITelemetryインターフェースを利用、および、インスタンスの作成するモジュールで利用できます。
NishySoftware.Telemetry.ApplicationInsights
パッケージは、NishySoftware.Telemetry
パッケージを参照しているので、NishySoftware.Telemetry.ApplicationInsights
の 2.1.1 までを利用していたアプリは、パッケージのバージョンを上げても実装変更は必要ありません。
このパッケージで定義している公開メソッド等の名前空間は、NishySoftware.Telemetry.ApplicationInsights
となります。
パッケージの分割の効果
複数のモジュールで構成されているアプリの場合に、パッケージの分割の効果があります。複数のモジュールで構成されているアプリにおいては、ITelemetryインターフェースを使ってテレメトリーを発行するモジュールは複数になります。しかし、ITelemetryインターフェースのインスタンスを作成する、または、設定ファイルのひな型が必要なモジュールは数が限られます。
前者のモジュールでは、NishySoftware.Telemetry
を参照するだけでよく、余分なモジュールが参照されることはありません。
後者のモジュールでは、今まで通り、フルセットのNishySoftware.Telemetry.ApplicationInsights
を参照すれば、必要なモジュールと設定ファイルのひな型が利用できます。
バグ修正
今回のバージョンでは、バグが登録されていないため、バグ修正はありません。
以上、nsTelemetry 2.2.0のリリースの紹介でした。