カスタム .NET Azure サイト拡張機能パッケージの作成

Azure サイトの拡張機能のカスタム パッケージを作成することにより Azure で .NET アプリケーションの詳細な監視を追加することができます。
apmdevops106
Azure サイトの拡張機能のカスタム パッケージを作成することにより Azure で .NET アプリケーションの詳細な監視を追加することができます。
2
2
既存サイトの拡張機能の設定および再パッケージ化によるカスタム サイト拡張機能の作成
CA APM サイト拡張機能のダウンロード、設定、および再パッケージによって .NET エージェント Azure App Services カスタム拡張機能を作成できます。
このトピックには、カスタム エージェント拡張機能をサイト拡張機能にバンドルする .NET エージェント拡張機能を作成する例が含まれています。 Azure は、既存の .NET エージェントのロードに加え、サンプルのサイト拡張機能をロードします。
.NET エージェントで新しいサイト拡張バンドルの複数のインスタンスをインストールできます。
以下の手順に従ってサンプルのサイト拡張を作成します。
  1. Microsoft Azure にログインし、
    [詳細ツール]
    -
    [デバッグ コンソール]
    -
    [PowerShell]
    に移動します。
  2. PowerShell を開き、
    [SiteExtensions]
    を選択します。
  3. 利用可能な拡張機能のリストから
    [Microsoft Azure App Service 用の APM .NET Agent]
    を選択します。
  4. Wily
    フォルダの左側の
    ダウンロード アイコン
    をクリックします。
  5. dotnet-agent-<release>-dotnet-azure-profile-extension.zip ファイルをダウンロードして抽出します。
    このファイルには、カスタム サイト拡張機能を作成するためのバッチ スクリプトが含まれています。
  6. (オプション)パッケージ メタデータを設定します。
    1. <Agent_Home>/repackage ディレクトリに移動します。
    2. APM.NET.Azure.AppServices.Extension.nuspec.txt ファイルをテキスト エディタで開きます。
    3. id
      title
      、および
      authors
      フィールドを例で示すように更新します。
      <?Xml version="1.0" encoding="utf-8" ?>
      <package>
      <metadata>
      <id>Custom.APM..NET.Azure.Extension.#1</id>
      <version>00.00.0.1</version>
      <title>Custom APM .NET Azure Extension #1</title>
      <authors>.NET Team</authors>
  7. 拡張機能のフォルダを作成し、.NET エージェント ファイルを追加します。
    1. <Agent_Home> ディレクトリに移動し、拡張機能のサブディレクトリを作成します。
    2. 拡張機能のディレクトリを開き、拡張機能の名前を付けたサブディレクトリを作成します。
      たとえば、Custom APM .NET Azure Extension #1 です。
    3. <Extension_Name> ディレクトリを開き、ディレクティブのサブディレクトリを作成します。
    4. <Extension_Name>.pbd をディレクティブ ディレクトリに追加します。
      たとえば、Custom_APM_.NET_Azure_Extension_ #1.pbd です。
    5. <Extension_Name> ディレクトリ下に lib サブディレクトリを作成します。
    6. lib サブディレクトリに <Extension_Name>.dll を追加します。
  8. 再パッケージ スクリプトを実行します。
    1. <Agent_Home>/repackage ディレクトリに移動します。
    2. package-extension.bat を実行します。
  9. (オプション)拡張機能を myget.org などのサードパーティ nuget リポジトリにアップロードします。
    この手順では、サンプルのリポジトリとして myget.org を使用します。
    1. myget.org に移動し、アカウントを作成します。
    2. エージェント拡張機能をホストするフィードを作成します。
      たとえば、フィード URL は www.myget.org/F/our_.net_azure_extensions にすることができます。
    3. フィードを開き、
      [Add package]
      をクリックして、
      [NuGet package]
      をクリックします。
    4. [Feed details]
      をクリックします。
    5. [NuGet V3]
      フィールドからの URL をコピーします。
      たとえば、https://www.myget.org/F/our_.net_azure_extensions/api/v3/index.json などです。
  10. Azure でフィードを設定し、エージェント拡張機能をインストールします。
    1. Microsoft Azure にログインし、
      [アプリケーションの設定]
      に移動します。
    2. SCM_SITEEXTENSIONS_FEED_URL
      プロパティを追加します。
    3. URL を
      [NuGet V3]
      フィールドから
      SCM_SITEEXTENSIONS_FEED_URL
      プロパティ値として貼り付けます。
    4. [拡張機能]
      を開き、
      [追加]
      をクリックします。
    5. エージェント拡張機能を選択し、インストールします。
    6. アプリ サービス コンテナを再起動します。
      新しい .Net エージェント サイト拡張機能は、Azure で実行されている .NET アプリケーションの複数の側面を監視します。
エージェント プロファイルを使用して .NET サイト拡張機能を作成します。
Azure アプリケーション設定を使用してカスタム .NET Azure App Services サイト拡張機能を作成する必要はありません。 この場合、.NET エージェント プロファイルを設定することにより、.NET Azure サイト拡張機能を作成できます。 エージェント プロファイル ベースの拡張機能は、すべての .NET エージェント設定ファイルをバンドルし、<Agent_Home> ディレクトリ内のすべてのファイルを上書きします。
以下の手順に従います。
  1. Microsoft Azure にログインし、
    [詳細ツール]
    -
    [デバッグ コンソール]
    -
    [PowerShell]
    に移動します。
  2. PowerShell を開き、
    [SiteExtensions]
    を選択します。
  3. 利用可能な拡張機能のリストから
    [Microsoft Azure App Service 用の APM .NET Agent]
    を選択します。
  4. Wily
    フォルダの左側の
    ダウンロード アイコン
    をクリックします。
  5. dotnet-agent-<release>-dotnet-azure-profile-extension.zip ファイルをダウンロードして抽出します。
    このファイルには、カスタム サイト拡張機能を作成するためのバッチ スクリプトが含まれています。
  6. <Agent_Home> ディレクトリに移動します。
  7. .NET IntroscopeAgent.profile ファイルを開き、適切なプロパティを設定します。
  8. <Agent_Home>/ext ディレクトリに移動します。
  9. ext フォルダに DLL ファイルを追加するかまたはそこから DLL ファイルを削除します。
  10. <.Agent_Home>/repackage ディレクトリに移動し、package-profile.bat ファイル コマンドを実行します。
    nupkg ファイルがターゲット フォルダ内に作成されます。
  11. (オプション)拡張機能を myget.org などのサードパーティ nuget リポジトリにアップロードします。
    この手順では、サンプルのリポジトリとして myget.org を使用します。
    1. myget.org に移動し、アカウントを作成します。
    2. エージェント拡張機能をホストするフィードを作成します。
      たとえば、フィード URL は www.myget.org/F/our_.net_azure_extensions にすることができます。
    3. フィードを開き、
      [Add package]
      をクリックして、
      [NuGet package]
      をクリックします。
    4. [Feed details]
      をクリックします。
    5. [NuGet V3]
      フィールドからの URL をコピーします。
      たとえば、https://www.myget.org/F/our_.net_azure_extensions/api/v3/index.json などです。
  12. Azure でフィードを設定し、エージェント拡張機能をインストールします。
    1. Microsoft Azure にログインし、
      [アプリケーションの設定]
      に移動します。
    2. SCM_SITEEXTENSIONS_FEED_URL
      プロパティを追加します。
    3. URL を
      [NuGet V3]
      フィールドから
      SCM_SITEEXTENSIONS_FEED_URL
      プロパティ値として貼り付けます。
    4. [拡張機能]
      を開き、
      [追加]
      をクリックします。
    5. エージェント拡張機能を選択し、インストールします。
    6. アプリ サービス コンテナを再起動します。
      新しい .Net エージェント サイト拡張機能は、Azure で実行されている .NET アプリケーションの複数の側面を監視します。
.NET エージェントのメトリック
.NET エージェントが Azure インスタンス内のサービス計画の値を検出すると、以下のメトリックをレポートします。
  • Agent Stats | クラウド: サービス計画
  • Agent Stats | クラウド: サービス プロバイダ
.NET エージェントはサービス プロバイダを Azure としてレポートし、.NET エージェントはサービス計画メトリックもレポートします。 サービス計画メトリック値は、Free、Shared、Basic、Standard、または Premium のいずれかの値にすることができます。 これらの値は、Azure 課金層に対応し、Azure ポータルで説明されています。
コア持続性メトリックの値は、メトリック ブラウザにあります。それらは Agent Stats、Sustainability、Compute Unit Metrics、Cores です。 .NET 基本エージェント機能をサポートするために、レポートされるメモリは、システム権限が低い Azure 環境で、コアあたり 2 GB として計算されます。 たとえば、4 つのコアを持つ Azure App Service インスタンスは、8 GB のシステム メモリをレポートします。