Auf dieser Registerkarte wird beschrieben, wie der PowerShell-Katalog integriert und das ApplicationMonitor-Modul heruntergeladen wird.
Der Artikel enthält die gängigsten Parameter, die für den Einstieg erforderlich sind.
Außerdem finden Sie hier eine Anleitung zum manuellen Herunterladen, falls Sie über keinen Internetzugriff verfügen.
Abrufen einer Verbindungszeichenfolge
Zunächst benötigen Sie eine Verbindungszeichenfolge. Weitere Informationen finden Sie unter Verbindungszeichenfolgen.
Hinweis
Am 31. März 2025 wird der Support für die auf Instrumentierungsschlüsseln basierende Erfassung eingestellt. Die Erfassung von Instrumentierungsschlüsseln funktioniert zwar weiterhin, wir stellen jedoch keine Updates und keinen Support mehr für das Feature bereit. Wechseln Sie zu Verbindungszeichenfolgen, damit Sie neue Funktionen nutzen können.
Ausführen von PowerShell als Administrator mit einer Ausführungsrichtlinie mit erhöhten Rechten
Ausführen als Administrator
PowerShell benötigt Berechtigungen auf Administratorebene, um Änderungen an Ihrem Computer vornehmen zu können.
Ausführungsrichtlinie
- Beschreibung: Die Ausführung von PowerShell-Skripts ist standardmäßig deaktiviert. Es wird empfohlen, RemoteSigned-Skripts nur für den aktuellen Bereich zuzulassen.
- Referenz: Informationen zu Ausführungsrichtlinien und Set-ExecutionPolicy.
- Befehl:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
.
- Optionaler Parameter:
-Force
. Umgeht die Bestätigungsaufforderung.
Fehlerbeispiele
Install-Module : The 'Install-Module' command was found in the module 'PowerShellGet', but the module could not be
loaded. For more information, run 'Import-Module PowerShellGet'.
Import-Module : File C:\Program Files\WindowsPowerShell\Modules\PackageManagement\1.3.1\PackageManagement.psm1 cannot
be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https://go.microsoft.com/fwlink/?LinkID=135170.
Voraussetzungen für PowerShell
Überwachen Sie Ihre Instanz von PowerShell durch Ausführen des Befehls $PSVersionTable
.
Dieser Befehl erstellt die folgende Ausgabe:
Name Value
---- -----
PSVersion 5.1.17763.316
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17763.316
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
Diese Anleitungen wurden auf einem Computer unter Windows 10 sowie den folgenden Versionen geschrieben und getestet.
Voraussetzungen für den PowerShell-Katalog
Diese Schritte bereiten Ihren Server darauf vor, Module aus dem PowerShell-Katalog herunterzuladen.
Hinweis
Der PowerShell-Katalog wird unter Windows 10, Windows Server 2016 und PowerShell 6+ unterstützt.
Informationen zu früheren Versionen finden Sie unter Installieren von PowerShellGet.
Führen Sie PowerShell als Administrator mit einer Ausführungsrichtlinie mit erhöhten Rechten aus.
Installieren Sie den NuGet-Paketanbieter.
- Beschreibung: Sie benötigen diesen Anbieter für die Interaktion mit NuGet-basierten Repositorys wie dem PowerShell-Katalog.
- Referenz: Install-PackageProvider.
- Befehl:
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201
.
- Optionale Parameter:
-Proxy
. Gibt einen Proxyserver für die Anforderung an.
-Force
. Umgeht die Bestätigungsaufforderung.
Sie erhalten diese Eingabeaufforderung, wenn NuGet nicht eingerichtet ist:
NuGet provider is required to continue
PowerShellGet requires NuGet provider version '2.8.5.201' or newer to interact with NuGet-based repositories.
The NuGet provider must be available in 'C:\Program Files\PackageManagement\ProviderAssemblies' or
'C:\Users\t\AppData\Local\PackageManagement\ProviderAssemblies'. You can also install the NuGet provider by running
'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force'. Do you want PowerShellGet to install and import
the NuGet provider now?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Konfigurieren Sie den PowerShell-Katalog als vertrauenswürdiges Repository.
- Beschreibung: Standardmäßig ist der PowerShell-Katalog ein nicht vertrauenswürdiges Repository.
- Referenz: Set-PSRepository.
- Befehl:
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
.
- Optionaler Parameter:
-Proxy
. Gibt einen Proxyserver für die Anforderung an.
Sie erhalten diese Eingabeaufforderung, wenn der PowerShell-Katalog nicht vertrauenswürdig ist:
Untrusted repository
You are installing the modules from an untrusted repository.
If you trust this repository, change its InstallationPolicy value
by running the Set-PSRepository cmdlet. Are you sure you want to
install the modules from 'PSGallery'?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"):
Sie können diese Änderung bestätigen und alle PSRepositories
überprüfen, indem Sie den Befehl Get-PSRepository
ausführen.
Installieren Sie die neueste Version von PowerShellGet.
- Beschreibung: Dieses Modul enthält die Tools, mit denen andere Module aus dem PowerShell-Katalog abgerufen werden können. Version 1.0.0.1 wird mit Windows 10 und Windows Server ausgeliefert. Erforderlich ist Version 1.6.0 oder höher. Um zu ermitteln, welche Version installiert ist, führen Sie den Befehl
Get-Command -Module PowerShellGet
aus.
- Referenz: Installieren von PowerShellGet.
- Befehl:
Install-Module -Name PowerShellGet
.
- Optionale Parameter:
-Proxy
. Gibt einen Proxyserver für die Anforderung an.
-Force
. Umgeht die Warnung „bereits installiert“ und installiert die neueste Version.
Dieser Fehler wird angezeigt, wenn Sie nicht die neueste Version von PowerShellGet verwenden:
Install-Module : A parameter cannot be found that matches parameter name 'AllowPrerelease'.
At line:1 char:20
Install-Module abc -AllowPrerelease
~~~~~~~~~~~~~~~~
CategoryInfo : InvalidArgument: (:) [Install-Module], ParameterBindingException
FullyQualifiedErrorId : NamedParameterNotFound,Install-Module
Starten Sie PowerShell neu. Sie können die neue Version nicht in der aktuellen Sitzung laden. Neue PowerShell-Sitzungen laden die neueste Version von PowerShellGet.
Herunterladen und Installieren des Moduls über den PowerShell-Katalog
Mit diesen Schritten wird das Az.ApplicationMonitor-Modul aus dem PowerShell-Katalog heruntergeladen.
- Sorgen Sie dafür, dass alle Voraussetzungen für den PowerShell-Katalog erfüllt sind.
- Führen Sie PowerShell als Administrator mit einer Ausführungsrichtlinie mit erhöhten Rechten aus.
- Installieren Sie das Az.ApplicationMonitor-Modul.
- Referenz: Install-Module.
- Befehl:
Install-Module -Name Az.ApplicationMonitor
.
- Optionale Parameter:
-Proxy
. Gibt einen Proxyserver für die Anforderung an.
-AllowPrerelease
. Ermöglicht die Installation von Alpha- und Betaversionen.
-AcceptLicense
. Umgeht die Eingabeaufforderung „Lizenz akzeptieren“.
-Force
. Umgeht die Warnung „Nicht vertrauenswürdiges Repository“.
Manuelles Herunterladen und Installieren des Moduls (Offline-Option)
Wenn Sie aus irgendeinem Grund keine Verbindung zum PowerShell-Modul herstellen können, können Sie das Az.ApplicationMonitor-Modul manuell herunterladen und installieren.
Manuelles Herunterladen der neuesten Nupkg-Datei
- Gehe zu https://www.powershellgallery.com/packages/Az.ApplicationMonitor.
- Wählen Sie die neueste Version der Datei in der Tabelle Versionsverlauf aus.
- Wählen Sie unter Installationsoptionen die Option Manueller Download aus.
Option 1: Installieren in einem PowerShell-Modulverzeichnis
Installieren Sie das manuell heruntergeladene PowerShell-Modul in einem PowerShell-Verzeichnis, damit es von PowerShell-Sitzungen erkannt werden kann.
Weitere Informationen finden Sie unter Installieren eines PowerShell-Moduls.
Entpacken von Nupkg als ZIP-Datei mithilfe von Expand-Archive (v1.0.1.0)
Beschreibung: Die Basisversion der Microsoft.PowerShell.Archive (v1.0.1.0) kann keine Nupkg-Dateien extrahieren. Benennen Sie die Datei mit der Erweiterung „.zip“ um.
Referenz: Expand-Archive.
Befehl:
$pathToNupkg = "C:\az.applicationmonitor.0.3.0-alpha.nupkg"
$pathToZip = ([io.path]::ChangeExtension($pathToNupkg, "zip"))
$pathToNupkg | rename-item -newname $pathToZip
$pathInstalledModule = "$Env:ProgramFiles\WindowsPowerShell\Modules\az.applicationmonitor"
Expand-Archive -LiteralPath $pathToZip -DestinationPath $pathInstalledModule
Entpacken von Nupkg mithilfe von Expand-Archive (v1.1.0.0)
Beschreibung: Verwenden Sie eine aktuelle Version von Expand-Archive, um Nupkg-Dateien zu entpacken, ohne die Erweiterung zu ändern.
Referenz: Expand-Archive und Microsoft.PowerShell.Archive.
Befehl:
$pathToNupkg = "C:\az.applicationmonitor.0.2.1-alpha.nupkg"
$pathInstalledModule = "$Env:ProgramFiles\WindowsPowerShell\Modules\az.applicationmonitor"
Expand-Archive -LiteralPath $pathToNupkg -DestinationPath $pathInstalledModule
Option 2: Manuelles Entpacken und Importieren von Nupkg
Installieren Sie das manuell heruntergeladene PowerShell-Modul in einem PowerShell-Verzeichnis, damit es von PowerShell-Sitzungen erkannt werden kann.
Weitere Informationen finden Sie unter Installieren eines PowerShell-Moduls.
Wenn Sie das Modul in einem anderen Verzeichnis installieren, importieren Sie es manuell mithilfe von Import-Module.
Wichtig
DLLs werden über relative Pfade installiert.
Speichern Sie den Inhalt des Pakets in Ihrem vorgesehenen Runtime-Verzeichnis, und bestätigen Sie, dass die Zugriffsrechte Lese-, aber keine Schreibvorgänge erlauben.
- Ändern Sie die Erweiterung auf „.zip“, und extrahieren Sie den Inhalt des Pakets in Ihr gewünschtes Installationsverzeichnis.
- Suchen Sie den Dateipfad zu „Az.ApplicationMonitor.psd1“.
- Führen Sie PowerShell als Administrator mit einer Ausführungsrichtlinie mit erhöhten Rechten aus.
- Laden Sie das Modul mit dem Befehl
Import-Module Az.ApplicationMonitor.psd1
.
Weiterleiten von Datenverkehr über einen Proxy
Wenn Sie einen Computer in Ihrem privaten Intranet überwachen, müssen Sie HTTP-Datenverkehr über einen Proxy weiterleiten.
Die PowerShell-Befehle zum Herunterladen und Installieren von Az.ApplicationMonitor aus dem PowerShell-Katalog unterstützen einen -Proxy
-Parameter.
Lesen Sie die vorstehenden Anleitungen, wenn Sie Ihre Installationsskripts schreiben.
Das Application Insights SDK muss die Telemetrie Ihrer App an Microsoft senden. Es wird empfohlen, dass Sie die Proxyeinstellungen für Ihre App in der Datei „web.config“ konfigurieren. Weitere Informationen finden Sie unter Erreichen von Proxy-Passthrough.
Aktivieren der Überwachung
Verwenden Sie den Befehl Enable-ApplicationInsightsMonitoring
zum Aktivieren der Überwachung.
Lesen Sie die API-Referenz mit einer ausführlichen Beschreibung zur Verwendung dieses Cmdlets.
Auf dieser Registerkarte werden die folgenden Cmdlets beschrieben, die Mitglieder des PowerShell-Moduls Az.ApplicationMonitor sind:
Hinweis
- Zunächst benötigen Sie eine Verbindungszeichenfolge. Weitere Informationen finden Sie unter Erstellen einer Ressource.
- Dieses Cmdlet erfordert, dass Sie unsere Lizenz- und Datenschutzbestimmungen durchlesen und akzeptieren.
Hinweis
Am 31. März 2025 wird der Support für die auf Instrumentierungsschlüsseln basierende Erfassung eingestellt. Die Erfassung von Instrumentierungsschlüsseln funktioniert zwar weiterhin, wir stellen jedoch keine Updates und keinen Support mehr für das Feature bereit. Wechseln Sie zu Verbindungszeichenfolgen, damit Sie neue Funktionen nutzen können.
Enable-InstrumentationEngine
Aktiviert die Instrumentierungs-Engine durch Festlegen einiger Registrierungsschlüssel.
Starten Sie IIS neu, damit die Änderungen wirksam werden.
Die Instrumentierungs-Engine kann Daten ergänzen, die mit .NET SDKs gesammelt wurden.
Es werden Ereignisse und Nachrichten gesammelt, die die Ausführung eines verwalteten Prozesses beschreiben. Diese Ereignisse und Nachrichten umfassen Abhängigkeitsergebniscodes, HTTP-Verben und SQL-Befehlstext.
Aktivieren Sie die Instrumentierungs-Engine in den folgenden Fällen:
- Sie haben mithilfe des Cmdlets „Enable“ bereits die Überwachung, aber nicht die Instrumentierungs-Engine aktiviert.
- Sie haben Ihre App mithilfe der .NET-SDKs manuell instrumentiert und möchten zusätzliche Telemetriedaten erfassen.
Beispiele
Enable-InstrumentationEngine
Parameter
-AcceptLicense
Optional. Verwenden Sie diesen Schalter, um die Lizenz- und Datenschutzbestimmungen in monitorlosen Installationen anzunehmen.
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle auszugeben.
Output
Beispielausgabe nach erfolgreicher Aktivierung der Instrumentierungs-Engine
Configuring IIS Environment for instrumentation engine...
Configuring registry for instrumentation engine...
Enable-ApplicationInsightsMonitoring
Ermöglicht die Aktivierung der Überwachung von IIS-Apps auf einem Zielcomputer ohne Code.
Dieses Cmdlet ändert die IIS-Datei „applicationHost.config“ und legt einige Registrierungsschlüssel fest.
Es erstellt außerdem die Datei „applicationinsights.ikey.config“, die den von jeder App verwendeten Instrumentierungsschlüssel definiert.
IIS lädt das RedfieldModule beim Start. Dieses fügt das Application Insights SDK in Anwendungen ein, wenn diese Anwendungen gestartet werden.
Starten Sie IIS neu, damit die Änderungen wirksam werden.
Nachdem Sie die Überwachung aktiviert haben, empfiehlt es sich, Live Metrics Stream zu verwenden, um schnell zu überprüfen, ob Ihre App Telemetrie an uns sendet.
Beispiele
Beispiel mit einer einzigen Verbindungszeichenfolge
In diesem Beispiel wird allen Apps auf dem aktuellen Computer eine einzige Verbindungszeichenfolge zugewiesen.
Enable-ApplicationInsightsMonitoring -ConnectionString 'InstrumentationKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/'
Beispiel mit einem einzelnen Instrumentierungsschlüssel
In diesem Beispiel wird allen Apps auf dem aktuellen Computer ein einziger Instrumentierungsschlüssel zugewiesen.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Beispiel mit Zuordnung des Instrumentierungsschlüssels
In diesem Beispiel:
MachineFilter
sucht mithilfe des Platzhalters '.*'
nach dem aktuellen Computer.
AppFilter='WebAppExclude'
gibt null
als Instrumentierungsschlüssel an. Die angegebene App ist nicht instrumentiert.
AppFilter='WebAppOne'
weist der angegebenen App einen eindeutigen Instrumentierungsschlüssel zu.
AppFilter='WebAppTwo'
weist der angegebenen App einen eindeutigen Instrumentierungsschlüssel zu.
AppFilter
verwendet das Platzhalterzeichen '.*'
, um Übereinstimmungen mit Web-Apps zu finden, für die noch keine Übereinstimmung gefunden wurde, und weist einen Standardinstrumentierungsschlüssel zu.
- Zur besseren Lesbarkeit werden Leerzeichen hinzugefügt.
Enable-ApplicationInsightsMonitoring -InstrumentationKeyMap `
` @(@{MachineFilter='.*';AppFilter='WebAppExclude'},
` @{MachineFilter='.*';AppFilter='WebAppOne';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx1'}},
` @{MachineFilter='.*';AppFilter='WebAppTwo';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx2'}},
` @{MachineFilter='.*';AppFilter='.*';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxdefault'}})
Hinweis
Die Benennung von „AppFilter“ in diesem Kontext kann verwirrend sein. AppFilter
legt den RegEx-Filter für den Anwendungsnamen fest („HostingEnvironment.SiteName“ im Fall von .NET unter IIS). VirtualPathFilter
legt den RegEx-Filter für den virtuellen Pfad fest („HostingEnvironment.ApplicationVirtualPath“ im Fall von .NET unter IIS). Zum Instrumentieren einer einzelnen App verwenden Sie dann „VirtualPathFilter“ wie folgt: Enable-ApplicationInsightsMonitoring -InstrumentationKeyMap @(@{VirtualPathFilter="^/MyAppName$"; InstrumentationSettings=@{InstrumentationKey='<your ikey>'}})
Parameter
-ConnectionString
Erforderlich. Verwenden Sie diesen Parameter, um eine einzige Verbindungszeichenfolge für die Verwendung durch alle Apps auf dem Zielcomputer bereitzustellen.
-InstrumentationKey
Erforderlich. Verwenden Sie diesen Parameter, um einen einzelnen Instrumentierungsschlüssel für die Verwendung durch alle Apps auf dem Zielcomputer bereitzustellen.
-InstrumentationKeyMap
Erforderlich. Verwenden Sie diesen Parameter, um mehrere Instrumentierungsschlüssel und eine Zuordnung der von jeder einzelnen App verwendeten Instrumentierungsschlüssel bereitzustellen.
Durch Festlegen von MachineFilter
können Sie ein einzelnes Installationsskript für mehrere Computer erstellen.
Wichtig
Apps werden mit den Regeln in der Reihenfolge abgeglichen, in der diese Regeln bereitgestellt wurden. Geben Sie daher zuerst die spezifischsten Regeln und am Schluss die allgemeinsten Regeln an.
Schema
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'}})
- MachineFilter ist ein erforderlicher regulärer C#-Ausdruck des Computer- oder VM-Namens.
- '.*' findet alle.
- 'ComputerName' findet nur Computer mit exakt dem angegebenen Namen.
- AppFilter ist ein erforderlicher regulärer C#-Ausdruck des IIS-Websitenamens. Mit dem Befehl get-iissite können Sie eine Liste der Websites auf Ihrem Server abrufen.
- '.*' findet alle.
- 'SiteName' findet nur die IIS-Website mit exakt dem angegebenen Namen.
- InstrumentationKey ist erforderlich, um die Überwachung der Apps zu aktivieren, die den beiden oben genannten Filtern entsprechen.
- Behalten Sie für diesen Wert NULL bei, wenn Sie Regeln zum Ausschließen der Überwachung definieren möchten.
-EnableInstrumentationEngine
Optional. Verwenden Sie diesen Schalter, um die Instrumentierungs-Engine zu aktivieren, sodass sie Ereignisse und Nachrichten über die Vorgänge bei der Ausführung eines verwalteten Prozesses sammelt. Diese Ereignisse und Nachrichten umfassen Abhängigkeitsergebniscodes, HTTP-Verben und SQL-Befehlstext.
Die Instrumentierungs-Engine erfordert Aufwand und ist standardmäßig deaktiviert.
-AcceptLicense
Optional. Verwenden Sie diesen Schalter, um die Lizenz- und Datenschutzbestimmungen in monitorlosen Installationen anzunehmen.
-IgnoreSharedConfig
Wenn Sie über einen Cluster von Webservern verfügen, verwenden Sie möglicherweise eine Freigabekonfiguration.
Das HttpModule kann in diese Freigabekonfiguration nicht eingefügt werden.
Bei diesem Skript tritt ein Fehler auf, und es wird gemeldet, dass zusätzliche Installationsschritte erforderlich sind.
Verwenden Sie diesen Schalter, um diese Prüfung zu ignorieren und die Installation der Voraussetzungen fortzusetzen.
Weitere Informationen finden Sie unter Konflikt mit IIS-Freigabekonfiguration.
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle anzuzeigen.
-WhatIf
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um Ihre Eingabeparameter zu testen und zu überprüfen, ohne die Überwachung tatsächlich zu aktivieren.
Output
Beispielausgabe für eine erfolgreiche Aktivierung
Initiating Disable Process
Applying transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config'
'C:\Windows\System32\inetsrv\config\applicationHost.config' backed up to 'C:\Windows\System32\inetsrv\config\applicationHost.config.backup-2019-03-26_08-59-52z'
in :1,237
No element in the source document matches '/configuration/location[@path='']/system.webServer/modules/add[@name='ManagedHttpModuleHelper']'
Not executing RemoveAll (transform line 1, 546)
Transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config' was successfully applied. Operation: 'disable'
GAC Module will not be removed, since this operation might cause IIS instabilities
Configuring IIS Environment for codeless attach...
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IISADMIN[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS[Environment]
Configuring IIS Environment for instrumentation engine...
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IISADMIN[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS[Environment]
Configuring registry for instrumentation engine...
Successfully disabled Application Insights Agent
Installing GAC module 'C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\0.2.0\content\Runtime\Microsoft.AppInsights.IIS.ManagedHttpModuleHelper.dll'
Applying transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config'
Found GAC module Microsoft.AppInsights.IIS.ManagedHttpModuleHelper.ManagedHttpModuleHelper, Microsoft.AppInsights.IIS.ManagedHttpModuleHelper, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
'C:\Windows\System32\inetsrv\config\applicationHost.config' backed up to 'C:\Windows\System32\inetsrv\config\applicationHost.config.backup-2019-03-26_08-59-52z_1'
Transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config' was successfully applied. Operation: 'enable'
Configuring IIS Environment for codeless attach...
Configuring IIS Environment for instrumentation engine...
Configuring registry for instrumentation engine...
Updating app pool permissions...
Successfully enabled Application Insights Agent
Disable-InstrumentationEngine
Deaktiviert die Instrumentierungs-Engine durch Entfernen einiger Registrierungsschlüssel.
Starten Sie IIS neu, damit die Änderungen wirksam werden.
Beispiele
Disable-InstrumentationEngine
Parameter
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle auszugeben.
Output
Beispielausgabe nach erfolgreicher Deaktivierung der Instrumentierungs-Engine
Configuring IIS Environment for instrumentation engine...
Registry: removing 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IISADMIN[Environment]'
Registry: removing 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC[Environment]'
Registry: removing 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS[Environment]'
Configuring registry for instrumentation engine...
Disable-ApplicationInsightsMonitoring
Deaktiviert die Überwachung auf dem Zielcomputer.
Dieses Cmdlet entfernt Änderungen an der IIS-Datei „applicationHost.config“ sowie Registrierungsschlüssel.
Beispiele
Disable-ApplicationInsightsMonitoring
Parameter
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle anzuzeigen.
Output
Beispielausgabe für eine erfolgreiche Deaktivierung der Überwachung
Initiating Disable Process
Applying transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config'
'C:\Windows\System32\inetsrv\config\applicationHost.config' backed up to 'C:\Windows\System32\inetsrv\config\applicationHost.config.backup-2019-03-26_08-59-00z'
in :1,237
No element in the source document matches '/configuration/location[@path='']/system.webServer/modules/add[@name='ManagedHttpModuleHelper']'
Not executing RemoveAll (transform line 1, 546)
Transformation to 'C:\Windows\System32\inetsrv\config\applicationHost.config' was successfully applied. Operation: 'disable'
GAC Module will not be removed, since this operation might cause IIS instabilities
Configuring IIS Environment for codeless attach...
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IISADMIN[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS[Environment]
Configuring IIS Environment for instrumentation engine...
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IISADMIN[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC[Environment]
Registry: skipping non-existent 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS[Environment]
Configuring registry for instrumentation engine...
Successfully disabled Application Insights Agent
Get-ApplicationInsightsMonitoringConfig
Ruft die Konfigurationsdatei ab und gibt die Werte in der Konsole aus.
Beispiele
Get-ApplicationInsightsMonitoringConfig
Parameter
Es müssen keine Parameter angegeben werden.
Output
Aus der Konfigurationsdatei ausgelesene Beispielausgabe
RedfieldConfiguration:
Filters:
0)InstrumentationKey: AppFilter: WebAppExclude MachineFilter: .*
1)InstrumentationKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx2 AppFilter: WebAppTwo MachineFilter: .*
2)InstrumentationKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxdefault AppFilter: .* MachineFilter: .*
Get-ApplicationInsightsMonitoringStatus
Dieses Cmdlet stellt Informationen zur Problembehandlung zu Application Insights Agent bereit.
Sie können mithilfe dieses Cmdlets den Überwachungsstatus, die Version des PowerShell-Moduls und den laufenden Prozess untersuchen.
Dieses Cmdlet meldet Versionsinformationen und Informationen über Schlüsseldateien, die für die Überwachung erforderlich sind.
Beispiele
Beispiel: Anwendungsstatus
Führen Sie den Befehl Get-ApplicationInsightsMonitoringStatus
aus, um den Status der Überwachung von Websites anzuzeigen.
Get-ApplicationInsightsMonitoringStatus
IIS Websites:
SiteName : Default Web Site
ApplicationPoolName : DefaultAppPool
SiteId : 1
SiteState : Stopped
SiteName : DemoWebApp111
ApplicationPoolName : DemoWebApp111
SiteId : 2
SiteState : Started
ProcessId : not found
SiteName : DemoWebApp222
ApplicationPoolName : DemoWebApp222
SiteId : 3
SiteState : Started
ProcessId : 2024
Instrumented : true
InstrumentationKey : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx123
SiteName : DemoWebApp333
ApplicationPoolName : DemoWebApp333
SiteId : 4
SiteState : Started
ProcessId : 5184
AppAlreadyInstrumented : true
In diesem Beispiel gilt Folgendes:
Machine Identifier ist eine anonyme ID, mit der der Server eindeutig identifiziert wird. Wenn Sie eine Supportanfrage erstellen, benötigen wir diese ID, um die Protokolle für Ihren Server zu finden.
Default Web Site wird in IIS beendet.
DemoWebApp111 wurde in IIS gestartet, hat aber noch keine Anforderungen empfangen. Dieser Bericht zeigt an, dass dieser Prozess derzeit nicht ausgeführt wird („ProcessId: not found“).
DemoWebApp222 wird ausgeführt und überwacht („Instrumented: true“). Basierend auf der Benutzerkonfiguration wurde der Instrumentierungsschlüssel „xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx123“ für diese Website gefunden.
DemoWebApp333 wurde manuell mit dem Application Insights-SDK instrumentiert. Der Application Insights-Agent hat das SDK erkannt und überwacht diese Website nicht.
Das Vorhandensein von AppAlreadyInstrumented : true
bedeutet, dass der Application Insights-Agent eine widersprüchliche DLL identifiziert hat, die in der Webanwendung geladen wurde, vorausgesetzt, dass die Web-App manuell instrumentiert ist und der Agent gesichert ist und diesen Prozess nicht instrumentiert.
Instrumented : true
gibt an, dass der Application Insights-Agent die Web-App erfolgreich instrumentiert hat, die im angegebenen w3wp.exe-Prozess ausgeführt wird.
Führen Sie den Befehl Get-ApplicationInsightsMonitoringStatus -PowerShellModule
aus, um Informationen über das aktuelle Modul anzuzeigen:
Get-ApplicationInsightsMonitoringStatus -PowerShellModule
PowerShell Module version:
0.4.0-alpha
Application Insights SDK version:
2.9.0.3872
Executing PowerShell Module Assembly:
Microsoft.ApplicationInsights.Redfield.Configurator.PowerShell, Version=2.8.14.11432, Culture=neutral, PublicKeyToken=31bf3856ad364e35
PowerShell Module Directory:
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\0.2.2\content\PowerShell
Runtime Paths:
ParentDirectory (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content
ConfigurationPath (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\applicationInsights.ikey.config
ManagedHttpModuleHelperPath (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AppInsights.IIS.ManagedHttpModuleHelper.dll
RedfieldIISModulePath (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.dll
InstrumentationEngine86Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation32\MicrosoftInstrumentationEngine_x86.dll
InstrumentationEngine64Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\MicrosoftInstrumentationEngine_x64.dll
InstrumentationEngineExtensionHost86Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation32\Microsoft.ApplicationInsights.ExtensionsHost_x86.dll
InstrumentationEngineExtensionHost64Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\Microsoft.ApplicationInsights.ExtensionsHost_x64.dll
InstrumentationEngineExtensionConfig86Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation32\Microsoft.InstrumentationEngine.Extensions.config
InstrumentationEngineExtensionConfig64Path (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\Microsoft.InstrumentationEngine.Extensions.config
ApplicationInsightsSdkPath (Exists: True)
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.dll
Beispiel: Laufzeitstatus
Sie können den Prozess auf dem instrumentierten Computer überprüfen, um herauszufinden, ob alle DLLs geladen wurden. Wenn die Überwachung funktioniert, sollten mindestens 12 DLLS geladen worden sein.
Führen Sie den Befehl Get-ApplicationInsightsMonitoringStatus -InspectProcess
aus:
Get-ApplicationInsightsMonitoringStatus -InspectProcess
iisreset.exe /status
Status for IIS Admin Service ( IISADMIN ) : Running
Status for Windows Process Activation Service ( WAS ) : Running
Status for Net.Msmq Listener Adapter ( NetMsmqActivator ) : Running
Status for Net.Pipe Listener Adapter ( NetPipeActivator ) : Running
Status for Net.Tcp Listener Adapter ( NetTcpActivator ) : Running
Status for World Wide Web Publishing Service ( W3SVC ) : Running
handle64.exe -accepteula -p w3wp
BF0: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.ServerTelemetryChannel.dll
C58: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.AzureAppServices.dll
C68: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.DependencyCollector.dll
C78: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.WindowsServer.dll
C98: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.Web.dll
CBC: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.PerfCounterCollector.dll
DB0: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.AI.Agent.Intercept.dll
B98: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.dll
BB4: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.Contracts.dll
BCC: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.Redfield.Lightup.dll
BE0: File (R-D) C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.dll
listdlls64.exe -accepteula w3wp
0x0000000019ac0000 0x127000 C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\MicrosoftInstrumentationEngine_x64.dll
0x00000000198b0000 0x4f000 C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\Microsoft.ApplicationInsights.ExtensionsHost_x64.dll
0x000000000c460000 0xb2000 C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Instrumentation64\Microsoft.ApplicationInsights.Extensions.Base_x64.dll
0x000000000ad60000 0x108000 C:\Windows\TEMP\2.4.0.0.Microsoft.ApplicationInsights.Extensions.Intercept_x64.dll
Parameter
(Keine Parameter)
Standardmäßig meldet dieses Cmdlet den Überwachungsstatus von Webanwendungen.
Verwenden Sie diese Option, um zu überprüfen, ob Ihre Anwendung erfolgreich instrumentiert wurde.
Sie können auch überprüfen, welcher Instrumentierungsschlüssel Ihrer Website zugeordnet wurde.
-PowerShellModule
Optional: Dieser Schalter meldet die Versionsnummern und Pfade von DLLs, die für die Überwachung erforderlich sind.
Verwenden Sie diese Option, wenn Sie die Version einer DLL ermitteln müssen (einschließlich Application Insights SDK).
-InspectProcess
Optional: Verwenden Sie diesen Schalter, um zu melden, ob IIS ausgeführt wird.
Es lädt auch externe Tools herunter, um zu ermitteln, ob die erforderlichen DLLs in die IIS-Runtime geladen werden.
Wenn dieser Prozess aus irgendeinem Grund fehlschlägt, können Sie diese Befehle auch manuell ausführen:
- iisreset.exe /status
- handle64.exe -p w3wp | findstr /I "InstrumentationEngine AI. ApplicationInsights"
- listdlls64.exe w3wp | findstr /I "InstrumentationEngine AI ApplicationInsights"
-Force
Optional: Nur mit InspectProcess verwendet. Verwenden Sie diese Option, um die Benutzereingabeaufforderung zu überspringen, die angezeigt wird, bevor weitere Tools heruntergeladen werden.
Set-ApplicationInsightsMonitoringConfig
Legt die Konfigurationsdatei fest, ohne eine vollständige Neuinstallation auszuführen.
Starten Sie IIS neu, damit die Änderungen wirksam werden.
Wichtig
Dieses Cmdlet erfordert eine PowerShell-Sitzung mit Administratorberechtigungen.
Beispiele
Beispiel mit einem einzelnen Instrumentierungsschlüssel
In diesem Beispiel wird allen Apps auf dem aktuellen Computer ein einziger Instrumentierungsschlüssel zugewiesen.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Beispiel mit Zuordnung des Instrumentierungsschlüssels
In diesem Beispiel:
MachineFilter
sucht mithilfe des Platzhalters '.*'
nach dem aktuellen Computer.
AppFilter='WebAppExclude'
gibt null
als Instrumentierungsschlüssel an. Die angegebene App ist nicht instrumentiert.
AppFilter='WebAppOne'
weist der angegebenen App einen eindeutigen Instrumentierungsschlüssel zu.
AppFilter='WebAppTwo'
weist der angegebenen App einen eindeutigen Instrumentierungsschlüssel zu.
AppFilter
verwendet das Platzhalterzeichen '.*'
, um Übereinstimmungen mit Web-Apps zu finden, für die noch keine Übereinstimmung gefunden wurde, und weist einen Standardinstrumentierungsschlüssel zu.
- Zur besseren Lesbarkeit werden Leerzeichen hinzugefügt.
Enable-ApplicationInsightsMonitoring -InstrumentationKeyMap `
` @(@{MachineFilter='.*';AppFilter='WebAppExclude'},
` @{MachineFilter='.*';AppFilter='WebAppOne';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx1'}},
` @{MachineFilter='.*';AppFilter='WebAppTwo';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx2'}},
` @{MachineFilter='.*';AppFilter='.*';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxdefault'}})
Parameter
-InstrumentationKey
Erforderlich. Verwenden Sie diesen Parameter, um einen einzelnen Instrumentierungsschlüssel für die Verwendung durch alle Apps auf dem Zielcomputer bereitzustellen.
-InstrumentationKeyMap
Erforderlich. Verwenden Sie diesen Parameter, um mehrere Instrumentierungsschlüssel und eine Zuordnung der von jeder einzelnen App verwendeten Instrumentierungsschlüssel bereitzustellen.
Durch Festlegen von MachineFilter
können Sie ein einzelnes Installationsskript für mehrere Computer erstellen.
Wichtig
Apps werden mit den Regeln in der Reihenfolge abgeglichen, in der diese Regeln bereitgestellt wurden. Geben Sie daher zuerst die spezifischsten Regeln und am Schluss die allgemeinsten Regeln an.
Schema
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'})
- MachineFilter ist ein erforderlicher regulärer C#-Ausdruck des Computer- oder VM-Namens.
- '.*' findet alle.
- 'ComputerName' findet nur Computer mit dem angegebenen Namen.
- AppFilter ist ein erforderlicher regulärer C#-Ausdruck des Computer- oder VM-Namens.
- '.*' findet alle.
- 'ApplicationName' findet nur IIS-Apps mit dem angegebenen Namen.
- InstrumentationKey ist erforderlich, um die Überwachung der Apps zu aktivieren, die den beiden obigen Filtern entsprechen.
- Behalten Sie für diesen Wert NULL bei, wenn Sie Regeln zum Ausschließen der Überwachung definieren möchten.
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle anzuzeigen.
Output
Standardmäßig erfolgt keine Ausgabe.
Beispielhafte ausführliche Ausgabe beim Festlegen der Konfigurationsdatei mit -InstrumentationKey
VERBOSE: Operation: InstallWithIkey
VERBOSE: InstrumentationKeyMap parsed:
Filters:
0)InstrumentationKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx AppFilter: .* MachineFilter: .*
VERBOSE: set config file
VERBOSE: Config File Path:
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\applicationInsights.ikey.config
Beispielhafte ausführliche Ausgabe beim Festlegen der Konfigurationsdatei mit -InstrumentationKeyMap
VERBOSE: Operation: InstallWithIkeyMap
VERBOSE: InstrumentationKeyMap parsed:
Filters:
0)InstrumentationKey: AppFilter: WebAppExclude MachineFilter: .*
1)InstrumentationKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx2 AppFilter: WebAppTwo MachineFilter: .*
2)InstrumentationKey: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxdefault AppFilter: .* MachineFilter: .*
VERBOSE: set config file
VERBOSE: Config File Path:
C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\applicationInsights.ikey.config
Start-ApplicationInsightsMonitoringTrace
Sammelt ETW-Ereignisse aus der Runtime des Anfügens ohne Code.
Dieses Cmdlet ist eine Alternative zur Ausführung von PerfView.
Ereignisse werden erfasst, in Echtzeit an der Konsole ausgegeben und in einer ETL-Datei gespeichert. Sie können die ETL-Ausgabedatei zur weiteren Untersuchung mit PerfView öffnen.
Dieses Cmdlet wird ausgeführt, bis es die Timeoutdauer erreicht (standardmäßig 5 Minuten) oder manuell beendet wird (Ctrl + C
).
Beispiele
Vorgehensweise beim Sammeln von Ereignissen
Normalerweise würden wir Sie auffordern, Ereignisse zu sammeln, um zu untersuchen, warum Ihre Anwendung nicht instrumentiert wird.
Die Runtime des Anfügens ohne Code sendet ETW-Ereignisse beim Start von IIS und beim Start Ihrer Anwendung.
So sammeln Sie diese Ereignisse:
- Führen Sie
iisreset /stop
in einer Befehlszeilenkonsole mit Administratorrechten aus, um IIS und alle Webanwendungen zu beenden.
- Ausführen dieses Cmdlets
- Führen Sie
iisreset /start
in einer Befehlszeilenkonsole mit Administratorrechten aus, um IIS zu starten.
- Versuchen Sie, zu Ihrer App zu navigieren.
- Nachdem Ihre App geladen ist, können Sie sie manuell beenden (
Ctrl + C
) oder auf das Timeout warten.
Welche Ereignisse sollen gesammelt werden?
Beim Sammeln von Ereignissen haben Sie drei Möglichkeiten:
- Verwenden Sie den Schalter
-CollectSdkEvents
zum Sammeln von Ereignissen, die vom Application Insights SDK ausgegeben werden.
- Verwenden Sie den Schalter
-CollectRedfieldEvents
zum Sammeln von Ereignissen, die von Application Insights Agent und Redfield Runtime ausgegeben werden. Diese Protokolle sind hilfreich zur Diagnose von IIS und Start der Anwendung.
- Verwenden Sie beide Schalter, um beide Ereignistypen zu sammeln.
- Wenn kein Schalter angegeben ist, werden standardmäßig beide Ereignistypen erfasst.
Parameter
-MaxDurationInMinutes
Optional. Verwenden Sie diesen Parameter, um festzulegen, wie lange das Skript Ereignisse sammeln soll. Die Standardeinstellung ist 5 Minuten.
-LogDirectory
Optional. Verwenden Sie diesen Schalter, um das Ausgabeverzeichnis der ETL-Datei festzulegen.
Standardmäßig wird diese Datei im PowerShell Modules-Verzeichnis erstellt.
Der vollständige Pfad wird während der Ausführung des Skripts angezeigt.
-CollectSdkEvents
Optional. Verwenden Sie diesen Schalter, um Application Insights SDK-Ereignisse zu sammeln.
-CollectRedfieldEvents
Optional. Verwenden Sie diesen Schalter zum Sammeln von Ereignissen von Application Insights Agent und Redfield Runtime.
-Verbose
Allgemeiner Parameter. Verwenden Sie diesen Parameter, um detaillierte Protokolle auszugeben.
Output
Beispiel für Anwendungsstartprotokolle
Start-ApplicationInsightsMonitoringTrace -CollectRedfieldEvents
Starting...
Log File: C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\logs\20190627_144217_ApplicationInsights_ETW_Trace.etl
Tracing enabled, waiting for events.
Tracing will timeout in 5 minutes. Press CTRL+C to cancel.
2:42:31 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Resolved variables to: MicrosoftAppInsights_ManagedHttpModulePath='C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.dll', MicrosoftAppInsights_ManagedHttpModuleType='Microsoft.ApplicationInsights.RedfieldIISModule.RedfieldIISModule'
2:42:31 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Resolved variables to: MicrosoftDiagnosticServices_ManagedHttpModulePath2='', MicrosoftDiagnosticServices_ManagedHttpModuleType2=''
2:42:31 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Environment variable 'MicrosoftDiagnosticServices_ManagedHttpModulePath2' or 'MicrosoftDiagnosticServices_ManagedHttpModuleType2' is null, skipping managed dll loading
2:42:31 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace MulticastHttpModule.constructor, success, 70 ms
2:42:31 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace Current assembly 'Microsoft.ApplicationInsights.RedfieldIISModule, Version=2.8.18.27202, Culture=neutral, PublicKeyToken=f23a46de0be5d6f3' location 'C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.dll'
2:42:31 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace Matched filter '.*'~'STATUSMONITORTE', '.*'~'DemoWithSql'
2:42:31 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace Lightup assembly calculated path: 'C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.Redfield.Lightup.dll'
2:42:31 PM EVENT: Microsoft-ApplicationInsights-FrameworkLightup Trace Loaded applicationInsights.config from assembly's resource Microsoft.ApplicationInsights.Redfield.Lightup, Version=2.8.18.27202, Culture=neutral, PublicKeyToken=f23a46de0be5d6f3/Microsoft.ApplicationInsights.Redfield.Lightup.ApplicationInsights-recommended.config
2:42:34 PM EVENT: Microsoft-ApplicationInsights-FrameworkLightup Trace Successfully attached ApplicationInsights SDK
2:42:34 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace RedfieldIISModule.LoadLightupAssemblyAndGetLightupHttpModuleClass, success, 2687 ms
2:42:34 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace RedfieldIISModule.CreateAndInitializeApplicationInsightsHttpModules(lightupHttpModuleClass), success
2:42:34 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace ManagedHttpModuleHelper, multicastHttpModule.Init() success, 3288 ms
2:42:35 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Resolved variables to: MicrosoftAppInsights_ManagedHttpModulePath='C:\Program Files\WindowsPowerShell\Modules\Az.ApplicationMonitor\content\Runtime\Microsoft.ApplicationInsights.RedfieldIISModule.dll', MicrosoftAppInsights_ManagedHttpModuleType='Microsoft.ApplicationInsights.RedfieldIISModule.RedfieldIISModule'
2:42:35 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Resolved variables to: MicrosoftDiagnosticServices_ManagedHttpModulePath2='', MicrosoftDiagnosticServices_ManagedHttpModuleType2=''
2:42:35 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace Environment variable 'MicrosoftDiagnosticServices_ManagedHttpModulePath2' or 'MicrosoftDiagnosticServices_ManagedHttpModuleType2' is null, skipping managed dll loading
2:42:35 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace MulticastHttpModule.constructor, success, 0 ms
2:42:35 PM EVENT: Microsoft-ApplicationInsights-RedfieldIISModule Trace RedfieldIISModule.CreateAndInitializeApplicationInsightsHttpModules(lightupHttpModuleClass), success
2:42:35 PM EVENT: Microsoft-ApplicationInsights-IIS-ManagedHttpModuleHelper Trace ManagedHttpModuleHelper, multicastHttpModule.Init() success, 0 ms
Timeout Reached. Stopping...