Na tej karcie opisano sposób dołączania do Galeria programu PowerShell i pobierania modułu ApplicationMonitor.
Uwzględnione są najbardziej typowe parametry, które należy rozpocząć.
Udostępniliśmy również instrukcje ręcznego pobierania, jeśli nie masz dostępu do Internetu.
Pobieranie parametry połączenia
Aby rozpocząć, potrzebujesz parametry połączenia. Aby uzyskać więcej informacji, zobacz Parametry połączenia.
Uwaga
31 marca 2025 r. zostanie zakończone świadczenie pomocy technicznej dla pozyskiwania klucza instrumentacji. Pozyskiwanie klucza instrumentacji będzie nadal działać, ale nie udostępnimy już aktualizacji ani obsługi funkcji. Przejście do parametry połączenia w celu skorzystania z nowych funkcji.
Uruchamianie programu PowerShell jako administrator z zasadami wykonywania z podwyższonym poziomem uprawnień
Uruchom jako administrator
Program PowerShell wymaga uprawnień na poziomie administratora, aby wprowadzić zmiany na komputerze.
Zasady wykonywania
- Opis: Domyślnie uruchamianie skryptów programu PowerShell jest wyłączone. Zalecamy zezwolenie na używanie skryptów RemoteSigned tylko dla bieżącego zakresu.
- Dokumentacja: Informacje o zasadach wykonywania i set-executionPolicy.
- Polecenie:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
.
- Opcjonalny parametr:
-Force
. Pomija monit o potwierdzenie.
Przykładowe błędy
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.
Wymagania wstępne dla PowerShell
Przeprowadź inspekcję $PSVersionTable
wystąpienia programu PowerShell, uruchamiając polecenie .
To polecenie generuje następujące dane wyjściowe:
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
Te instrukcje zostały napisane i przetestowane na komputerze z systemem Windows 10 i następującymi wersjami.
Wymagania wstępne dotyczące Galeria programu PowerShell
Te kroki umożliwiają przygotowanie serwera do pobrania modułów z Galeria programu PowerShell.
Uwaga
Galeria programu PowerShell jest obsługiwana w systemach Windows 10, Windows Server 2016 i PowerShell 6+.
Aby uzyskać informacje o wcześniejszych wersjach, zobacz Instalowanie modułu PowerShellGet.
Uruchom program PowerShell jako administrator z zasadami wykonywania z podwyższonym poziomem uprawnień.
Zainstaluj dostawcę pakietów NuGet.
- Opis: Ten dostawca jest potrzebny do interakcji z repozytoriami opartymi na nuGet, takimi jak Galeria programu PowerShell.
- Dokumentacja: Install-PackageProvider.
- Polecenie:
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201
.
- Parametry opcjonalne:
-Proxy
. Określa serwer proxy dla żądania.
-Force
. Pomija monit o potwierdzenie.
Zostanie wyświetlony ten monit, jeśli pakiet NuGet nie został skonfigurowany:
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"):
Skonfiguruj Galeria programu PowerShell jako zaufane repozytorium.
- Opis: domyślnie Galeria programu PowerShell jest niezaufanym repozytorium.
- Dokumentacja: Set-PSRepository.
- Polecenie:
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
.
- Opcjonalny parametr:
-Proxy
. Określa serwer proxy dla żądania.
Zostanie wyświetlony ten monit, jeśli Galeria programu PowerShell nie jest zaufany:
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"):
Tę zmianę i przeprowadź inspekcję PSRepositories
Get-PSRepository
, uruchamiając polecenie .
Zainstaluj najnowszą wersję modułu PowerShellGet.
- Opis: Ten moduł zawiera narzędzia używane do pobierania innych modułów z Galeria programu PowerShell. Wersja 1.0.0.1 jest dostarczana z systemami Windows 10 i Windows Server. Wymagana jest wersja 1.6.0 lub nowsza. Aby określić, która wersja jest zainstalowana, uruchom
Get-Command -Module PowerShellGet
polecenie .
- Dokumentacja: Instalowanie modułu PowerShellGet.
- Polecenie:
Install-Module -Name PowerShellGet
.
- Parametry opcjonalne:
-Proxy
. Określa serwer proxy dla żądania.
-Force
. Pomija ostrzeżenie "już zainstalowane" i instaluje najnowszą wersję.
Ten błąd występuje, jeśli nie używasz najnowszej wersji modułu PowerShellGet:
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
Uruchom ponownie program PowerShell. Nie można załadować nowej wersji w bieżącej sesji. Nowe sesje programu PowerShell ładują najnowszą wersję modułu PowerShellGet.
Pobieranie i instalowanie modułu za pośrednictwem Galeria programu PowerShell
Te kroki umożliwiają pobranie modułu Az.ApplicationMonitor z Galeria programu PowerShell.
- Upewnij się, że zostały spełnione wszystkie wymagania wstępne dotyczące Galeria programu PowerShell.
- Uruchom program PowerShell jako administrator z zasadami wykonywania z podwyższonym poziomem uprawnień.
- Zainstaluj moduł Az.ApplicationMonitor.
- Dokumentacja: Install-Module.
- Polecenie:
Install-Module -Name Az.ApplicationMonitor
.
- Parametry opcjonalne:
-Proxy
. Określa serwer proxy dla żądania.
-AllowPrerelease
. Umożliwia instalację wersji alfa i beta.
-AcceptLicense
. Pomija monit "Zaakceptuj licencję"
-Force
. Pomija ostrzeżenie "Niezaufane repozytorium".
Pobieranie i instalowanie modułu ręcznie (opcja offline)
Jeśli z jakiegokolwiek powodu nie możesz nawiązać połączenia z modułem programu PowerShell, możesz ręcznie pobrać i zainstalować moduł Az.ApplicationMonitor.
Ręczne pobieranie najnowszego pliku nupkg
- Przejdź do https://www.powershellgallery.com/packages/Az.ApplicationMonitor.
- Wybierz najnowszą wersję pliku w tabeli Historia wersji.
- W obszarze Opcje instalacji wybierz pozycję Pobieranie ręczne.
Opcja 1. Instalowanie w katalogu modułów programu PowerShell
Zainstaluj ręcznie pobrany moduł programu PowerShell w katalogu programu PowerShell, aby można go było odnaleźć za pomocą sesji programu PowerShell.
Aby uzyskać więcej informacji, zobacz Instalowanie modułu programu PowerShell.
Rozpakuj plik nupkg jako plik zip przy użyciu polecenia Expand-Archive (wersja 1.0.1.0)
Opis: Podstawowa wersja pliku Microsoft.PowerShell.Archive (wersja 1.0.1.0) nie może rozpakować plików nupkg. Zmień nazwę pliku na rozszerzenie .zip.
Dokumentacja: Rozwiń archiwum.
Polecenie:
$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
Rozpakuj nupkg przy użyciu polecenia Expand-Archive (wersja 1.1.0.0)
Opis: Użyj bieżącej wersji rozszerzenia Expand-Archive, aby rozpakować pliki nupkg bez zmiany rozszerzenia.
Dokumentacja: Expand-Archive i Microsoft.PowerShell.Archive.
Polecenie:
$pathToNupkg = "C:\az.applicationmonitor.0.2.1-alpha.nupkg"
$pathInstalledModule = "$Env:ProgramFiles\WindowsPowerShell\Modules\az.applicationmonitor"
Expand-Archive -LiteralPath $pathToNupkg -DestinationPath $pathInstalledModule
Opcja 2. Rozpakuj i zaimportuj nupkg ręcznie
Zainstaluj ręcznie pobrany moduł programu PowerShell w katalogu programu PowerShell, aby można go było odnaleźć za pomocą sesji programu PowerShell.
Aby uzyskać więcej informacji, zobacz Instalowanie modułu programu PowerShell.
Jeśli instalujesz moduł w innym katalogu, ręcznie zaimportuj moduł przy użyciu polecenia Import-Module.
Ważne
Biblioteki DLL zostaną zainstalowane za pośrednictwem ścieżek względnych.
Zapisz zawartość pakietu w zamierzonym katalogu środowiska uruchomieniowego i upewnij się, że uprawnienia dostępu zezwalają na odczyt, ale nie zapis.
- Zmień rozszerzenie na ".zip" i wyodrębnij zawartość pakietu do zamierzonego katalogu instalacyjnego.
- Znajdź ścieżkę pliku Az.ApplicationMonitor.psd1.
- Uruchom program PowerShell jako administrator z zasadami wykonywania z podwyższonym poziomem uprawnień.
- Załaduj moduł przy użyciu
Import-Module Az.ApplicationMonitor.psd1
polecenia .
Kierowanie ruchu przez serwer proxy
Podczas monitorowania komputera w prywatnym intranecie należy kierować ruch HTTP przez serwer proxy.
Polecenia programu PowerShell służące do pobierania i instalowania polecenia Az.ApplicationMonitor z Galeria programu PowerShell obsługują -Proxy
parametr .
Zapoznaj się z poprzednimi instrukcjami podczas pisania skryptów instalacji.
Zestaw SDK usługi Application Insights musi wysyłać dane telemetryczne aplikacji do firmy Microsoft. Zalecamy skonfigurowanie ustawień serwera proxy dla aplikacji w pliku web.config. Aby uzyskać więcej informacji, zobacz Jak mogę osiągnąć przekazywanie serwera proxy?.
Włączanie monitorowania
Użyj polecenia , Enable-ApplicationInsightsMonitoring
aby włączyć monitorowanie.
Zobacz dokumentację interfejsu API, aby uzyskać szczegółowy opis sposobu używania tego polecenia cmdlet.
Na tej karcie opisano następujące polecenia cmdlet, które są elementami członkowskimi modułu Az.ApplicationMonitor programu PowerShell:
Uwaga
- Aby rozpocząć, potrzebujesz parametry połączenia. Aby uzyskać więcej informacji, zobacz Tworzenie zasobu.
- To polecenie cmdlet wymaga przejrzenia i zaakceptowania naszej licencji i zasad zachowania poufności informacji.
Uwaga
31 marca 2025 r. zostanie zakończone świadczenie pomocy technicznej dla pozyskiwania klucza instrumentacji. Pozyskiwanie klucza instrumentacji będzie nadal działać, ale nie udostępnimy już aktualizacji ani obsługi funkcji. Przejście do parametry połączenia w celu skorzystania z nowych funkcji.
Ważne
To polecenie cmdlet wymaga sesji programu PowerShell z uprawnieniami administratora i zasadami wykonywania z podwyższonym poziomem uprawnień. Aby uzyskać więcej informacji, zobacz Uruchamianie programu PowerShell jako administrator przy użyciu zasad wykonywania z podwyższonym poziomem uprawnień.
- To polecenie cmdlet wymaga przejrzenia i zaakceptowania naszej licencji i zasad zachowania poufności informacji.
- Aparat instrumentacji dodaje dodatkowe obciążenie i jest domyślnie wyłączony.
Enable-InstrumentationEngine
Włącza aparat instrumentacji, ustawiając niektóre klucze rejestru.
Uruchom ponownie usługi IIS, aby zmiany zaczęły obowiązywać.
Aparat instrumentacji może uzupełniać dane zebrane przez zestawy SDK platformy .NET.
Zbiera zdarzenia i komunikaty opisujące wykonywanie zarządzanego procesu. Te zdarzenia i komunikaty obejmują kody wyników zależności, czasowniki HTTP i tekst polecenia SQL.
Włącz aparat instrumentacji, jeśli:
- Włączono już monitorowanie za pomocą polecenia cmdlet Włącz, ale nie włączono aparatu instrumentacji.
- Aplikacja została ręcznie instrumentowana przy użyciu zestawów SDK platformy .NET i chcesz zebrać dodatkowe dane telemetryczne.
Przykłady
Enable-InstrumentationEngine
Parametry
-AcceptLicense
Opcjonalny. Użyj tego przełącznika, aby zaakceptować licencję i zasady zachowania poufności informacji w instalacjach bez głowy.
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
Wyjście
Przykładowe dane wyjściowe z pomyślnego włączenia aparatu instrumentacji
Configuring IIS Environment for instrumentation engine...
Configuring registry for instrumentation engine...
Enable-ApplicationInsightsMonitoring
Umożliwia bez kodowe monitorowanie aplikacji usług IIS na komputerze docelowym.
To polecenie cmdlet modyfikuje plik applicationHost.config usług IIS i ustawia niektóre klucze rejestru.
Tworzy on plik applicationinsights.ikey.config, który definiuje klucz instrumentacji używany przez każdą aplikację.
Usługi IIS ładują moduł RedfieldModule podczas uruchamiania, który wprowadza zestaw SDK usługi Application Insights do aplikacji podczas uruchamiania aplikacji.
Uruchom ponownie usługi IIS, aby zmiany zaczęły obowiązywać.
Po włączeniu monitorowania zalecamy używanie metryk na żywo, aby szybko sprawdzić, czy aplikacja wysyła nam dane telemetryczne.
Przykłady
Przykład z pojedynczym parametry połączenia
W tym przykładzie wszystkie aplikacje na bieżącym komputerze są przypisane do jednego parametry połączenia.
Enable-ApplicationInsightsMonitoring -ConnectionString 'InstrumentationKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/'
Przykład z pojedynczym kluczem instrumentacji
W tym przykładzie wszystkie aplikacje na bieżącym komputerze mają przypisany pojedynczy klucz instrumentacji.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Przykład z mapą klucza instrumentacji
W tym przykładzie:
MachineFilter
pasuje do bieżącego komputera przy użyciu symbolu wieloznakowego '.*'
.
AppFilter='WebAppExclude'
null
zapewnia klucz instrumentacji. Określona aplikacja nie jest instrumentowana.
AppFilter='WebAppOne'
przypisuje określonej aplikacji unikatowy klucz instrumentacji.
AppFilter='WebAppTwo'
przypisuje określonej aplikacji unikatowy klucz instrumentacji.
AppFilter
używa symbolu wieloznakowego '.*'
, aby dopasować wszystkie aplikacje internetowe, których jeszcze nie pasuje, i przypisuje domyślny klucz instrumentacji.
- Miejsca są dodawane w celu zapewnienia czytelności.
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'}})
Uwaga
Nazewnictwo elementu AppFilter w tym kontekście może być mylące, AppFilter
ustawia filtr regex nazwy aplikacji (HostingEnvironment.SiteName w przypadku platformy .NET w usługach IIS). VirtualPathFilter
Ustawia filtr regex ścieżki wirtualnej (HostingEnvironment.ApplicationVirtualPath w przypadku platformy .NET w usługach IIS). Aby instrumentować pojedynczą aplikację, należy użyć klasy VirtualPathFilter w następujący sposób: Enable-ApplicationInsightsMonitoring -InstrumentationKeyMap @(@{VirtualPathFilter="^/MyAppName$"; InstrumentationSettings=@{InstrumentationKey='<your ikey>'}})
Parametry
-ConnectionString
Wymagany. Użyj tego parametru, aby podać jeden parametry połączenia do użycia przez wszystkie aplikacje na komputerze docelowym.
-InstrumentationKey
Wymagany. Użyj tego parametru, aby podać pojedynczy klucz instrumentacji do użycia przez wszystkie aplikacje na komputerze docelowym.
-InstrumentationKeyMap
Wymagany. Użyj tego parametru, aby podać wiele kluczy instrumentacji i mapowanie kluczy instrumentacji używanych przez każdą aplikację.
Można utworzyć pojedynczy skrypt instalacyjny dla kilku komputerów, ustawiając wartość MachineFilter
.
Ważne
Aplikacje są zgodne z regułami w podanej kolejności. Dlatego należy najpierw określić najbardziej specyficzne reguły i najbardziej ogólne reguły.
Schemat
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'}})
- MachineFilter jest wymaganym rejestrem języka C# komputera lub maszyny wirtualnej.
- '.*' pasuje do wszystkich
- Wartość "ComputerName" odpowiada tylko komputerom o określonej nazwie.
- AppFilter jest wymaganym rejestrem języka C# nazwy witryny usług IIS. Listę witryn na serwerze można uzyskać, uruchamiając polecenie get-iissite.
- '.*' pasuje do wszystkich
- Element "SiteName" odpowiada tylko witrynie usług IIS z określoną dokładną nazwą.
- Klucz instrumentacji jest wymagany do włączenia monitorowania aplikacji pasujących do poprzednich dwóch filtrów.
- Pozostaw tę wartość null, jeśli chcesz zdefiniować reguły wykluczania monitorowania.
-EnableInstrumentationEngine
Opcjonalny. Ten przełącznik umożliwia aparatowi instrumentacji zbieranie zdarzeń i komunikatów dotyczących tego, co dzieje się podczas wykonywania zarządzanego procesu. Te zdarzenia i komunikaty obejmują kody wyników zależności, czasowniki HTTP i tekst polecenia SQL.
Aparat instrumentacji dodaje obciążenie i jest domyślnie wyłączony.
-AcceptLicense
Opcjonalny. Użyj tego przełącznika, aby zaakceptować licencję i zasady zachowania poufności informacji w instalacjach bez głowy.
-IgnoreSharedConfig
Jeśli masz klaster serwerów internetowych, możesz użyć konfiguracji udostępnionej.
Nie można wstrzykiwać modułu HttpModule do tej udostępnionej konfiguracji.
Ten skrypt kończy się niepowodzeniem z komunikatem, że wymagane są dodatkowe kroki instalacji.
Użyj tego przełącznika, aby zignorować to sprawdzanie i kontynuować instalowanie wymagań wstępnych.
Aby uzyskać więcej informacji, zobacz znany konflikt z usługami iis-shared-configuration
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
-WhatIf
Wspólny parametr. Użyj tego przełącznika, aby przetestować i zweryfikować parametry wejściowe bez faktycznego włączenia monitorowania.
Wyjście
Przykładowe dane wyjściowe z pomyślnego włączenia
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
Wyłącza aparat instrumentacji, usuwając niektóre klucze rejestru.
Uruchom ponownie usługi IIS, aby zmiany zaczęły obowiązywać.
Przykłady
Disable-InstrumentationEngine
Parametry
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
Wyjście
Przykładowe dane wyjściowe z pomyślnego wyłączenia aparatu instrumentacji
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
Wyłącza monitorowanie na komputerze docelowym.
To polecenie cmdlet usuwa zmiany w pliku applicationHost.config usług IIS i usuwa klucze rejestru.
Przykłady
Disable-ApplicationInsightsMonitoring
Parametry
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
Wyjście
Przykładowe dane wyjściowe z pomyślnego wyłączenia monitorowania
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
Pobiera plik konfiguracji i drukuje wartości w konsoli.
Przykłady
Get-ApplicationInsightsMonitoringConfig
Parametry
Brak wymaganych parametrów.
Wyjście
Przykładowe dane wyjściowe z odczytywania pliku konfiguracji
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
To polecenie cmdlet zawiera informacje dotyczące rozwiązywania problemów z agentem usługi Application Insights.
Użyj tego polecenia cmdlet, aby zbadać stan monitorowania, wersję modułu programu PowerShell i sprawdzić uruchomiony proces.
To polecenie cmdlet zgłasza informacje o wersji i informacje o kluczowych plikach wymaganych do monitorowania.
Przykłady
Przykład: stan aplikacji
Uruchom polecenie Get-ApplicationInsightsMonitoringStatus
, aby wyświetlić stan monitorowania witryn sieci Web.
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
W tym przykładzie:
Identyfikator komputera jest identyfikatorem anonimowym używanym do unikatowego identyfikowania serwera. Jeśli tworzysz wniosek o pomoc techniczną, potrzebujemy tego identyfikatora, aby znaleźć dzienniki dla serwera.
Domyślna witryna sieci Web jest zatrzymana w usługach IIS
Aplikacja DemoWebApp111 została uruchomiona w usługach IIS, ale nie odebrała żadnych żądań. Ten raport pokazuje, że nie ma uruchomionego procesu (ProcessId: not found).
Aplikacja DemoWebApp222 jest uruchomiona i jest monitorowana (Instrumented: true). Na podstawie konfiguracji użytkownika klucz instrumentacji xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxx123 został dopasowany dla tej witryny.
DemoWebApp333 został ręcznie instrumentowany przy użyciu zestawu SDK usługi Application Insights. Agent usługi Application Insights wykrył zestaw SDK i nie monitoruje tej witryny.
Obecność AppAlreadyInstrumented : true
oznacza, że agent usługi Application Insights zidentyfikował powodującą konflikt bibliotekę DLL załadowaną w aplikacji internetowej, zakładał, że aplikacja internetowa jest instrumentowana ręcznie, a agent wycofał się i nie instrumentuje tego procesu.
Instrumented : true
wskazuje, że agent usługi Application Insights pomyślnie instrumentował aplikację internetową uruchomioną w określonym procesie w3wp.exe.
Uruchom polecenie Get-ApplicationInsightsMonitoringStatus -PowerShellModule
, aby wyświetlić informacje o bieżącym module:
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
Przykład: stan środowiska uruchomieniowego
Możesz sprawdzić proces na instrumentowanych komputerach, aby sprawdzić, czy załadowano wszystkie biblioteki DLL. Jeśli monitorowanie działa, należy załadować co najmniej 12 bibliotek DLL.
Uruchom polecenie Get-ApplicationInsightsMonitoringStatus -InspectProcess
.
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
Parametry
(Brak parametrów)
Domyślnie to polecenie cmdlet zgłasza stan monitorowania aplikacji internetowych.
Użyj tej opcji, aby sprawdzić, czy aplikacja została pomyślnie instrumentowana.
Możesz również sprawdzić, który klucz instrumentacji został dopasowany do witryny.
-PowerShellModule
Opcjonalne. Użyj tego przełącznika, aby zgłosić numery wersji i ścieżki bibliotek DLL wymaganych do monitorowania.
Użyj tej opcji, jeśli musisz zidentyfikować wersję dowolnej biblioteki DLL, w tym zestaw SDK usługi Application Insights.
-InspectProcess
Opcjonalne. Użyj tego przełącznika, aby zgłosić, czy usługi IIS są uruchomione.
Pobiera on narzędzia zewnętrzne w celu określenia, czy wymagane biblioteki DLL są ładowane do środowiska uruchomieniowego usług IIS.
Jeśli ten proces zakończy się niepowodzeniem z jakiegokolwiek powodu, możesz uruchomić te polecenia ręcznie:
- iisreset.exe /status
- handle64.exe -p w3wp | findstr /I "InstrumentationEngine AI. ApplicationInsights"
- listdlls64.exe w3wp | findstr /I "InstrumentationEngine AI ApplicationInsights"
-Force
Opcjonalne. Używane tylko w przypadku funkcji InspectProcess. Użyj tego przełącznika, aby pominąć monit użytkownika wyświetlany przed pobraniem większej liczby narzędzi.
Set-ApplicationInsightsMonitoringConfig
Ustawia plik konfiguracji bez wykonywania pełnej ponownej instalacji.
Uruchom ponownie usługi IIS, aby zmiany zaczęły obowiązywać.
Ważne
To polecenie cmdlet wymaga sesji programu PowerShell z uprawnieniami administratora.
Przykłady
Przykład z pojedynczym kluczem instrumentacji
W tym przykładzie wszystkie aplikacje na bieżącym komputerze mają przypisany pojedynczy klucz instrumentacji.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Przykład z mapą klucza instrumentacji
W tym przykładzie:
MachineFilter
pasuje do bieżącego komputera przy użyciu symbolu wieloznakowego '.*'
.
AppFilter='WebAppExclude'
null
zapewnia klucz instrumentacji. Określona aplikacja nie jest instrumentowana.
AppFilter='WebAppOne'
przypisuje określonej aplikacji unikatowy klucz instrumentacji.
AppFilter='WebAppTwo'
przypisuje określonej aplikacji unikatowy klucz instrumentacji.
AppFilter
używa symbolu wieloznakowego '.*'
, aby pasować do aplikacji internetowych, które nie są jeszcze zgodne i przypisuje domyślny klucz instrumentacji.
- Miejsca są dodawane w celu zapewnienia czytelności.
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'}})
Parametry
-InstrumentationKey
Wymagany. Użyj tego parametru, aby podać pojedynczy klucz instrumentacji do użycia przez wszystkie aplikacje na komputerze docelowym.
-InstrumentationKeyMap
Wymagany. Użyj tego parametru, aby podać wiele kluczy instrumentacji i mapowanie kluczy instrumentacji używanych przez każdą aplikację.
Można utworzyć pojedynczy skrypt instalacyjny dla kilku komputerów, ustawiając wartość MachineFilter
.
Ważne
Aplikacje są zgodne z regułami w podanej kolejności. Dlatego należy najpierw określić najbardziej specyficzne reguły i najbardziej ogólne reguły.
Schemat
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'})
- MachineFilter jest wymaganym rejestrem języka C# komputera lub maszyny wirtualnej.
- '.*' pasuje do wszystkich
- Wartość "ComputerName" odpowiada tylko komputerom o określonej nazwie.
- AppFilter to wymagany rejestr języka C# komputera lub nazwy maszyny wirtualnej.
- '.*' pasuje do wszystkich
- Element "ApplicationName" odpowiada tylko aplikacjom usług IIS o określonej nazwie.
- Klucz instrumentacji jest wymagany do włączenia monitorowania aplikacji pasujących do poprzednich dwóch filtrów.
- Pozostaw tę wartość null, jeśli chcesz zdefiniować reguły wykluczania monitorowania.
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
Wyjście
Domyślnie nie ma danych wyjściowych.
Przykładowe pełne dane wyjściowe z ustawiania pliku konfiguracji za pomocą -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
Przykładowe pełne dane wyjściowe z ustawiania pliku konfiguracji za pomocą -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
Zbiera zdarzenia ETW ze środowiska uruchomieniowego dołączania bez kodu.
To polecenie cmdlet jest alternatywą dla uruchamiania narzędzia PerfView.
Zdarzenia są zbierane, drukowane w konsoli w czasie rzeczywistym i zapisywane w pliku ETL. Możesz otworzyć wyjściowy plik ETL za pomocą narzędzia PerfView w celu dalszego zbadania.
To polecenie cmdlet jest uruchamiane, dopóki nie osiągnie limitu czasu (domyślnie 5 minut) lub zostanie zatrzymane ręcznie (Ctrl + C
).
Przykłady
Jak zbierać zdarzenia
Zwykle prosimy o zebranie zdarzeń w celu zbadania, dlaczego aplikacja nie jest instrumentowana.
Środowisko uruchomieniowe dołączania bez kodu emituje zdarzenia ETW podczas uruchamiania usług IIS i uruchamiania aplikacji.
Aby zebrać te zdarzenia:
- W konsoli programu cmd z uprawnieniami administratora wykonaj polecenie
iisreset /stop
, aby zatrzymać usługi IIS i wszystkie aplikacje internetowe.
- Wykonaj to polecenie cmdlet
- W konsoli programu cmd z uprawnieniami administratora wykonaj polecenie
iisreset /start
, aby uruchomić usługi IIS.
- Spróbuj przejść do aplikacji.
- Po zakończeniu ładowania aplikacji możesz ją ręcznie zatrzymać (
Ctrl + C
) lub poczekać na przekroczenie limitu czasu.
Jakie zdarzenia mają być zbierane
Podczas zbierania zdarzeń dostępne są trzy opcje:
- Użyj przełącznika
-CollectSdkEvents
, aby zbierać zdarzenia emitowane z zestawu SDK usługi Application Insights.
- Użyj przełącznika
-CollectRedfieldEvents
, aby zbierać zdarzenia emitowane przez agenta usługi Application Insights i środowisko uruchomieniowe Redfield. Te dzienniki są przydatne podczas diagnozowania usług IIS i uruchamiania aplikacji.
- Użyj obu przełączników, aby zebrać oba typy zdarzeń.
- Domyślnie, jeśli nie określono przełącznika, są zbierane oba typy zdarzeń.
Parametry
-MaxDurationInMinutes
Opcjonalny. Użyj tego parametru, aby ustawić, jak długo ten skrypt powinien zbierać zdarzenia. Wartość domyślna to 5 minut.
-LogDirectory
Opcjonalny. Użyj tego przełącznika, aby ustawić katalog wyjściowy pliku ETL.
Domyślnie ten plik jest tworzony w katalogu Moduły programu PowerShell.
Pełna ścieżka jest wyświetlana podczas wykonywania skryptu.
-CollectSdkEvents
Opcjonalny. Użyj tego przełącznika, aby zbierać zdarzenia zestawu SDK usługi Application Insights.
-CollectRedfieldEvents
Opcjonalny. Użyj tego przełącznika, aby zbierać zdarzenia z agenta usługi Application Insights i środowiska uruchomieniowego usługi Redfield.
-Gadatliwy
Wspólny parametr. Użyj tego przełącznika, aby wyświetlić szczegółowe dzienniki.
Wyjście
Przykład dzienników uruchamiania aplikacji
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...