OpenTelemetry、Docker、K8sを実践で学ぶ

.NETアプリケーションのデプロイ

10 minutes

前提条件

アプリケーションをデプロイする前に、インスタンスに.NET 8 SDKをインストールする必要があります。

bash
sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0

詳細については、Ubuntu に.NET SDK または.NET Runtime をインストールする を参照してください。

.NET アプリケーションの確認

ターミナルで、アプリケーションディレクトリに移動します

bash
cd ~/workshop/docker-k8s-otel/helloworld

このワークショップでは、シンプルな「Hello World」.NETアプリケーションを使用します。主要なロジックは HelloWorldController.csファイルにあります

cs
public class HelloWorldController : ControllerBase
{
    private ILogger<HelloWorldController> logger;

    public HelloWorldController(ILogger<HelloWorldController> logger)
    {
        this.logger = logger;
    }

    [HttpGet("/hello/{name?}")]
    public string Hello(string name)
    {
        if (string.IsNullOrEmpty(name))
        {
           logger.LogInformation("/hello endpoint invoked anonymously");
           return "Hello, World!";
        }
        else
        {
            logger.LogInformation("/hello endpoint invoked by {name}", name);
            return String.Format("Hello, {0}!", name);
        }
    }
}

.NET アプリケーションのビルドと実行

以下のコマンドを使用してアプリケーションをビルドできます

bash
dotnet build

ビルドが成功したら、次のように実行できます

bash
dotnet run

実行したら、UbuntuインスタンスへのSSH接続を2つ目のターミナルで開き、curlを使用してアプリケーションにアクセスします

bash
curl http://localhost:8080/hello

名前を渡すこともできます

bash
curl http://localhost:8080/hello/Tom

次のステップに進む前に、Ctrl + C を押して Helloworld アプリを終了してください。

次のステップ

アプリケーションをOpenTelemetryで計装するために使用できる3つの方法は何でしょうか?

Traces

オプションの詳細については、Splunk Observability Cloud 用の.NET アプリケーションの計装 を参照してください。

Last Modified ·