about_Telemetry

Kurzbeschreibung

Beschreibt die in PowerShell gesammelte Telemetrie und die Deaktivierung.

Lange Beschreibung

PowerShell sendet grundlegende Telemetriedaten mithilfe von Application Insights an Microsoft. Mit diesen Daten können wir die Umgebungen mithilfe von PowerShell besser verstehen und neue Features und Fixes priorisieren. PowerShell anonymisiert die Telemetrieinformationen vor dem Senden.

PowerShell sendet beim Start die folgenden Informationen:

  • Hersteller, Name und Version des Betriebssystems
  • Die Version von PowerShell
  • Der Wert der umgebungsvariablen POWERSHELL_DISTRIBUTION_CHANNEL
  • Die Version des Application Insights SDK, das von PowerShell verwendet wird
  • Der geografische Standort des Hosts basierend auf der IP-Adresse
  • Die Parameter, die ohne parameterwerte an pwsh übergeben werden
  • Die Einstellung der Ausführungsrichtlinie der aktuellen Sitzung
  • Eine zufällig generierte GUID, die den Benutzer darstellt, der die Instanz ausführt
  • Eine zufällig generierte GUID, die die Sitzungsinstanz darstellt

Start-Telemetriedaten werden nur gesammelt, wenn die pwsh ausführbare Datei gestartet wird. Diese Informationen werden nicht gesendet, wenn das PowerShell-Modul in eine andere Hostanwendung eingebettet ist.

Hinweis

Application Insights verwendet die HOST-IP-Adresse, um den geografischen Standort zu ermitteln. Die IP-Adresse ist niemals in den Telemetriedaten enthalten oder in der Datenbank gespeichert. Weitere Informationen finden Sie unter Geolocation und IP-Adressbehandlung.

PowerShell sendet während der Sitzung die folgenden Informationen:

  • Die Anzahl der Aufrufe der PowerShell.Create() API
  • Die Namen und Versionen von von Microsoft importierten Modulen
  • Die Anzahl der importierten Module mit dem CrescendoBuilt Tag
  • Die Namen der aktivierten experimentellen Features
  • Die Namen deaktivierter experimenteller Features
  • Wert der Einstellungsvariable$PSNativeCommandUseErrorActionPreference, entweder trueoder falseunset
  • Die Anzahl der geöffneten Remotesitzungen
  • Die Namen registrierter Subsysteme: Completion und general. Wenn der Name des Subsystems nicht einer dieser Namen ist, wird er anonymous als Name übermittelt.
  • Die Anzahl der CommandNotFound bereitgestellten Feedbackvorschläge.
  • Die Anzahl der PowerShellUnsafeAssemblyLoad Verwendungen und ob die Auslastung erfolgreich war oder nicht.

Die $Env:POWERSHELL_DISTRIBUTION_CHANNEL Umgebungsvariable wird von den Installationspaketen festgelegt, um die Methode und die Installationsquelle für PowerShell aufzuzeichnen. Da diese Informationen in den an Microsoft gesendeten Telemetriedaten enthalten sind, sollten Benutzer diesen Wert nicht ändern.

PowerShell sendet diese Informationen in regelmäßigen Abständen während der Lebensdauer der Sitzung für alle Hostanwendungen auf allen Plattformen.

Telemetrie deaktivieren

Es gibt zwei Möglichkeiten zum Deaktivieren des Sendens von Telemetrie.

  • Legen Sie auf allen Plattformen die Umgebungsvariable $Env:POWERSHELL_TELEMETRY_OPTOUT auf true, yes, oder 1. Damit diese Umgebungsvariable wirksam wird, muss sie vor dem Starten des PowerShell-Prozesses festgelegt werden. Weitere Informationen finden Sie unter about_Environment_Variables.

  • Ab PowerShell 7.5.7 auf Windows berücksichtigt PowerShell die Einstellung Diagnostics & feedback in Windows. Führen Sie die folgenden Schritte aus, um Telemetrie in Windows zu deaktivieren.

    1. Öffnen Sie die Einstellungs-App , und navigieren Sie zu Datenschutz & Sicherheitsdiagnose>& Feedback.
    2. Erweitern Sie den Abschnitt "Diagnosedaten ".
    3. Legen Sie unter "Optionale Diagnosedaten senden" den Umschalter auf "Aus" fest.

Weiterführende Lektüre

  • Weitere Informationen zu diesen Umgebungsvariablen finden Sie unter about_Environment_Variables.
  • Weitere Informationen zu den Datenschutzbestimmungen von Microsoft finden Sie in den Datenschutzbestimmungen von Microsoft.