診断監視と収集ユーティリティ (dotnet-monitor)

この記事の対象: ✔️ dotnet-monitor バージョン 6.0.0 以降のバージョン

インストール

dotnet-monitor は 2 つの方法でダウンロードできます。

  • dotnet グローバル ツール:

    dotnet-monitordotnet-monitorの最新のリリース バージョンをインストールするには、次のように dotnet tool install コマンドを使用します。

    dotnet tool install --global dotnet-monitor
    
  • Docker イメージ:

    複数コンテナー環境で使用する Docker イメージをダウンロードします。

    docker pull mcr.microsoft.com/dotnet/monitor
    

構文

dotnet-monitor [-h|--help] [--version] <command>

説明

dotnet-monitor グローバル ツールは、運用環境で .NET アプリケーションを監視したり、診断アーティファクト (ダンプ、トレース、ログ、メトリックなど) を必要に応じて収集したり、または自動化されたルールを使って指定した条件下で収集したりするための方法です。

オプション

  • --version

    dotnet-monitor ユーティリティのバージョンを表示します。

  • -h|--help

    コマンド ライン ヘルプを表示します。

コマンド

コマンド
dotnet monitor collect
dotnet monitor config show
dotnet monitor generatekey

dotnet-monitor collect

.NET アプリケーションを監視して診断アーティファクトの収集を可能にし、結果を選択した宛先に送信します。

構文

dotnet-monitor collect [-h|--help] [-u|--urls] [-m|--metrics] [--metricUrls] [--diagnostic-port] [--no-auth] [--temp-apikey] [--no-http-egress]

オプション

  • -h|--help

    コマンド ライン ヘルプを表示します。

  • -u|--urls <urls>

    HTTP API のバインド。 既定値は https://localhost:52323 です。

  • -m|--metrics [true|false]

    /metrics ルートへのメトリックの発行を有効にします。 既定値は true です

  • --metricUrls <urls>

    メトリック HTTP API のバインド。 既定値は http://localhost:52325 です。

  • --diagnostic-port <path>

    ランタイム インスタンスが接続できる診断ポートの完全修飾パスとファイル名。 このオプションを指定すると、dotnet-monitor が "リッスン" モードになります。 指定しない場合、dotnet-monitor は "接続" モードになります。

    Windows では、これは有効な名前付きパイプ名である必要があります。 Linux および macOS では、これは有効な Unix ドメイン ソケットのパスである必要があります。

  • --no-auth

    API キー認証を無効にします。 既定値は false です。

    運用環境ではこのオプションを使わないことを強くお勧めします。

  • --temp-apikey

    dotnet-monitor インスタンスの一時 API キーを生成します。

  • --no-http-egress

    HTTP 応答を介した診断アーティファクトのエグレスを無効にします。 指定した場合、アーティファクトのエグレスはエグレス プロバイダーを使用して行う必要があります。

dotnet-monitor config show

dotnet-monitor collect がこれらのパラメーターを指定して実行されたかのように、構成を表示します。

構文

dotnet-monitor config show [-h|--help] [-u|--urls] [-m|--metrics] [--metricUrls] [--diagnostic-port] [--no-auth] [--temp-apikey] [--no-http-egress] [--level] [--show-sources]

オプション

  • -h|--help

    コマンド ライン ヘルプを表示します。

  • -u|--urls <urls>

    HTTP API のバインド。 既定値は https://localhost:52323 です。

    この値は、urls キーとして構成にマップされます。

  • -m|--metrics [true|false]

    /metrics ルートへのメトリックの発行を有効にします。 既定値は true です。

    この値は、Metrics:Enabled キーとして構成にマップされます。

  • --metricUrls <urls>

    メトリック HTTP API のバインド。 既定値は http://localhost:52325 です。

    この値は、Metrics:Endpoints キーとして構成にマップされます。

  • --diagnostic-port <path>

    ランタイム インスタンスが接続できる診断ポートの完全修飾パスとファイル名。 このオプションを指定すると、dotnet-monitor が "リッスン" モードになります。 指定しない場合、dotnet-monitor は "接続" モードになります。

    Windows では、これは有効な名前付きパイプ名である必要があります。 Linux および macOS では、これは有効な Unix ドメイン ソケットのパスである必要があります。

    この値は、DiagnosticPort:EndpointName キーとして構成にマップされます。

  • --no-auth

    API キー認証を無効にします。 既定値は false です。

    運用環境ではこのオプションを使わないことを強くお勧めします。

    この値は構成にマップされません。

  • --temp-apikey

    dotnet-monitor インスタンスの一時 API キーを生成します。

    この値は、Authentication:MonitorApiKey キーとして構成にマップされます。

  • --no-http-egress

    HTTP 応答を介した診断アーティファクトのエグレスを無効にします。 指定した場合、アーティファクトのエグレスはエグレス プロバイダーを使用して行う必要があります。

    この値は構成にマップされません。

  • --level

    構成レベル。 Full 構成では、機密情報を表示できます。 次の 2 つのレベルがあります。

    • Full - いかなる値も編集しない完全な構成。
    • Redacted - 完全な構成ですが、既知のシークレットなどの機密情報が編集されます。
  • --show-sources

    それぞれの有効な構成値がどの構成ソースから提供されるかを識別します。

dotnet-monitor generatekey

HTTP 認証用の API キーとハッシュを生成します。

構文

dotnet-monitor generatekey [-h|--help] [-o|--output]

オプション

  • -h|--help

    コマンド ライン ヘルプを表示します。

  • -o|--output <Cmd|Json|MachineJson|PowerShell|Shell|Text>

    API キー情報が標準出力に書き込まれる出力形式。

    次の値を使用できます。

    • Cmd - Windows コマンド プロンプトまたはバッチ ファイルで使用できる形式で出力します。
    • Json - JSON オブジェクトの形式で出力します。
    • MachineJson - コメントと説明のない JSON オブジェクトの形式で出力します。 自動シナリオで便利です。
    • PowerShell - PowerShell プロンプトとスクリプトで使用できる形式で出力します。
    • Shell - Bash などの Linux シェルで使用できる形式で出力します。
    • Text - プレーンテキストの形式で出力します。

参照