Şirket içi sunucular için Azure İzleyici Application Insights Aracısı dağıtma
- Makale
Application Insights Aracısı (eski adıYla Durum İzleyicisi V2), PowerShell Galerisi yayımlanan bir PowerShell modülüdür. Durum İzleyicisi'nin yerini alır. Telemetri, uygulamanızı izleyebileceğiniz Azure portalına gönderilir.
Desteklenen otomatik dağıtım senaryolarının tam listesi için bkz . Desteklenen ortamlar, diller ve kaynak sağlayıcıları.
Not
Modül şu anda IIS ile barındırılan ASP.NET ve ASP.NET Core web uygulamalarının kodsuz izlemesini destekler. Java ve Node.js uygulamalarını işaretlemek için SDK kullanın.
PowerShell Galerisi
Application Insights Aracısı PowerShell Galerisi bulunur.
Yönergeler
- Kısa kod örneklerini kullanmaya başlamak için Başlarken sekmesine bakın.
- Kullanmaya başlama hakkında ayrıntılı bilgi için Ayrıntılı yönergeler sekmesine bakın.
- PowerShell API başvurusu için API başvurusu sekmesine bakın.
- Sürüm notu güncelleştirmeleri için Sürüm notları sekmesine bakın.
Bu sekme, çoğu ortamda çalışması beklenen hızlı başlangıç komutlarını içerir. Yönergeler güncelleştirmeleri dağıtmak için PowerShell Galerisi bağlıdır. Bu komutlar PowerShell -Proxy
parametresini destekler.
Bu komutların, özelleştirme yönergelerinin ve sorun giderme hakkındaki bilgilerin açıklaması için ayrıntılı yönergelere bakın.
Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
PowerShell Galerisi aracılığıyla indirme ve yükleme
İndirme ve yükleme için PowerShell Galerisi kullanın.
Yükleme önkoşulları
İzlemeyi etkinleştirmek için bir bağlantı dizesi sahip olmanız gerekir. Application Insights kaynağınızın Genel Bakış bölmesinde bir bağlantı dizesi görüntülenir. Daha fazla bilgi için bkz . Bağlantı dizeleri.
Not
Nisan 2020 itibarıyla PowerShell Galerisi TLS 1.1 ve 1.0'ı kullanım dışı bırakmıştır.
İhtiyaç duyabileceğiniz diğer önkoşullar için bkz. TLS desteği PowerShell Galerisi.
PowerShell'i yönetici olarak çalıştırın.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process -Force
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
Install-Module -Name PowerShellGet -Force
PowerShell'i kapatın.
Application Insights Aracısı'ni yükleme
PowerShell'i yönetici olarak çalıştırın.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process -Force
Install-Module -Name Az.ApplicationMonitor -AllowPrerelease -AcceptLicense
Not
AllowPrerelease
cmdlet'indeki Install-Module
anahtar, beta sürümünün yüklenmesine izin verir.
Daha fazla bilgi için bkz . Install-Module.
İzlemeyi etkinleştirme
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process -Force
Enable-ApplicationInsightsMonitoring -ConnectionString 'InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/'
El ile indirme ve yükleme (çevrimdışı seçenek)
Ayrıca el ile indirip yükleyebilirsiniz.
Modülü indirin
Modülün en son sürümünü PowerShell Galerisi'den el ile indirin.
Application Insights Aracısı'nın sıkıştırmasını açma ve yükleme
$pathToNupkg = "C:\Users\t\Desktop\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
İzlemeyi etkinleştirme
Enable-ApplicationInsightsMonitoring -ConnectionString 'InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/'
Bu sekmede PowerShell Galerisi ekleme ve ApplicationMonitor modülünü indirme işlemleri açıklanır. Başlarken ihtiyacınız olan en yaygın parametreler bunlardır. İnternet erişiminiz yoksa el ile indirme yönergeleri de sağladık.
bağlantı dizesi alma
Başlamak için bir bağlantı dizesi gerekir. Daha fazla bilgi için bkz . Bağlantı dizeleri.
Not
31 Mart 2025’te izleme anahtarı alımı desteği sona erecektir. İzleme anahtarı alımı çalışmaya devam edecek, ancak artık özellik için güncelleştirme veya destek sağlamayacağız. Yeni özelliklerden yararlanmak için bağlantı dizesi geçiş.
PowerShell'i yükseltilmiş yürütme ilkesiyle Yönetici olarak çalıştırma
Yönetici Olarak Çalıştır
PowerShell'in bilgisayarınızda değişiklik yapmak için Yönetici düzeyinde izinlere sahip olması gerekir.
Yürütme ilkesi
- Açıklama: PowerShell betiklerinin çalıştırılması varsayılan olarak devre dışıdır. Yalnızca Geçerli kapsam için RemoteSigned betiklerine izin vermenizi öneririz.
- Başvuru: Yürütme İlkeleri ve Set-ExecutionPolicy hakkında.
- Komut:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
. - İsteğe bağlı parametre:
-Force
. Onay istemini atlar.
Örnek hatalar
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.
PowerShell için ön koşullar
komutunu çalıştırarak $PSVersionTable
PowerShell örneğinizi denetleyin.
Bu komut aşağıdaki çıkışı oluşturur:
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
Bu yönergeler, Windows 10 ve aşağıdaki sürümleri çalıştıran bir bilgisayarda yazıldı ve test edildi.
PowerShell Galerisi önkoşulları
Bu adımlar sunucunuzu PowerShell Galerisi modülleri indirmeye hazırlar.
Not
PowerShell Galerisi Windows 10, Windows Server 2016 ve PowerShell 6+'da desteklenir. Önceki sürümler hakkında bilgi için bkz . PowerShellGet'i Yükleme.
PowerShell'i yükseltilmiş bir yürütme ilkesiyle Yönetici olarak çalıştırın.
NuGet paket sağlayıcısını yükleyin.
- Açıklama: bu sağlayıcının PowerShell Galerisi gibi NuGet tabanlı depolarla etkileşim kurması gerekir.
- Başvuru: Install-PackageProvider.
- Komut:
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201
. - İsteğe bağlı parametreler:
-Proxy
. İstek için bir ara sunucu belirtir.-Force
. Onay istemini atlar.
NuGet ayarlı değilse bu istemi alırsınız:
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"):
PowerShell Galerisi güvenilir bir depo olarak yapılandırın.
- Açıklama: varsayılan olarak, PowerShell Galerisi güvenilmeyen bir depodur.
- Başvuru: Set-PSRepository.
- Komut:
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
. - İsteğe bağlı parametre:
-Proxy
. İstek için bir ara sunucu belirtir.
PowerShell Galerisi güvenilir değilse şu istemi alırsınız:
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"):
Komutunu çalıştırarak bu değişikliği onaylayabilir ve tümünü
PSRepositories
denetleyebilirsinizGet-PSRepository
.PowerShellGet'in en yeni sürümünü yükleyin.
- Açıklama: Bu modül, PowerShell Galerisi diğer modülleri almak için kullanılan araçları içerir. Sürüm 1.0.0.1, Windows 10 ve Windows Server ile birlikte gönderilir. Sürüm 1.6.0 veya üzeri gereklidir. Hangi sürümün yüklü olduğunu belirlemek için komutunu çalıştırın
Get-Command -Module PowerShellGet
. - Başvuru: PowerShellGet'i yükleme.
- Komut:
Install-Module -Name PowerShellGet
. - İsteğe bağlı parametreler:
-Proxy
. İstek için bir ara sunucu belirtir.-Force
. "Zaten yüklü" uyarısını atlar ve en son sürümü yükler.
PowerShellGet'in en yeni sürümünü kullanmıyorsanız bu hatayı alırsınız:
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
- Açıklama: Bu modül, PowerShell Galerisi diğer modülleri almak için kullanılan araçları içerir. Sürüm 1.0.0.1, Windows 10 ve Windows Server ile birlikte gönderilir. Sürüm 1.6.0 veya üzeri gereklidir. Hangi sürümün yüklü olduğunu belirlemek için komutunu çalıştırın
PowerShell'i yeniden başlatın. Geçerli oturumda yeni sürümü yükleyemezsiniz. Yeni PowerShell oturumları, PowerShellGet'in en son sürümünü yükler.
modülü PowerShell Galerisi aracılığıyla indirme ve yükleme
Bu adımlar PowerShell Galerisi'den Az.ApplicationMonitor modülünü indirir.
- PowerShell Galerisi için tüm önkoşulların karşılandığından emin olun.
- PowerShell'i yükseltilmiş bir yürütme ilkesiyle Yönetici olarak çalıştırın.
- Az.ApplicationMonitor modülünü yükleyin.
- Başvuru: Install-Module.
- Komut:
Install-Module -Name Az.ApplicationMonitor
. - İsteğe bağlı parametreler:
-Proxy
. İstek için bir ara sunucu belirtir.-AllowPrerelease
. Alfa ve beta sürümlerinin yüklenmesine izin verir.-AcceptLicense
. "Lisansı Kabul Et" istemini atlar-Force
. "Güvenilmeyen Depo" uyarısını atlar.
Modülü el ile indirme ve yükleme (çevrimdışı seçenek)
Herhangi bir nedenle PowerShell modülüne bağlanamıyorsanız Az.ApplicationMonitor modülünü el ile indirip yükleyebilirsiniz.
En son nupkg dosyasını el ile indirme
- Şuraya git: https://www.powershellgallery.com/packages/Az.ApplicationMonitor .
- Sürüm Geçmişi tablosunda dosyanın en son sürümünü seçin.
- Yükleme Seçenekleri'nin altında El ile İndir'i seçin.
Seçenek 1: PowerShell modülleri dizinine yükleme
PowerShell oturumları tarafından bulunabilmesi için el ile indirilen PowerShell modülünü bir PowerShell dizinine yükleyin. Daha fazla bilgi için bkz . PowerShell Modülü Yükleme.
Genişlet-Arşiv (v1.0.1.0) kullanarak nupkg dosyasını zip dosyası olarak sıkıştırmasını açın
Açıklama: Microsoft.PowerShell.Archive'in (v1.0.1.0) temel sürümü nupkg dosyalarının sıkıştırmasını açamaz. Dosyayı .zip uzantısıyla yeniden adlandırın.
Başvuru: Genişlet-Arşivle.
Komut:
$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
Genişlet-Arşivle (v1.1.0.0) kullanarak nupkg sıkıştırmasını açın
Açıklama: Uzantıyı değiştirmeden nupkg dosyalarının sıkıştırmasını açmak için Expand-Archive uygulamasının geçerli bir sürümünü kullanın.
Başvuru: Expand-Archive ve Microsoft.PowerShell.Archive.
Komut:
$pathToNupkg = "C:\az.applicationmonitor.0.2.1-alpha.nupkg" $pathInstalledModule = "$Env:ProgramFiles\WindowsPowerShell\Modules\az.applicationmonitor" Expand-Archive -LiteralPath $pathToNupkg -DestinationPath $pathInstalledModule
Seçenek 2: Nupkg'ı el ile açma ve içeri aktarma
PowerShell oturumları tarafından bulunabilmesi için el ile indirilen PowerShell modülünü bir PowerShell dizinine yükleyin. Daha fazla bilgi için bkz . PowerShell Modülü Yükleme.
Modülü başka bir dizine yüklüyorsanız Import-Module kullanarak modülü el ile içeri aktarın.
Önemli
DLL'ler göreli yollar aracılığıyla yüklenir. Paketin içeriğini hedeflenen çalışma zamanı dizininizde depolayın ve erişim izinlerinin okunmaya izin verilip yazılmadığını onaylayın.
- Uzantıyı ".zip" olarak değiştirin ve paketin içeriğini hedeflenen yükleme dizininize ayıklayın.
- Az.ApplicationMonitor.psd1 dosyasının yolunu bulun.
- PowerShell'i yükseltilmiş bir yürütme ilkesiyle Yönetici olarak çalıştırın.
- komutunu kullanarak
Import-Module Az.ApplicationMonitor.psd1
modülü yükleyin.
Trafiği ara sunucu üzerinden yönlendirme
Özel intranetinizdeki bir bilgisayarı izlerken, HTTP trafiğini bir ara sunucu üzerinden yönlendirmeniz gerekir.
PowerShell Galerisi'dan Az.ApplicationMonitor'ı indirip yüklemek için PowerShell komutları bir -Proxy
parametreyi destekler.
Yükleme betiklerinizi yazarken önceki yönergeleri gözden geçirin.
Application Insights SDK'sının uygulamanızın telemetri verilerini Microsoft'a göndermesi gerekir. Web.config dosyanızda uygulamanız için ara sunucu ayarlarını yapılandırmanızı öneririz. Daha fazla bilgi için bkz. ara sunucu geçişi Nasıl yaparım??
İzlemeyi etkinleştirme
İzlemeyi Enable-ApplicationInsightsMonitoring
etkinleştirmek için komutunu kullanın.
Bu cmdlet'in nasıl kullanılacağına ilişkin ayrıntılı bir açıklama için API başvurusuna bakın.
Bu sekmede Az.ApplicationMonitor PowerShell modülünün üyeleri olan aşağıdaki cmdlet'ler açıklanmaktadır:
- Enable-InstrumentationEngine
- Enable-ApplicationInsightsMonitoring
- Disable-InstrumentationEngine
- Disable-ApplicationInsightsMonitoring
- Get-ApplicationInsightsMonitoringConfig
- Get-ApplicationInsightsMonitoringStatus
- Set-ApplicationInsightsMonitoringConfig
- Start-ApplicationInsightsMonitoringTrace
Not
- Başlamak için bir bağlantı dizesi gerekir. Daha fazla bilgi için bkz . Kaynak oluşturma.
- Bu cmdlet, lisans ve gizlilik bildirimimizi gözden geçirmenizi ve kabul etmenizi gerektirir.
Not
31 Mart 2025’te izleme anahtarı alımı desteği sona erecektir. İzleme anahtarı alımı çalışmaya devam edecek, ancak artık özellik için güncelleştirme veya destek sağlamayacağız. Yeni özelliklerden yararlanmak için bağlantı dizesi geçiş.
Önemli
Bu cmdlet, Yönetici izinlerine sahip bir PowerShell oturumu ve yükseltilmiş bir yürütme ilkesi gerektirir. Daha fazla bilgi için bkz . PowerShell'i yükseltilmiş yürütme ilkesiyle yönetici olarak çalıştırma.
- Bu cmdlet, lisans ve gizlilik bildirimimizi gözden geçirmenizi ve kabul etmenizi gerektirir.
- İzleme altyapısı ek ek yük ekler ve varsayılan olarak kapalıdır.
Enable-InstrumentationEngine
Bazı kayıt defteri anahtarlarını ayarlayarak izleme altyapısını etkinleştirir. Değişikliklerin etkili olması için IIS'yi yeniden başlatın.
İzleme altyapısı.NET SDK'ları tarafından toplanan verileri tamamlayabilir. Yönetilen bir işlemin yürütülmesini açıklayan olayları ve iletileri toplar. Bu olaylar ve iletiler bağımlılık sonuç kodlarını, HTTP fiillerini ve SQL komut metnini içerir.
Aşağıdakiler durumunda izleme altyapısını etkinleştirin:
- İzlemeyi Etkinleştir cmdlet'iyle zaten etkinleştirdiniz ancak izleme altyapısını etkinleştirmediniz.
- Uygulamanızı .NET SDK'ları ile el ile izlemeniz ve ek telemetri toplamak istemeniz gerekir.
Örnekler
Enable-InstrumentationEngine
Parametreler
-AcceptLicense
isteğe bağlı. Başsız yüklemelerde lisans ve gizlilik bildirimini kabul etmek için bu anahtarı kullanın.
-Ayrıntılı
Ortak parametre. Ayrıntılı günlüklerin çıktısını almak için bu anahtarı kullanın.
Çıktı
İzleme altyapısının başarıyla etkinleştirilmesinden alınan örnek çıkış
Configuring IIS Environment for instrumentation engine...
Configuring registry for instrumentation engine...
Enable-ApplicationInsightsMonitoring
Hedef bilgisayarda IIS uygulamalarının kodsuz ekleme izlemesini etkinleştirir.
Bu cmdlet, IIS applicationHost.config dosyasını değiştirir ve bazı kayıt defteri anahtarlarını ayarlar. Her uygulama tarafından kullanılan izleme anahtarını tanımlayan bir applicationinsights.ikey.config dosyası oluşturur. IIS başlangıçta RedfieldModule'yi yükler ve uygulamalar başlatılırken Application Insights SDK'sını uygulamalara ekler. Değişikliklerinizin etkili olması için IIS'yi yeniden başlatın.
İzlemeyi etkinleştirdikten sonra, uygulamanızın bize telemetri gönderip göndermediğini hızlıca denetlemek için Canlı Ölçümler'i kullanmanızı öneririz.
Örnekler
Tek bir bağlantı dizesi içeren örnek
Bu örnekte, geçerli bilgisayardaki tüm uygulamalara tek bir bağlantı dizesi atanır.
Enable-ApplicationInsightsMonitoring -ConnectionString 'InstrumentationKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx;IngestionEndpoint=https://xxxx.applicationinsights.azure.com/'
Tek bir izleme anahtarına sahip örnek
Bu örnekte, geçerli bilgisayardaki tüm uygulamalara tek bir izleme anahtarı atanır.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
İzleme anahtarı eşlemesi içeren örnek
Bu örnekte:
MachineFilter
joker karakter kullanarak geçerli bilgisayarla eşleşir'.*'
.AppFilter='WebAppExclude'
birnull
izleme anahtarı sağlar. Belirtilen uygulama izlenmedi.AppFilter='WebAppOne'
belirtilen uygulamaya benzersiz bir izleme anahtarı atar.AppFilter='WebAppTwo'
belirtilen uygulamaya benzersiz bir izleme anahtarı atar.AppFilter
joker karakteri'.*'
, henüz eşleşmediği tüm web uygulamalarıyla eşleşecek şekilde kullanır ve varsayılan bir izleme anahtarı atar.- Okunabilirlik için boşluklar eklenir.
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'}})
Not
Bu bağlamda AppFilter'ın adlandırılması kafa karıştırıcı olabilir, AppFilter
uygulama adı regex filtresini ayarlar (IIS'de .NET söz konusu olduğunda HostingEnvironment.SiteName). VirtualPathFilter
sanal yol regex filtresini ayarlar (IIS üzerinde .NET söz konusu olduğunda HostingEnvironment.ApplicationVirtualPath). Tek bir uygulamayı işaretlemek için VirtualPathFilter'ı aşağıdaki gibi kullanabilirsiniz: Enable-ApplicationInsightsMonitoring -InstrumentationKeyMap @(@{VirtualPathFilter="^/MyAppName$"; InstrumentationSettings=@{InstrumentationKey='<your ikey>'}})
Parametreler
-ConnectionString
Gerekli. Hedef bilgisayardaki tüm uygulamalar tarafından kullanılmak üzere tek bir bağlantı dizesi sağlamak için bu parametreyi kullanın.
-InstrumentationKey
Gerekli. Hedef bilgisayardaki tüm uygulamalar tarafından kullanılmak üzere tek bir izleme anahtarı sağlamak için bu parametreyi kullanın.
-InstrumentationKeyMap
Gerekli. Birden çok izleme anahtarı ve her uygulama tarafından kullanılan izleme anahtarlarının eşlemesini sağlamak için bu parametreyi kullanın.
ayarlayarak MachineFilter
birkaç bilgisayar için tek bir yükleme betiği oluşturabilirsiniz.
Önemli
Uygulamalar, kuralların sağlandığı sırayla kurallarla eşleşir. Bu nedenle, önce en belirli kuralları ve en son en genel kuralları belirtmeniz gerekir.
Şema
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationSettings=@{InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'}})
- MachineFilter , bilgisayar veya VM adının gerekli bir C# kayıt defteridir.
- '.*' tümüyle eşleşir
- 'ComputerName' yalnızca belirtilen tam ada sahip bilgisayarlarla eşleşir.
- AppFilter , IIS Site Adı'nın gerekli bir C# kayıt defteridir. get-iissite komutunu çalıştırarak sunucunuzdaki sitelerin listesini alabilirsiniz.
- '.*' tümüyle eşleşir
- 'SiteName', yalnızca belirtilen tam ada sahip IIS Sitesi ile eşleşir.
- Önceki iki filtreyle eşleşen uygulamaların izlenmesini etkinleştirmek için InstrumentationKey gereklidir.
- İzlemeyi dışlayacak kurallar tanımlamak istiyorsanız bu değeri null bırakın.
-EnableInstrumentationEngine
isteğe bağlı. İzleme altyapısının yönetilen bir işlemin yürütülmesi sırasında gerçekleşen olaylar ve iletiler toplamasını sağlamak için bu anahtarı kullanın. Bu olaylar ve iletiler bağımlılık sonuç kodlarını, HTTP fiillerini ve SQL komut metnini içerir.
İzleme altyapısı ek yük ekler ve varsayılan olarak kapalıdır.
-AcceptLicense
isteğe bağlı. Başsız yüklemelerde lisans ve gizlilik bildirimini kabul etmek için bu anahtarı kullanın.
-IgnoreSharedConfig
Bir web sunucusu kümeniz olduğunda, paylaşılan bir yapılandırma kullanıyor olabilirsiniz. HttpModule bu paylaşılan yapılandırmaya eklenebilir. Bu betik, ek yükleme adımları gerektiğini belirten iletiyle başarısız olur. Bu denetimi yoksaymak ve önkoşulları yüklemeye devam etmek için bu anahtarı kullanın. Daha fazla bilgi için bkz. bilinen conflict-with-iis-shared-configuration
-Ayrıntılı
Ortak parametre. Ayrıntılı günlükleri görüntülemek için bu anahtarı kullanın.
-WhatIf
Ortak parametre. İzlemeyi gerçekten etkinleştirmeden giriş parametrelerinizi test etmek ve doğrulamak için bu anahtarı kullanın.
Çıktı
Başarılı bir etkinleştirmeden örnek çıktı
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
Bazı kayıt defteri anahtarlarını kaldırarak izleme altyapısını devre dışı bırakır. Değişikliklerin etkili olması için IIS'yi yeniden başlatın.
Örnekler
Disable-InstrumentationEngine
Parametreler
-Ayrıntılı
Ortak parametre. Ayrıntılı günlüklerin çıktısını almak için bu anahtarı kullanın.
Çıktı
İzleme altyapısının başarıyla devre dışı bırakılmasından alınan örnek çıkış
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
Hedef bilgisayarda izlemeyi devre dışı bırakır. Bu cmdlet, IIS applicationHost.config dosyasındaki düzenlemeleri kaldırır ve kayıt defteri anahtarlarını kaldırır.
Örnekler
Disable-ApplicationInsightsMonitoring
Parametreler
-Ayrıntılı
Ortak parametre. Ayrıntılı günlükleri görüntülemek için bu anahtarı kullanın.
Çıktı
İzlemeyi başarıyla devre dışı bırakmanın örnek çıktısı
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
Yapılandırma dosyasını alır ve değerleri konsola yazdırır.
Örnekler
Get-ApplicationInsightsMonitoringConfig
Parametreler
Parametre gerekmez.
Çıktı
Yapılandırma dosyasının okunmasından alınan örnek çıktı
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
Bu cmdlet, Application Insights Aracısı hakkında sorun giderme bilgileri sağlar. İzleme durumunu, PowerShell Modülünün sürümünü araştırmak ve çalışan işlemi incelemek için bu cmdlet'i kullanın. Bu cmdlet, sürüm bilgilerini ve izleme için gereken önemli dosyalar hakkındaki bilgileri raporlar.
Örnekler
Örnek: Uygulama durumu
Web sitelerinin izleme durumunu görüntülemek için komutunu Get-ApplicationInsightsMonitoringStatus
çalıştırın.
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
Bu örnekte,
Makine Tanımlayıcısı , sunucunuzu benzersiz olarak tanımlamak için kullanılan anonim bir kimliktir. Bir destek isteği oluşturursanız, sunucunuzun günlüklerini bulmak için bu kimlik gereklidir.
Iis'de Varsayılan Web Sitesi Durduruldu
DemoWebApp111 IIS'de başlatıldı, ancak herhangi bir istek almadı. Bu rapor, çalışan bir işlem olmadığını gösterir (ProcessId: bulunamadı).
DemoWebApp222 çalışıyor ve izleniyor (İzleme: true). Kullanıcı yapılandırmasına bağlı olarak, bu site için xxxxxxxx-xxxx-xxxx-xxxxx123 İzleme Anahtarı eşleştirildi.
DemoWebApp333 , Application Insights SDK'sı kullanılarak el ile izlenmiştir. Application Insights Aracısı SDK'yi algıladıysa ve bu siteyi izlemez.
Varlığı
AppAlreadyInstrumented : true
, Application Insights aracısının web uygulamasına yüklenen çakışan bir dll'yi tanımladığını, web uygulamasının el ile izlendiğini ve aracının desteklendiğini ve bu işlemi izlemediğini belirtir.Instrumented : true
Application Insights aracısının, belirtilen w3wp.exe işleminde çalışan web uygulamasını başarıyla işaretlediğini gösterir.
Örnek: PowerShell modülü bilgileri
Geçerli modül hakkındaki bilgileri görüntülemek için komutunu Get-ApplicationInsightsMonitoringStatus -PowerShellModule
çalıştırın:
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
Örnek: Çalışma zamanı durumu
tüm DLL'lerin yüklenip yüklenmediğini görmek için izlemeli bilgisayardaki işlemi inceleyebilirsiniz. İzleme çalışıyorsa en az 12 DLL yüklenmelidir.
Get-ApplicationInsightsMonitoringStatus -InspectProcess
komutunu çalıştırın:
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
Parametreler
(Parametre yok)
Varsayılan olarak, bu cmdlet web uygulamalarının izleme durumunu bildirir. Uygulamanızın başarıyla izlenip izlenmediğini gözden geçirmek için bu seçeneği kullanın. Ayrıca hangi İzleme Anahtarının sitenizle eşleştirildiğini de gözden geçirebilirsiniz.
-PowerShellModule
İsteğe bağlı. İzleme için gereken DLL'lerin sürüm numaralarını ve yollarını raporlamak için bu anahtarı kullanın. Application Insights SDK'sı da dahil olmak üzere herhangi bir DLL sürümünü tanımlamanız gerekiyorsa bu seçeneği kullanın.
-InspectProcess
İsteğe bağlı. IIS'nin çalışıp çalışmadığını bildirmek için bu anahtarı kullanın. Gerekli DLL'lerin IIS çalışma zamanına yüklenip yüklenmediğini belirlemek için dış araçları indirir.
Bu işlem herhangi bir nedenle başarısız olursa şu komutları el ile çalıştırabilirsiniz:
- /status iisreset.exe
- handle64.exe -p w3wp | findstr /I "InstrumentationEngine AI. ApplicationInsights"
- listdlls64.exe w3wp | findstr /I "InstrumentationEngine AI ApplicationInsights"
-Force
İsteğe bağlı. Yalnızca InspectProcess ile kullanılır. Daha fazla araç indirilmeden önce görüntülenen kullanıcı istemini atlamak için bu anahtarı kullanın.
Set-ApplicationInsightsMonitoringConfig
Tam yeniden yükleme yapmadan yapılandırma dosyasını ayarlar. Değişikliklerinizin etkili olması için IIS'yi yeniden başlatın.
Önemli
Bu cmdlet, Yönetici izinlerine sahip bir PowerShell oturumu gerektirir.
Örnekler
Tek bir izleme anahtarına sahip örnek
Bu örnekte, geçerli bilgisayardaki tüm uygulamalara tek bir izleme anahtarı atanır.
Enable-ApplicationInsightsMonitoring -InstrumentationKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
İzleme anahtarı eşlemesi içeren örnek
Bu örnekte:
MachineFilter
joker karakter kullanarak geçerli bilgisayarla eşleşir'.*'
.AppFilter='WebAppExclude'
birnull
izleme anahtarı sağlar. Belirtilen uygulama izlenmedi.AppFilter='WebAppOne'
belirtilen uygulamaya benzersiz bir izleme anahtarı atar.AppFilter='WebAppTwo'
belirtilen uygulamaya benzersiz bir izleme anahtarı atar.AppFilter
'.*'
, henüz eşleşmediği web uygulamalarıyla eşleştirmek için joker karakteri kullanır ve varsayılan bir izleme anahtarı atar.- Okunabilirlik için boşluklar eklenir.
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'}})
Parametreler
-InstrumentationKey
Gerekli. Hedef bilgisayardaki tüm uygulamalar tarafından kullanılmak üzere tek bir izleme anahtarı sağlamak için bu parametreyi kullanın.
-InstrumentationKeyMap
Gerekli. Birden çok izleme anahtarı ve her uygulama tarafından kullanılan izleme anahtarlarının eşlemesini sağlamak için bu parametreyi kullanın.
ayarlayarak MachineFilter
birkaç bilgisayar için tek bir yükleme betiği oluşturabilirsiniz.
Önemli
Uygulamalar, kuralların sağlandığı sırayla kurallarla eşleşir. Bu nedenle, önce en belirli kuralları ve en son en genel kuralları belirtmeniz gerekir.
Şema
@(@{MachineFilter='.*';AppFilter='.*';InstrumentationKey='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'})
- MachineFilter , bilgisayar veya VM adının gerekli bir C# kayıt defteridir.
- '.*' tümüyle eşleşir
- 'ComputerName' yalnızca belirtilen ada sahip bilgisayarlarla eşleşir.
- AppFilter , bilgisayar veya VM adının gerekli bir C# regex'idir.
- '.*' tümüyle eşleşir
- 'ApplicationName' yalnızca belirtilen ada sahip IIS uygulamalarıyla eşleşir.
- Önceki iki filtreyle eşleşen uygulamaların izlenmesini etkinleştirmek için InstrumentationKey gereklidir.
- İzlemeyi dışlayacak kurallar tanımlamak istiyorsanız bu değeri null bırakın.
-Ayrıntılı
Ortak parametre. Ayrıntılı günlükleri görüntülemek için bu anahtarı kullanın.
Çıktı
Varsayılan olarak çıkış yoktur.
-InstrumentationKey aracılığıyla yapılandırma dosyasını ayarlama işleminin ayrıntılı çıktısı örneği
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
-InstrumentationKeyMap aracılığıyla yapılandırma dosyasını ayarlama işleminin ayrıntılı çıktısı örneği
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
Kodsuz ekleme çalışma zamanından ETW Olayları toplar. Bu cmdlet, PerfView çalıştırmaya alternatiftir.
Olaylar toplanır, konsola gerçek zamanlı olarak yazdırılır ve bir ETL dosyasına kaydedilir. Daha fazla araştırma için çıkış ETL dosyasını PerfView ile açabilirsiniz.
Bu cmdlet, zaman aşımı süresine (varsayılan 5 dakika) ulaşana veya el ile durdurulana (Ctrl + C
) kadar çalışır.
Örnekler
Olayları toplama
Normalde uygulamanızın neden izlenmediğini araştırmak için olayları toplamanızı isteriz.
Kodsuz ekleme çalışma zamanı, IIS başlatıldığında ve uygulamanız başlatıldığında ETW olayları yayar.
Bu olayları toplamak için:
- Yönetici ayrıcalıklarına sahip bir cmd konsolunda, IIS'yi ve tüm web uygulamalarını durdurmak için komutunu yürütür
iisreset /stop
. - Bu cmdlet'i yürüt
- Yönetici ayrıcalıklarına sahip bir cmd konsolunda IIS'yi başlatmak için komutunu yürütür
iisreset /start
. - Uygulamanıza göz atmayı deneyin.
- Uygulamanızın yüklenmesi tamamlandıktan sonra uygulamayı el ile durdurabilir (
Ctrl + C
) veya zaman aşımını bekleyebilirsiniz.
Hangi olayların toplanması gerekiyor?
Olayları toplarken üç seçeneğiniz vardır:
- Application Insights SDK'sından yayılan olayları toplamak için anahtarını
-CollectSdkEvents
kullanın. - Application Insights Aracısı ve Redfield Çalışma Zamanı tarafından yayılan olayları toplamak için anahtarını
-CollectRedfieldEvents
kullanın. Bu günlükler IIS ve uygulama başlatma tanılarken yararlıdır. - Her iki olay türünü de toplamak için her iki anahtarı da kullanın.
- Varsayılan olarak, anahtar belirtilmezse her iki olay türü de toplanır.
Parametreler
-MaxDurationInMinutes
isteğe bağlı. Bu betiğin olayları ne kadar süreyle toplaması gerektiğini ayarlamak için bu parametreyi kullanın. Varsayılan değer 5 dakikadır.
-LogDirectory
isteğe bağlı. ETL dosyasının çıkış dizinini ayarlamak için bu anahtarı kullanın. Varsayılan olarak, bu dosya PowerShell Modülleri dizininde oluşturulur. Betik yürütme sırasında tam yol görüntülenir.
-CollectSdkEvents
isteğe bağlı. Application Insights SDK olaylarını toplamak için bu anahtarı kullanın.
-CollectRedfieldEvents
isteğe bağlı. Application Insights Aracısı'ndan ve Redfield çalışma zamanından olayları toplamak için bu anahtarı kullanın.
-Ayrıntılı
Ortak parametre. Ayrıntılı günlüklerin çıktısını almak için bu anahtarı kullanın.
Çıktı
Uygulama başlatma günlükleri örneği
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...
Sürüm notu güncelleştirmeleri burada listelenmiştir.
2.0.0
- Application Insights .NET/.NET Core SDK'sı olarak güncelleştirildi
2.21.0-redfield
2.0.0-beta3
- Application Insights .NET/.NET Core SDK'sı olarak güncelleştirildi
2.20.1-redfield
- Etkinleştirilmiş SQL sorgu koleksiyonu
2.0.0-beta2
Application Insights .NET/.NET Core SDK'sı olarak güncelleştirildi 2.18.1-redfield
2.0.0-beta1
ASP.NET Core otomatik yetkisiz erişim özelliği eklendi
Sık sorulan sorular
Bu bölüm, sık sorulan soruların yanıtlarını sağlar.
Application Insights Aracısı ara sunucu yüklemelerini destekliyor mu?
Evet. Application Insights Aracısını indirmenin birden çok yolu vardır:
- Bilgisayarınızda İnternet erişimi varsa, parametreleri kullanarak
-Proxy
PowerShell Galerisi ekleyebilirsiniz. - Ayrıca modülü el ile indirebilir ve bilgisayarınıza yükleyebilir veya doğrudan kullanabilirsiniz.
Bu seçeneklerin her biri ayrıntılı yönergelerde açıklanmıştır.
Application Insights Aracısı ASP.NET Core uygulamalarını destekliyor mu?
Evet. Application Insights Agent 2.0.0 ve sonraki sürümlerinde IIS'de barındırılan ASP.NET Core uygulamaları desteklenir.
Etkinleştirmenin başarılı olduğunu Nasıl yaparım? doğrulayın?
- Etkinleştirmenin başarılı olduğunu doğrulamak için Get-ApplicationInsightsMonitoringStatus cmdlet'ini kullanabilirsiniz.
Uygulamanızın telemetri gönderip göndermediğini hızla belirlemek için Canlı Ölçümler'i kullanın.
Şu anda telemetri gönderen tüm bulut rollerini listelemek için Log Analytics'i de kullanabilirsiniz:
union * | summarize count() by cloud_RoleName, cloud_RoleInstance
Ara sunucu geçişi Nasıl yaparım??
Ara sunucu geçişine ulaşmak için makine düzeyinde ara sunucu veya uygulama düzeyi ara sunucu yapılandırın. Bkz . DefaultProxy.
Örnek Web.config:
<system.net>
<defaultProxy>
<proxy proxyaddress="http://xx.xx.xx.xx:yyyy" bypassonlocal="true"/>
</defaultProxy>
</system.net>
Sorun giderme
Ayrılmış sorun giderme makalesine bakın.
Uygulama konağınızla alma hizmeti arasındaki bağlantıyı test etme
Application Insights SDK'ları ve aracıları, alma uç noktalarımıza REST çağrıları olarak alınabilmek için telemetri gönderir. PowerShell veya curl komutlarından ham REST istemcilerini kullanarak web sunucunuzdan veya uygulama konak makinenizden alma hizmeti uç noktalarına bağlantıyı test edebilirsiniz. Bkz . Azure İzleyici Application Insights'ta eksik uygulama telemetrisi sorunlarını giderme.
Sonraki adımlar
Telemetrinizi görüntüleyin:
- Performansı ve kullanımı izlemek için ölçümleri keşfedin.
- Sorunları tanılamak için olayları ve günlükleri arayın.
- Daha gelişmiş sorgular için Log Analytics'i kullanın.
- Panolar oluşturun.
Daha fazla telemetri ekleyin:
- Kullanılabilirliğe genel bakış
- Web sayfası kodundaki özel durumları görmek ve izleme çağrılarını etkinleştirmek için web istemcisi telemetrisi ekleyin.
- İzleme ve günlük çağrıları ekleyebilmek için Application Insights SDK'sını kodunuza ekleyin.
Application Insights Aracısı ile daha fazlasını yapın:
Geri Bildirim
Bu sayfayı yararlı buldunuz mu?