Linux'ta Azure App Service uygulamaları için .NET Profiler'ı etkinleştirme

.NET için Application Insights Profiler'ı kullanarak canlı ASP.NET Core web uygulamalarınızın her yönteminde ne kadar zaman harcandığı izleyebilirsiniz. Bu makale, Linux'ta barındırılan web uygulamalarına odaklanır. Windows ve Mac geliştirme ortamlarını kullanarak da denemeler yapabilirsiniz.

Bu makalede şunları yapacaksınız:

  • Yerel bilgisayarınızda Linux üzerinde barındırılan bir ASP.NET Core web uygulaması ayarlayın.
  • Azure portalını kullanarak bir App Service oluşturun.
  • Yerel Git kullanarak yerel ASP.NET Core projenizi Azure'a dağıtın.
  • Profiler'ı ASP.NET Core web uygulamasına ekleyin.

Uyarı

SDK destek ilkesi için Application Insights SDK destek kılavuzunu gözden geçirin. Geçiş rehberliği için, Application Insights SDK'larından Azure İzleyici OpenTelemetry'e Geçiş bölümüne bakın.

Dikkat

Yeni uygulamalar için Azure İzleyici OpenTelemetry Distro'yu kullanın. Application Insights SDK'sına benzer bir deneyim ve benzer işlevler sağlar. OpenTelemetry tabanlı bir teklife geçiş yapmak için geçiş kılavuzunu gözden geçirin.

Önkoşullar

Projeyi yerel olarak ayarlama

  1. Bilgisayarınızda bir komut istemi penceresi açın.

  2. ASP.NET Core MVC web uygulaması oluşturma:

    dotnet new mvc -n LinuxProfilerTest
    
  3. Çalışma dizinini projenin kök klasörü olarak değiştirin.

  4. Profil Oluşturucu izlemelerini toplamak için NuGet paketlerini ekleyin:

    dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore --prerelease
    dotnet add package Azure.Monitor.OpenTelemetry.Profiler --prerelease
    

.NET Profiler'ı etkinleştirme

  1. Tercih ettiğiniz kod düzenleyicisinde, .NET için Azure İzleyici OpenTelemetry Profiler'a ait iki paketi Program.cs'e eklediğinizi doğrulayın. Varsa özel Profil Oluşturucu ayarları ekleyin.

    Projenizin .csproj dosyasında aşağıdaki satırları eklediğinizi doğrulayın:

    <ItemGroup>
        <PackageReference Include="Azure.Monitor.OpenTelemetry.AspNetCore" Version="[1.*-*, 2.0.0)" />
        <PackageReference Include="Azure.Monitor.OpenTelemetry.Profiler" Version="[1.*-*, 2.0.0)" />
    </ItemGroup>
    

    Dosyanızda Program.cs aşağıdaki satırları eklediğinizi doğrulayın:

    using Azure.Monitor.OpenTelemetry.AspNetCore;
    using Azure.Monitor.OpenTelemetry.Profiler;
    
    ///
    
    builder.Services.AddOpenTelemetry()
        .UseAzureMonitor()          // Enable Azure Monitor OpenTelemetry distro for ASP.NET Core
        .AddAzureMonitorProfiler(); // Add Azure Monitor Profiler    
    
  2. Değişikliklerinizi kaydedin ve yerel depoya işleyin:

    git init
    git add .
    git commit -m "first commit"
    

Projenizi barındırmak için Linux web uygulaması oluşturma

  1. Azure portalındaUygulama Hizmetleri'ni arayıp seçin ve ardındanWeb Uygulaması> seçin.

  2. Linux üzerinde App Service kullanarak bir web uygulaması ortamı oluşturun.

    Linux web uygulaması oluşturmayı gösteren ekran görüntüsü.

  3. Yeni web uygulaması kaynağınıza gidin. Sol menüde Dağıtım>Dağıtım Merkezi'ni ve ardından FTPS Kimlik Bilgileri'ni seçerek dağıtım kimlik bilgilerini oluşturun. Daha sonra kullanmak üzere kimlik bilgilerinizi not edin.

    Dağıtım kimlik bilgilerini oluşturmayı gösteren ekran görüntüsü.

  4. Kaydet'i seçin.

  5. Ayarlar sekmesini seçin.

  6. Web uygulamasında yerel bir Git deposu ayarlamak için Kaynak'ı ve ardından Yerel Git'i seçin.

    Açılan listede dağıtım seçeneklerini görüntülemeyi gösteren ekran görüntüsü.

  7. Git kopyası URI'sine sahip bir Git deposu oluşturmak için Kaydet'i seçin.

    Yerel Git deposunu ayarlamayı gösteren ekran görüntüsü.

    Daha fazla dağıtım seçeneği için App Service belgelerine bakın.

Projenizi dağıtın

Kodu Azure App Service'e çeşitli yollarla dağıtabilirsiniz. En basit yol, yerel Git kullanarak dağıtmaktır. Daha fazla bilgi için bkz. Yerel Git kullanarak Azure App Service'e dağıtma.

  1. Komut istemi pencerenizde projenizin kök klasörüne göz atın. App Service'te depoya işaret eden bir Git uzak deposu ekleyin:

    git remote add azure https://<username>@<app_name>.scm.azurewebsites.net:443/<app_name>.git
    

    Bu değer için web uygulamanızın Genel Bakış sayfasına gidin. Git kopya URL'sini kopyalayın.

  2. Değişiklikleri Azure'a göndererek projeyi dağıtın:

    git push azure main
    

Web uygulamanızı izlemek için Application Insights ekleme

Bağlantı dizesini otomatik olarak ayarlayan bir App Service oluştururken Application Insights'ı etkinleştirebilirsiniz.

Web uygulamanızı izlemek için Application Insights kaynağınızdan bağlantı dizenizi kopyalayıp yapıştırın.

  1. Bağlantı dizesini kopyalayın.
  2. Bağlantı dizesini ortamınıza yapıştırın.

Sorun giderme

Uygulamanızdan izleme bulamıyorsanız bu sorun giderme kılavuzundaki adımları deneyin.

Uygulamanızdan izleme bulamıyorsanız bu sorun giderme kılavuzundaki adımları izlemeyi göz önünde bulundurun.

Sonraki adım