Aracılığıyla paylaş


Telemetri

Bu özellik için Microsoft.Testing.Extensions.Telemetry NuGet paketi gereklidir.

İpucu

Microsoft.Testing.Platform.MSBuild kullanırken (MSTest, NUnit ve xUnit çalıştırıcıları tarafından geçişli olarak dahil), NuGet paketini yüklediğinizde bu uzantı otomatik olarak kaydedilir; kod değişikliği gerekmez. Aşağıdaki bölümdeki el ile kayıt, yalnızca ayarıyla <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>otomatik olarak oluşturulan giriş noktasını devre dışı bırakmış olmanız durumunda gereklidir.

El ile kayıt

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddAppInsightsTelemetryProvider();

Microsoft.Testing.Platform, ürünün nasıl geliştirildiğine yardımcı olmak için kullanılan telemetri verilerini toplar. Örneğin, bu kullanım verileri yavaş başlatma süreleri gibi sorunların hatalarını ayıklamaya ve yeni özelliklerin önceliklerini belirlemeye yardımcı olur. Bu içgörüler takdir edilse de, telemetriyi devre dışı bırakabilirsiniz. Telemetri hakkında daha fazla bilgi için bkz. gizlilik bildirimi.

Telemetri verileri türleri

Microsoft.Testing.Platform yalnızca Kullanım Verileritüründe telemetri toplar. Kullanım verileri, özelliklerin nasıl kullanıldığını ve test uygulaması yürütülürken zaman harcandığı yerleri anlamak için kullanılır. Bu, ürün geliştirmelerinin önceliğini belirlemeye yardımcı olur.

Telemetri raporlamayı devre dışı bırakma

Telemetriyi devre dışı bırakmak için TESTINGPLATFORM_TELEMETRY_OPTOUT veya DOTNET_CLI_TELEMETRY_OPTOUT ortam değişkenini 1olarak ayarlayın.

Açıklama

Microsoft.Testing.Platform, yürütülebilir dosyanızı ilk kez çalıştırdığınızda aşağıdakine benzer bir metin görüntüler. Çıkış metni, çalıştırdığınız sürüme Microsoft.Testing.Platform bağlı olarak biraz farklılık gösterebilir. Bu "ilk açılış" deneyimi, Microsoft'un sizi veri toplama hakkında bilgilendirme şeklidir.

Telemetry
---------
Microsoft.Testing.Platform collects usage data in order to help us improve your experience.
The data is collected by Microsoft and are not shared.
You can opt-out of telemetry by setting the TESTINGPLATFORM_TELEMETRY_OPTOUT
or DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.

Read more about Microsoft.Testing.Platform telemetry: https://aka.ms/testingplatform-telemetry

Veri noktaları

Telemetri özelliği, kullanıcı adları veya e-posta adresleri gibi kişisel verileri toplamaz. Kodunuzu taramaz ve proje düzeyinde verileri, örneğin repository veya yazar gibi bilgileri, ayıklamaz. Yürütülebilir dosyanızın adını ayıklar ve bunu karma biçimde gönderir.

Uygulamalarınız tarafından erişilen veya oluşturulan veri dosyalarının içeriğini, uygulamalarınızın nesneleri tarafından kaplanmış bellek dökümlerini veya panonun içeriğini ayıklamaz.

Veriler, kısıtlı access altında tutulan ve güvenli Azure Storage sistemlerinden katı güvenlik denetimleri altında yayımlanan Azure İzleyici teknolojisi kullanılarak Microsoft sunucularına güvenli bir şekilde gönderilir.

Gizliliğinizi korumak Microsoft için önemlidir! Telemetrinin hassas verileri topladığını veya verilerin güvenli olmayan veya uygunsuz şekilde işlendiğinden şüpheleniyorsanız, microsoft/testfx GitHub deposunda bir sorun oluşturun veya araştırma için dotnet@microsoft.com adresine bir e-posta gönderin.

Telemetri özelliği aşağıdaki veri noktalarını toplar:

Sürüm Veri
Tüm .NET Çalışma Zamanı sürümü
Tüm 'sunucu' gibi uygulama modu.
Tüm Başarısız olan test yeniden denemelerinin sayısı.
Tüm Geçen test tekrarlarının sayısı.
Tüm Başarısız olan testlerin sayısı.
Tüm Geçen testlerin sayısı.
Tüm Çalıştırılan testlerin sayısı.
Tüm Kullandığınız uzantıların, karma bir değer olarak DisplayName değerleri.
Tüm Platformun hata ayıklama sürümü kullanılıyorsa.
Tüm Hata ayıklayıcısı işleme eklenmişse.
Tüm Eğer test filtresi kullanıldıysa.
Tüm Hot reload etkinleştirildiyse.
Tüm Uygulama çöktüyse.
Tüm Uygulama NativeAOT olarak çalışıyorsa.
Tüm Depo bizim kendi depomuzsa. telemetry:isDevelopmentRepositoryiçindeki ayarına göre.
Tüm Karma değer olarak kullanmakta olduğunuz test çerçevesinin adı.
Tüm Yürütülebilir dosyanızın adı (genellikle proje adıyla aynıdır), karma değer olarak.
Tüm İşletim sistemi, sürüm ve mimari.
Tüm İşlem mimarisi.
Tüm Çalışma Zamanı Kimliği (RID). Daha fazla bilgi için bkz. .NET RID Kataloğu.
Tüm Uygulamanın çıkış kodu.
Tüm Coğrafi konumu belirlemek için kullanılan üç sekizli IP adresi.
Tüm Çağırma zaman damgası, yürütmedeki çeşitli adımların başlangıç ve bitiş zaman damgası.
Tüm Platformun sürümü.
Tüm Uzantılarınızın sürümü.
Tüm Test bağdaştırıcınızın sürümü.
Tüm Tek bir çalıştırıcıdan gelen olayları bağdaştırmak için rehber.
1.0.3 Tek bir test çalıştırmasından olayları ilişkilendirmek için kılavuz.

Sürekli tümleştirme algılama

.NET CLI'nın sürekli tümleştirme ortamında çalışıp çalışmadığını algılamak için, .NET CLI, ortak CI sağlayıcılarının ayarlandığı birçok iyi bilinen ortam değişkeninin varlığını ve değerlerini yoklar.

Ortam değişkenlerinin tam listesi ve değerleriyle yapılanlar aşağıdaki tabloda ayrıntılı olarak anlatılır:

Ortam değişkenleri Sağlayıcı Eylem
APPVEYOR Uygulama Boole değerini ayrıştırma.
BUILD_ID, BUILD_URL Jenkins Tümünün mevcut olup olmadığını ve null olmadığını denetleyin.
BUILD_ID, PROJECT_ID Google Cloud Build Tümünün mevcut olup olmadığını ve null olmadığını denetleyin.
CI Birçok/Çoğu Boole değerini ayrıştırma.
CIRCLECI Circle CI Boole değerini ayrıştırma.
CODEBUILD_BUILD_ID, AWS_REGION Amazon Web Services CodeBuild Tümünün mevcut olup olmadığını ve null olmadığını denetleyin.
GITHUB_ACTIONS GitHub Actions Boole değerini ayrıştırma.
JB_SPACE_API_URL JetBrains Space Var olup olmadığını ve boş olup olmadığını kontrol edin.
TEAMCITY_VERSION TeamCity Var olup olmadığını ve boş olup olmadığını kontrol edin.
TF_BUILD Azure Pipelines Boole değerini ayrıştırma.
TRAVIS Travis CI Boole değerini ayrıştırma.