すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:SkyWalking を使用した .NET アプリケーションデータのレポート

最終更新日:Mar 12, 2026

SkyWalking .NET Core エージェント (SkyAPM) は、サポートされている .NET フレームワークのイベントトラッキングを自動的に行います。エージェントをインストールして設定すると、分散トレースが OpenTelemetry 向けマネージドサービスコンソールにレポートされます。

このガイドでは、次の 3 つのステップについて説明します。

  1. SkyWalking エンドポイントの取得:ARMS コンソールから取得します。

  2. インストールと設定:.NET プロジェクトに SkyAPM エージェントをインストールして設定します。

  3. 検証:コンソールにトレースデータが表示されることを確認します。

背景情報

SkyWalking は、中国で開発された人気のアプリケーションパフォーマンスモニタリング (APM) サービスです。SkyWalking は、マイクロサービス、クラウドネイティブアーキテクチャ、および Docker、Kubernetes、Mesos などのコンテナベースのアーキテクチャ向けに設計されています。SkyWalking は分散トレーシングシステムでもあります。

前提条件

ARMS コンソールから SkyWalking のエンドポイントと認証トークンを取得します。

  1. OpenTelemetry 向けマネージドサービスコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[クラスター設定] をクリックし、[アクセスポイント情報] タブをクリックします。

  3. 上部のナビゲーションバーで、リージョンを選択します。[クラスター情報] セクションで、[トークンの表示] を有効にします。

  4. [クライアント] セクションで、[SkyWalking] をクリックします。

  5. [関連情報] 列からエンドポイントとトークンをコピーします。

    SkyWalking endpoint information

アプリケーションが Alibaba Cloud の本番環境にデプロイされている場合は、VPC エンドポイントを使用してください。それ以外の場合は、パブリックエンドポイントを使用してください。

エージェントのインストール

.NET プロジェクトのルートディレクトリから、SkyAPM NuGet パッケージをインストールし、必要な環境変数を設定します。

# SkyAPM エージェントパッケージのインストール
dotnet add package SkyAPM.Agent.AspNetCore

# 必要な環境変数の設定
export ASPNETCORE_HOSTINGSTARTUPASSEMBLIES=SkyAPM.Agent.AspNetCore
export SKYWALKING__SERVICENAME=<your-service-name>

<your-service-name> を、ARMS コンソールでアプリケーションを識別するための名前 (例:my-dotnet-app) に置き換えてください。

エージェントの設定

skyapm.json 設定ファイルを作成し、レポート用のエンドポイントを指定します。次のいずれかの方法を選択してください。

方法1:CLI ツールによる生成

SkyAPM CLI ツールをインストールし、設定ファイルを生成します。

# CLI ツールのインストール
dotnet tool install -g SkyAPM.DotNet.CLI

# ツールを PATH に追加 ( /path/to を実際の .dotnet ディレクトリのパスに置き換えてください)
export PATH="$PATH:/path/to/.dotnet/tools/"

# skyapm.json の生成
dotnet skyapm config <your-service-name> <your-endpoint>

方法2:手動での作成

.NET プロジェクトのルートディレクトリに、次の内容で skyapm.json ファイルを作成します。

{
  "SkyWalking": {
    "ServiceName": "<your-service-name>",
    "Namespace": "",
    "HeaderVersions": [
      "sw8"
    ],
    "Sampling": {
      "SamplePer3Secs": -1,
      "Percentage": -1.0,
      "LogSqlParameterValue": false
    },
    "Logging": {
      "Level": "Information",
      "FilePath": "logs/skyapm-{Date}.log"
    },
    "Transport": {
      "Interval": 3000,
      "ProtocolVersion": "v8",
      "QueueSize": 30000,
      "BatchSize": 3000,
      "gRPC": {
        "Servers": "<your-endpoint>",
        "Authentication": "<your-token>",
        "Timeout": 100000,
        "ConnectTimeout": 100000,
        "ReportTimeout": 600000
      }
    }
  }
}

次のプレースホルダーを実際の値に置き換えてください。

プレースホルダー説明
<your-service-name>ARMS コンソールに表示されるアプリケーション名。
<your-endpoint>前提条件」セクションでコピーした SkyWalking エンドポイント。
<your-token>前提条件」セクションでコピーした認証トークン。

設定パラメーター

必須パラメーター

パラメーター説明
ServiceNameARMS コンソールに表示されるアプリケーション名。
gRPC.ServersARMS コンソールから取得した SkyWalking エンドポイント。
gRPC.AuthenticationARMS コンソールから取得した認証トークン。

オプションのパラメーター

パラメーター説明
SamplePer3Secs3 秒ごとに収集されるトレースサンプルの数。
Percentageサンプリングのパーセンテージ。例えば、10 は 10% を意味します。
Logging.Levelエージェント自身のログのログレベル。デバッグに使用されます。
Logging.FilePathエージェントのログファイルのパスとファイル名のパターン。

アプリケーションの起動と検証

  1. .NET アプリケーションを起動 (または再起動) します。

    dotnet run
  2. アプリケーションにいくつかのリクエストを送信して、トレースデータを生成します。

  3. OpenTelemetry 向けマネージドサービスコンソールにログインし、トレースデータが表示されるかどうかを確認します。

エージェントログによるトラブルシューティング

コンソールにトレースデータが表示されない場合は、プロジェクトディレクトリ内の logs/skyapm-<date>.log にあるエージェントのログファイルを確認してください。このファイルには、接続試行、エラー、データレポートのアクティビティが記録されます。

Agent log output

サポートされているフレームワーク

SkyWalking .NET Core エージェントは、以下のフレームワークの自動イベントトラッキングをサポートしています。

ソースからのエージェントのビルド (オプション)

ソースコードから SkyAPM .NET エージェントをビルドするには、次の手順を実行します。

# ソースリポジトリのクローン
git clone https://github.com/SkyAPM/SkyAPM-dotnet.git

# プロジェクトのルートに移動
cd SkyAPM-dotnet/

# 目的のバージョンタグをチェックアウト
git checkout <tag-name>

# サブモジュールの初期化と更新
git submodule init
git submodule update

# 依存関係の復元とビルド
dotnet restore
dotnet build src/SkyApm.Transport.Grpc.Protocol
dotnet build skyapm-dotnet.sln

サンプルコード

完全な動作例については、GitHub の skywalking-demo リポジトリをご参照ください。

よくある質問

dotnet skyapm config コマンドで skyapm.json の生成に失敗します。どうすれば修正できますか?

CLI tool error

次のいずれかのソリューションをお試しください。

  • skyapm.json を手動で作成する (推奨):CLI ツールは設定ファイルを生成するだけです。「方法2:手動での作成」の手順に従ってファイルを作成し、必要なパラメーターを直接設定してください。

  • .NET 6.0 に切り替える:CLI ツールが現在の .NET バージョンと互換性がない可能性があります。.NET 6.0 をインストールして使用し、CLI ツールを実行してください。