.NET, Node.js, Python ve Java uygulamaları için Azure Uygulaması Hizmeti'nde uygulama izlemeyi etkinleştirme
Makale
Çalışma zamanı izleme olarak da adlandırılan otomatik yetkisiz erişim, kod değişikliği veya gelişmiş yapılandırma gerektirmeden Azure Uygulaması Hizmeti için Application Insights'ı etkinleştirmenin en kolay yoludur. Belirli senaryonuza bağlı olarak, el ile izleme aracılığıyla daha gelişmiş izleme gerekip gerekmediğini değerlendirin.
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ş.
Hem otomatik yetkisiz erişim izleme hem de el ile SDK tabanlı izleme algılanırsa, yalnızca el ile izleme ayarları kabul edilir. Bu düzenleme yinelenen verilerin gönderilmesini engeller. Daha fazla bilgi edinmek için bkz . Sorun giderme.
Uygulama hizmetinizin sol gezinti menüsünde Application Insights'ı ve ardından Etkinleştir'i seçin.
Bu uygulama için yeni bir kaynak oluşturun veya mevcut bir Application Insights kaynağını seçin.
Not
Yeni bir kaynak oluşturmak için Tamam'ı seçtiğinizde, İzleme ayarlarını uygula seçeneğini belirlemeniz istenir. Devam'ı seçtiğinizde yeni Application Insights kaynağınız app service'inize bağlanır. Ardından uygulama hizmetiniz yeniden başlatılır.
Hangi kaynağın kullanılacağını belirttikten sonra Application Insights'ın uygulamanız için platform başına veri toplamasını nasıl istediğinizi seçebilirsiniz. ASP.NET Çekirdek koleksiyonu seçenekleri Önerilen veya Devre Dışı'dır.
Önemli
Hem otomatik yetkisiz erişim izleme hem de el ile SDK tabanlı izleme algılanırsa, yalnızca el ile izleme ayarları kabul edilir. Bu düzenleme yinelenen verilerin gönderilmesini engeller. Daha fazla bilgi edinmek için bkz . Sorun giderme.
Not
ve urlCompression birleşimi APPINSIGHTS_JAVASCRIPT_ENABLED desteklenmez. Daha fazla bilgi için bkz. Sorun giderme.
Azure portalında otomatik yetkisiz erişim
Uygulama hizmetinizin sol gezinti menüsünde Application Insights'ı ve ardından Etkinleştir'i seçin.
Bu uygulama için yeni bir kaynak oluşturun veya mevcut bir Application Insights kaynağını seçin.
Not
Yeni bir kaynak oluşturmak için Tamam'ı seçtiğinizde, İzleme ayarlarını uygula seçeneğini belirlemeniz istenir. Devam'ı seçtiğinizde yeni Application Insights kaynağınız app service'inize bağlanır. Ardından uygulama hizmetiniz yeniden başlatılır.
Hangi kaynağın kullanılacağını belirttikten sonra Application Insights'ın uygulamanız için platform başına veri toplamasını nasıl istediğinizi seçebilirsiniz. ASP.NET uygulama izleme varsayılan olarak iki farklı koleksiyon düzeyiyle açıktır: Önerilen ve Temel.
Aşağıdaki tabloda her yol için toplanan veriler özetlemektedir.
Veri
Önerilir
Temel
CPU, bellek ve G/Ç kullanım eğilimlerini ekler
Yes
Hayır
Kullanım eğilimlerini toplar ve kullanılabilirlik sonuçlarıyla işlemler arasında bağıntı sağlar
Yes
Yes
Ana işlem tarafından işlenmeyen özel durumları toplar
Yes
Yes
Örnekleme kullanıldığında yük altındaki APM ölçümü doğruluğunu geliştirir
Yes
Yes
Mikro hizmetler ile istek/bağımlılık sınırları arasında bağıntı sağlar
Uygulama hizmetinizin sol gezinti menüsünde Application Insights'ı ve ardından Etkinleştir'i seçin.
Bu uygulama için yeni bir kaynak oluşturun veya mevcut bir Application Insights kaynağını seçin.
Not
Yeni bir kaynak oluşturmak için Tamam'ı seçtiğinizde, İzleme ayarlarını uygula seçeneğini belirlemeniz istenir. Devam'ı seçtiğinizde yeni Application Insights kaynağınız app service'inize bağlanır. Ardından uygulama hizmetiniz yeniden başlatılır.
Önemli
Hem otomatik yetkisiz erişim izleme hem de el ile SDK tabanlı izleme algılanırsa, yalnızca el ile izleme ayarları kabul edilir. Bu düzenleme yinelenen verilerin gönderilmesini engeller. Daha fazla bilgi edinmek için Sorun Giderme bölümüne bakın.
Not
Otomatik olarak eklenen aracıyıAPPLICATIONINSIGHTS_CONFIGURATION_CONTENT, App Service Ortamı değişkeni dikey penceresindeki ortam değişkenini kullanarak yapılandırabilirsiniz. Bu ortam değişkeni aracılığıyla geçirilebilen yapılandırma seçenekleri hakkında ayrıntılı bilgi için bkz . yapılandırma Node.js.
Node.js için Application Insights, hem kod tabanlı hem de özel kapsayıcılar olan Linux'ta Azure Uygulaması Hizmeti ve kod tabanlı uygulamalar için Windows'ta App Service ile tümleşiktir. Tümleştirme genel önizleme aşamasındadır.
Azure portalında otomatik yetkisiz erişim
Uygulama hizmetinizin sol gezinti menüsünde Application Insights'ı ve ardından Etkinleştir'i seçin.
Bu uygulama için yeni bir kaynak oluşturun veya mevcut bir Application Insights kaynağını seçin.
Not
Yeni bir kaynak oluşturmak için Tamam'ı seçtiğinizde, İzleme ayarlarını uygula seçeneğini belirlemeniz istenir. Devam'ı seçtiğinizde yeni Application Insights kaynağınız app service'inize bağlanır. Ardından uygulama hizmetiniz yeniden başlatılır.
Hangi kaynağı kullanacağınızı belirttikten sonra, kullanmaya hazırsınız demektir.
Azure İzleyici OpenTelemetry Distro veya Azure İzleyici OpenTelemetry Exporter gibi kodunuzda OpenTelemetry'nin el ile izlemesini kullanmıyorsanız App Service'te otomatik müdahaleyi kullanın. Bu, yinelenen verilerin gönderilmesini önlemektir. Bu konuda daha fazla bilgi edinmek için bu makaledeki sorun giderme bölümüne bakın.
Python için Application Insights, kod tabanlı Linux Azure Uygulaması Hizmeti ile tümleştirilir. Tümleştirme genel önizleme aşamasındadır ve genel kullanıma sunulan Python SDK'sını ekler. Kodunuzdaki popüler Python kitaplıklarını izleyip bağımlılıkları, günlükleri ve ölçümleri otomatik olarak toplamanıza ve ilişkilendirmenize olanak sağlar. Hangi çağrıların ve ölçümlerin toplandığını görmek için bkz. Python kitaplıkları
Günlük telemetrisi kök günlükçü düzeyinde toplanır. Python'ın yerel günlük hiyerarşisi hakkında daha fazla bilgi edinmek için Python günlüğü belgelerini ziyaret edin.
Önkoşullar
Python sürüm 3.11 veya öncesi.
App Service kod olarak dağıtılmalıdır. Özel kapsayıcılar desteklenmez.
Azure portalında otomatik yetkisiz erişim
Uygulama hizmetinizin sol gezinti menüsünde Application Insights'ı ve ardından Etkinleştir'i seçin.
Bu uygulama için yeni bir kaynak oluşturun veya mevcut bir Application Insights kaynağını seçin.
Not
Yeni bir kaynak oluşturmak için Tamam'ı seçtiğinizde, İzleme ayarlarını uygula seçeneğini belirlemeniz istenir. Devam'ı seçtiğinizde yeni Application Insights kaynağınız app service'inize bağlanır. Ardından uygulama hizmetiniz yeniden başlatılır.
Kaynağı belirtirsiniz ve kullanıma hazırdır.
Python kitaplıkları
İzlemeden sonra, şu Python kitaplıklarından çağrıları ve ölçümleri toplarsınız:
OpenTelemetry Django izlemesini kullanmak için App Service ayarlarında ortam değişkenini uygulama klasörünüzden ayarlar modülünüze işaret eden şekilde ayarlamanız DJANGO_SETTINGS_MODULE gerekir.
OpenTelemetry topluluğundan izleme kitaplıkları eklediğinizde otomatik olarak daha fazla veri toplayabilirsiniz.
Dikkat
Topluluk izleme kitaplıklarının kalitesini desteklemiyoruz veya garanti vermiyoruz. Dağıtım, gönderi veya geri bildirim topluluğumuzda oy verme önerisinde bulunmak için. Bazıları deneysel OpenTelemetry belirtimlerini temel alır ve gelecekteki hataya neden olabilecek değişikliklere neden olabilir.
Topluluk OpenTelemetry Instrumentation Library'yi eklemek için uygulamanızın requirements.txt dosyası aracılığıyla yükleyin. OpenTelemetry autoinstrumentation, tüm yüklü kitaplıkları otomatik olarak alır ve bu kitaplıkları izler. Topluluk kitaplıklarının listesini burada bulabilirsiniz.
Sürüm 2.8.9'dan yükseltme, ek işlem yapılmadan otomatik olarak gerçekleşir. Yeni izleme bitleri arka planda hedef uygulama hizmetine teslim edilir ve uygulama yeniden başlatıldığında alınır.
Uzantının hangi sürümünü çalıştırdığınızı denetlemek için adresine https://yoursitename.scm.azurewebsites.net/ApplicationInsightsgidin.
1.0.0 - 2.6.5 sürümlerinden yükseltme
Sürüm 2.8.9'dan başlayarak, önceden yüklenmiş site uzantısı kullanılır. Önceki bir sürümü kullanıyorsanız, iki yoldan biriyle güncelleştirebilirsiniz:
Azure portalı aracılığıyla etkinleştirerek yükseltme: App Service için Application Insights uzantısı yüklü olsa bile, kullanıcı arabiriminde yalnızca Etkinleştir düğmesi gösterilir. Arka planda eski özel site uzantısı kaldırılır.
Önceden yüklenmiş site uzantısını ApplicationInsightsAgentetkinleştirmek için uygulama ayarlarını yapın. Daha fazla bilgi için bkz . PowerShell aracılığıyla etkinleştirme.
Azure Uygulaması Hizmeti için Application Insights uzantısı adlı özel site uzantısını el ile kaldırın.
Yükseltme 2.5.1'den önceki bir sürümden yapılırsa, DLL'lerin uygulama bölmesi klasöründen kaldırılıp kaldırılmadığını ApplicationInsights denetleyin. Daha fazla bilgi için bkz. Sorun giderme.
2.8.9 ve sonraki sürümlerden yükseltme
Sürüm 2.8.9'dan yükseltme, ek işlem yapılmadan otomatik olarak gerçekleşir. Yeni izleme bitleri arka planda hedef uygulama hizmetine teslim edilir ve uygulama yeniden başlatıldığında alınır.
Uzantının hangi sürümünü çalıştırdığınızı denetlemek için adresine https://yoursitename.scm.azurewebsites.net/ApplicationInsightsgidin.
1.0.0 - 2.6.5 sürümlerinden yükseltme
Sürüm 2.8.9'dan başlayarak, önceden yüklenmiş site uzantısı kullanılır. Önceki bir sürümü kullanıyorsanız, iki yoldan biriyle güncelleştirebilirsiniz:
Azure portalı aracılığıyla etkinleştirerek yükseltme: App Service için Application Insights uzantısı yüklü olsa bile, kullanıcı arabiriminde yalnızca Etkinleştir düğmesi gösterilir. Arka planda eski özel site uzantısı kaldırılır.
Önceden yüklenmiş site uzantısını ApplicationInsightsAgentetkinleştirmek için uygulama ayarlarını yapın. Daha fazla bilgi için bkz . PowerShell aracılığıyla etkinleştirme.
Azure Uygulaması Hizmeti için Application Insights uzantısı adlı özel site uzantısını el ile kaldırın.
Yükseltme 2.5.1'den önceki bir sürümden yapılırsa, DLL'lerin uygulama bölmesi klasöründen kaldırılıp kaldırılmadığını ApplicationInsights denetleyin. Daha fazla bilgi için bkz. Sorun giderme.
Application Insights Java sürümü, App Service güncelleştirmelerinin bir parçası olarak otomatik olarak güncelleştirilir. Application Insights Java aracısının en son sürümünde düzelten bir sorunla karşılaşırsanız, bunu el ile güncelleştirebilirsiniz.
Java aracısı jar dosyasını App Service'e yükleyin.
a. İlk olarak, buradaki yönergeleri izleyerek Azure CLI'nın en son sürümünü edinin.
b. Ardından, buradaki yönergeleri izleyerek Application Insights Java aracısının en son sürümünü edinin.
c. Ardından, aşağıdaki komutu kullanarak Java aracısı jar dosyasını App Service'e dağıtın: az webapp deploy --src-path applicationinsights-agent-{VERSION_NUMBER}.jar --target-path java/applicationinsights-agent-{VERSION_NUMBER}.jar --type static --resource-group {YOUR_RESOURCE_GROUP} --name {YOUR_APP_SVC_NAME}. Alternatif olarak, aracıyı Maven eklentisi aracılığıyla dağıtmak için bu kılavuzu kullanabilirsiniz.
Azure portalındaki Application Insights sekmesi aracılığıyla Application Insights'ı devre dışı bırakın.
Aracı jar dosyası karşıya yüklendikten sonra App Service yapılandırmaları'na gidin. Linux için Başlangıç Komutu kullanmanız gerekiyorsa JVM bağımsız değişkenlerini ekleyin:
Başlangıç Komutu JavaSE veya CATALINA_OPTS Tomcat için uygun değildirJAVA_OPTS.
Başlangıç Komutunu kullanmıyorsanız, JavaSE veya CATALINA_OPTS Tomcat için değeriyle -javaagent:{PATH_TO_THE_AGENT_JAR}/applicationinsights-agent-{VERSION_NUMBER}.jaryeni bir ortam değişkeni JAVA_OPTSoluşturun.
Değişiklikleri uygulamak için uygulamayı yeniden başlatın.
Not
JavaSE veya CATALINA_OPTS Tomcat ortam değişkeni için ayarını JAVA_OPTS yaparsanız, Azure portalında Application Insights'ı devre dışı bırakmanız gerekir. Alternatif olarak, Azure portalından Application Insights'ı etkinleştirmeyi tercih ediyorsanız App Service yapılandırma ayarlarındaki JavaSE veya CATALINA_OPTS Tomcat değişkenini ayarlamadığınızdan JAVA_OPTS emin olun.
Application Insights Node.js sürümü App Service güncelleştirmelerinin bir parçası olarak otomatik olarak güncelleştirilir ve el ile güncelleştirilemez.
Application Insights SDK'sının en son sürümünde düzelten bir sorunla karşılaşırsanız, otomatik yetkisiz erişimi kaldırabilir ve uygulamanızı en son SDK sürümüyle el ile izleyebilirsiniz.
Application Insights Python sürümü, App Service güncelleştirmelerinin bir parçası olarak otomatik olarak güncelleştirilir ve el ile güncelleştirilemez.
Application Insights SDK'sının en son sürümünde düzelten bir sorunla karşılaşırsanız, otomatik yetkisiz erişimi kaldırabilir ve uygulamanızı en son SDK sürümüyle el ile izleyebilirsiniz.
Şu anda ASP.NET Core için izleme uzantısını yapılandırma seçenekleri sunmıyoruz.
Daha önce applicationinsights.config dosyası aracılığıyla denetleyebileceğiniz örneklemeyi yapılandırmak için, artık ilgili ön eke MicrosoftAppInsights_AdaptiveSamplingTelemetryProcessorsahip uygulama ayarları aracılığıyla bu örneklemeyle etkileşim kurabilirsiniz.
Örneğin, ilk örnekleme yüzdesini değiştirmek için uygulamasının MicrosoftAppInsights_AdaptiveSamplingTelemetryProcessor_InitialSamplingPercentage ve değerini 100oluşturabilirsiniz.
Örneklemeyi devre dışı bırakmak için değerine 100ayarlayınMicrosoftAppInsights_AdaptiveSamplingTelemetryProcessor_MinSamplingPercentage.
Desteklenen uyarlamalı örnekleme telemetri işlemcisi ayarları ve tanımlarının listesi için kod ve örnekleme belgelerine bakın.
Hangi kaynağın kullanılacağını belirttikten sonra Java aracısını yapılandırabilirsiniz. Java aracısını yapılandırmazsanız varsayılan yapılandırmalar uygulanır.
Tüm yapılandırmalar kullanılabilir. Geçerli bir json dosyası yapıştırmanız yeterlidir. bağlantı dizesi ve önizlemedeki tüm yapılandırmaları hariç tutun; genel kullanıma sunuldukları için şu anda önizleme aşamasında olan öğeleri ekleyebilirsiniz.
Azure portalı aracılığıyla yapılandırmaları değiştirdiğinizde, APPLICATIONINSIGHTS_CONFIGURATION_FILE ortam değişkeni otomatik olarak doldurulur ve App Service ayarları panelinde görünür. Bu değişken, Java uygulamanızın Azure portalı yapılandırma metin kutusuna yapıştırdığınız json içeriğinin tamamını içerir.
Node.js aracısı JSON kullanılarak yapılandırılabilir. Ortam değişkenini APPLICATIONINSIGHTS_CONFIGURATION_CONTENT JSON dizesine ayarlayın veya ortam değişkenini APPLICATIONINSIGHTS_CONFIGURATION_FILE JSON içeren dosya yoluna ayarlayın.
olarak ayarlanırsa None, günlük telemetrisinin toplanmasını ve dışarı aktarımını devre dışı bırakır.
OTEL_METRICS_EXPORTER
olarak Noneayarlanırsa, ölçüm telemetrisinin toplanmasını ve dışarı aktarımını devre dışı bırakır.
OTEL_TRACES_EXPORTER
olarak Noneayarlanırsa, dağıtılmış izleme telemetrisinin toplanmasını ve dışarı aktarımını devre dışı bırakır.
OTEL_BLRP_SCHEDULE_DELAY
Günlüğe kaydetme dışarı aktarma aralığını milisaniye cinsinden belirtir. Varsayılan değer 5000'tir.
OTEL_BSP_SCHEDULE_DELAY
Dağıtılmış izleme dışarı aktarma aralığını milisaniye cinsinden belirtir. Varsayılan değer 5000'tir.
OTEL_TRACES_SAMPLER_ARG
Örneklenecek dağıtılmış izleme telemetrisinin oranını belirtir. Kabul edilen değerler 0 ile 1 arasında değişir. Varsayılan değer 1.0'dır ve telemetri örneği alınmaz.
OTEL_PYTHON_DISABLED_INSTRUMENTATIONS
Devre dışı bırakacak OpenTelemetry izlemelerini belirtir. Devre dışı bırakıldığında, izlemeler otomatik yetkisiz erişim kapsamında yürütülemez. Küçük harf kitaplık adlarının virgülle ayrılmış listesini kabul eder. Örneğin, Psycopg2 ve FastAPI izlemelerini devre dışı bırakmak için "psycopg2,fastapi" olarak ayarlayın. Varsayılan olarak boş bir listeye sahiptir ve desteklenen tüm izlemeleri etkinleştirir.
İstemci tarafı izleme, uygulama ayarının APPINSIGHTS_JAVASCRIPT_ENABLED mevcut olup olmamasına bakılmaksızın Önerilen koleksiyona sahip ASP.NET Core uygulamaları için varsayılan olarak etkinleştirilir.
İstemci tarafı izlemeyi devre dışı bırakmak istiyorsanız:
Ayarlar>Yapılandırma'yı seçin.
Uygulama ayarları'nın altında, aşağıdaki bilgileri içeren yeni bir uygulama ayarı oluşturun:
Ad: APPINSIGHTS_JAVASCRIPT_ENABLED
Değer: false
Ayarları kaydedin . Uygulamanızı yeniden başlatın.
İstemci tarafı izleme, ASP.NET için bir kabuldür. İstemci tarafı izlemeyi etkinleştirmek için:
Ayarlar>Yapılandırma'yı seçin.
Uygulama ayarları'nın altında yeni bir uygulama ayarı oluşturun:
Ad: APPINSIGHTS_JAVASCRIPT_ENABLED girin.
Değer: True girin.
Ayarları kaydedin ve uygulamanızı yeniden başlatın.
İstemci tarafı izlemeyi devre dışı bırakmak için, uygulama ayarlarından ilişkili anahtar değer çiftini kaldırın veya değeri false olarak ayarlayın.
İstemci tarafı izlemeyi etkinleştirmek için Java aracısı, uygun bağlantı dizesi yapılandırma da dahil olmak üzere tarayıcınızın HTML sayfalarına Tarayıcı SDK Yükleyicisi 'ni (Önizleme) ekleyebilir.
Varsayılan modda, en iyi performansı sağlamak için yalnızca temel özellikler etkinleştirilir.
disabled veya recommended.
XDT_MicrosoftApplicationInsights_PreemptSdk
Yalnızca ASP.NET Core uygulamaları için. Application Insights SDK'sı ile Birlikte Çalışma (birlikte çalışma) sağlar. Uzantıyı SDK ile yan yana yükler ve telemetri göndermek için kullanır. (Application Insights SDK'sını devre dışı bırakır.)
1
Uygulama ayarları tanımları
Uygulama ayarı adı
Tanım
Değer
ApplicationInsightsAgent_EXTENSION_VERSION
Çalışma zamanı izlemeyi denetleyen ana uzantı.
~2
XDT_MicrosoftApplicationInsights_Mode
Varsayılan modda, en iyi performansı sağlamak için yalnızca temel özellikler etkinleştirilir.
default veya recommended
InstrumentationEngine_EXTENSION_VERSION
İkili yeniden yazma altyapısının InstrumentationEngine açık olup olmadığını denetler. Bu ayarın performans üzerindeki etkileri vardır ve soğuk başlatma/başlatma süresini etkiler.
~1
XDT_MicrosoftApplicationInsights_BaseExtensions
BAĞıMLıLıK çağrılarıyla birlikte SQL ve Azure tablo metninin yakalanıp yakalanmadığını denetler. Performans uyarısı: Uygulama soğuk başlatma süresi etkileniyor. Bu ayar için gerekir InstrumentationEngine.
~1
Uygulama ayarları tanımları
Uygulama ayarı adı
Tanım
Değer
ApplicationInsightsAgent_EXTENSION_VERSION
Çalışma zamanı izlemeyi denetleyen ana uzantı.
~2 windows veya ~3 Linux'ta.
XDT_MicrosoftApplicationInsights_Java
Java aracısının dahil olup olmadığını denetlemek için bayrak.
0 veya 1 (yalnızca Windows'ta geçerlidir).
Not
Java uygulamaları için Snapshot Debugger kullanılamaz.
Uygulama ayarları tanımları
Uygulama ayarı adı
Tanım
Değer
ApplicationInsightsAgent_EXTENSION_VERSION
Çalışma zamanı izlemeyi denetleyen ana uzantı.
~2 windows veya ~3 Linux'ta.
XDT_MicrosoftApplicationInsights_NodeJS
Node.js aracısının dahil olup olmadığını denetlemek için bayrak.
Application Insights kaynağınız için bağlantı dizesi.
Örnek: abcd1234-ab12-cd34-abcd1234abcd
ApplicationInsightsAgent_EXTENSION_VERSION
Çalışma zamanı izlemeyi denetleyen ana uzantı.
~3
Not
Python uygulamaları için Snapshot Debugger kullanılamaz.
Azure Resource Manager ile App Service uygulama ayarları
Azure Uygulaması Hizmeti için uygulama ayarları Azure Resource Manager şablonlarıyla yönetilebilir ve yapılandırılabilir. Resource Manager otomasyonu ile yeni App Service kaynaklarını dağıtırken veya mevcut kaynakların ayarlarını değiştirirken bu yöntemi kullanabilirsiniz.
App Service kaynağı için uygulama ayarları JSON'un temel yapısı:
Application Insights kaynağı oluşturmayı otomatikleştirme ve yeni oluşturduğunuz App Service kaynağınıza bağlanma
Varsayılan Application Insights ayarlarıyla bir Resource Manager şablonu oluşturmak için, Application Insights'ın etkin olduğu yeni bir web uygulaması oluşturacak gibi işlemi başlatın.
İstediğiniz web uygulaması bilgileriyle yeni bir App Service kaynağı oluşturun. İzleme sekmesinde Application Insights'i etkinleştirin.
Gözden geçir ve oluştur’u seçin. Ardından Otomasyon için şablon indir'i seçin.
Bu seçenek, tüm gerekli ayarların yapılandırıldığı en son Resource Manager şablonunu oluşturur.
Aşağıdaki örnekte, tüm örneklerini AppMonitoredSite site adınız ile değiştirin:
Not
Windows kullanıyorsanız olarak ayarlayın ApplicationInsightsAgent_EXTENSION_VERSION~2. Linux kullanıyorsanız olarak ayarlayın ApplicationInsightsAgent_EXTENSION_VERSION~3.
PowerShell aracılığıyla uygulama izlemeyi etkinleştirmek için yalnızca temel uygulama ayarlarının değiştirilmesi gerekir. Aşağıdaki örnek, kaynak grubunda AppMonitoredRGadlı AppMonitoredSite bir web sitesi için uygulama izlemeyi etkinleştirir. İzleme anahtarına gönderilecek 012345678-abcd-ef01-2345-6789abcd verileri yapılandırıyor.
Windows kullanıyorsanız, ApplicationInsightsAgent_EXTENSION_VERSION olarak ~2ayarlayın. Linux kullanıyorsanız, ApplicationInsightsAgent_EXTENSION_VERSION olarak ~3ayarlayın.
Ayrıntılar projenin türüne bağlıdır. Aşağıdaki liste bir web uygulaması örneğidir.
Projenize dosya ekler:
ApplicationInsights.config
ai.js
NuGet paketlerini yükler:
Application Insights API'si: Çekirdek API
Web Uygulamaları için Application Insights API'si: Sunucudan telemetri göndermek için kullanılır
JavaScript Uygulamaları için Application Insights API'si: İstemciden telemetri göndermek için kullanılır
Paketlerde derlemeleri içerir:
Microsoft.ApplicationInsights
Microsoft.ApplicationInsights.Platform
Öğeleri şu öğelere ekler:
Web.config
packages.config
Kod parçacıklarını Application Insights kaynak kimliğiyle başlatmak için istemci ve sunucu koduna ekler. Örneğin, bir MVC uygulamasında kod, Views/Shared/_Layout.cshtml ana sayfasına eklenir. Yalnızca yeni projeler için, mevcut bir projeye Application Insights'ı el ile eklersiniz.
Application Insights ile Azure Uygulaması Hizmeti ölçümleri arasındaki standart ölçümler arasındaki fark nedir?
Application Insights, uygulamaya yapılan istekler için telemetri toplar. WebApps/WebServer'da hata oluşursa ve istek kullanıcı uygulamasına ulaşmadıysa, Application Insights'ın bu konuda telemetrisi yoktur.
Application Insights tarafından hesaplanan süre serverresponsetime , Web Apps tarafından gözlemlenen sunucu yanıt süresiyle eşleşmelidir. Bunun nedeni Application Insights'ın yalnızca isteğin kullanıcı uygulamasına ulaştığı süreyi saymadır. İstek WebServer'da takılır veya kuyruğa alınırsa, bekleme süresi Web Apps ölçümlerine dahil edilir ancak Application Insights ölçümlerine eklenmez.
Sorun giderme
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.
App Service'te çalışma zamanlarıyla ASP.NET Core bir web uygulaması oluşturduğunuzda, başlangıç web sitesi olarak tek bir statik HTML sayfası dağıtır. Varsayılan şablonla ilgili bir sorunu gidermenizi önermeyiz. Bir sorunu gidermeden önce bir uygulama dağıtın.
Telemetri eksik
Windows
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION değerine ~2ayarlandığını denetleyin.
https://yoursitename.scm.azurewebsites.net/ApplicationInsights adresine göz atın.
Application Insights Uzantısı Durumunun Pre-Installed Site Extension, version 2.8.x.xxxx, is running.
Durum kaynağının mevcut olduğunu ve gibi Status source D:\home\LogFiles\ApplicationInsights\status\status_RD0003FF0317B6_4248_1.jsongöründüğünü onaylayın.
Benzer bir değer yoksa, uygulamanın şu anda çalışmadığını veya desteklenmediğini gösterir. Uygulamanın çalıştığından emin olmak için, çalışma zamanı bilgilerinin kullanılabilir duruma gelmesini sağlayan uygulama URL'sini/uygulama uç noktalarını el ile ziyaret etmeyi deneyin.
IKeyExists öğesinin olduğunu Trueonaylayın. iseFalse, uygulama ayarlarınıza ikey GUID'nizle ve APPLICATIONINSIGHTS_CONNECTION_STRING ekleyinAPPINSIGHTS_INSTRUMENTATIONKEY.
Uygulamanız herhangi bir Application Insights paketine başvuruyorsa, App Service tümleştirmesinin etkinleştirilmesi etkili olmayabilir ve veriler Application Insights'ta görünmeyebilir. Uygulamanızı daha önce ASP.NET Core SDK ile izlemeniz veya izleme girişiminde bulunmuş olmanız buna bir örnek olabilir. Sorunu çözmek için Azure portalında Application Insights SDK ile Birlikte Çalışma'yı açın.
Önemli
Bu işlev önizleme aşamasındadır.
Application Insights SDK'sı başlangıçta kullanılmış veya kullanılmaya çalışılsa bile veriler kodsuz bir yaklaşım kullanılarak gönderilir.
Önemli
Uygulama herhangi bir telemetri göndermek için Application Insights SDK'sını kullandıysa, telemetri devre dışı bırakılır. Başka bir deyişle, özel telemetri (örneğin, herhangi bir Track*() yöntem) ve özel ayarlar (örnekleme gibi) devre dışı bırakılır.
Linux
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION değerine ~3ayarlandığını denetleyin.
https://your site name.scm.azurewebsites.net/ApplicationInsights adresine göz atın.
Bu site içinde şunları onaylayın:
Durum kaynağı var ve gibi Status source /var/log/applicationinsights/status_abcde1234567_89_0.jsongörünüyor.
Değer Auto-Instrumentation enabled successfully görüntülenir. Benzer bir değer yoksa, uygulamanın çalışmadığını veya desteklenmediğini gösterir. Uygulamanın çalıştığından emin olmak için, çalışma zamanı bilgilerinin kullanılabilir duruma gelmesini sağlayan uygulama URL'sini/uygulama uç noktalarını el ile ziyaret etmeyi deneyin.
IKeyExists şudur: True. iseFalse, uygulama ayarlarınıza ikey GUID'nizle ve APPLICATIONINSIGHTS_CONNECTION_STRING ekleyinAPPINSIGHTS_INSTRUMENTATIONKEY.
Web uygulamalarıyla dağıtılan varsayılan web sitesi otomatik istemci tarafı izlemeyi desteklemez
App Service'te ASP.NET Core çalışma zamanları ile bir web uygulaması oluşturduğunuzda, başlangıç web sitesi olarak tek bir statik HTML sayfası dağıtır. Statik web sayfası da bir ASP yükler. IIS'de NET tarafından yönetilen web bölümü. Bu davranış, kodsuz sunucu tarafı izlemenin test edilmesine olanak tanır ancak otomatik istemci tarafı izlemeyi desteklemez.
Bir App Service web uygulamasında ASP.NET Core için kodsuz sunucu ve istemci tarafı izlemeyi test etmek istiyorsanız, ASP.NET Core web uygulaması oluşturmak için resmi kılavuzları izlemenizi öneririz. Daha sonra, izlemeyi etkinleştirmek için geçerli makaledeki yönergeleri kullanın.
PHP ve WordPress desteklenmez
PHP ve WordPress siteleri desteklenmez. Şu anda bu iş yüklerinin sunucu tarafı izlemesi için resmi olarak desteklenen bir SDK/aracı yoktur. PHP veya WordPress sitesindeki istemci tarafı işlemlerini izlemek için JavaScript SDK'sını kullanarak istemci tarafı JavaScript'i web sayfalarınıza ekleyin.
Aşağıdaki tabloda, bu değerlerin ne anlama gelenleri, bunların temel nedenleri ve önerilen düzeltmeler hakkında bir açıklama sağlanmaktadır.
Sorun değeri
Açıklama
Düzelt
AppAlreadyInstrumented:true
Bu değer, uzantının sdk'nın uygulamada zaten mevcut olan bazı yönlerini algılayıp geri döndüğünü gösterir. veya başvurusu bu değere Microsoft.ApplicationInsights.AspNetCoreMicrosoft.ApplicationInsights neden olabilir.
Başvuruları kaldırın. Bu başvurulardan bazıları varsayılan olarak belirli Visual Studio şablonlarından eklenir. Visual Studio'nun eski sürümleri başvurusu Microsoft.ApplicationInsights.
AppAlreadyInstrumented:true
Önceki bir dağıtımdaki uygulama klasöründe DLL bulunması Microsoft.ApplicationsInsights da bu değere neden olabilir.
Bu DLL'lerin kaldırıldığından emin olmak için uygulama klasörünü temizleyin. Hem yerel uygulamanızın bin dizinini hem de App Service'te wwwroot dizinini denetleyin. (App Service web uygulamanızın wwwroot dizinini denetlemek için Gelişmiş Araçlar (Kudu) >Hata ayıklama konsolu>CMD>home\site\wwwroot).
IKeyExists:false
Bu değer, izleme anahtarının uygulama ayarında APPINSIGHTS_INSTRUMENTATIONKEYbulunmadığını gösterir. Olası nedenler arasında değerleri yanlışlıkla kaldırma veya otomasyon betiğindeki değerleri ayarlamayı unutma sayılabilir.
Ayarın App Service uygulama ayarlarında mevcut olduğundan emin olun.
Not
App Service'te çalışma zamanlarıyla ASP.NET bir web uygulaması oluşturduğunuzda, başlangıç web sitesi olarak tek bir statik HTML sayfası dağıtır. Varsayılan şablonla ilgili bir sorunu gidermenizi önermeyiz. Bir sorunu gidermeden önce bir uygulama dağıtın.
Telemetri eksik
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION değerine ~2ayarlandığını denetleyin.
https://yoursitename.scm.azurewebsites.net/ApplicationInsights adresine göz atın.
ve'nin Application Insights Extension StatusPre-Installed Site Extension, version 2.8.x.xxxx çalıştığını onaylayın.
Çalışmıyorsa, Application Insights izlemeyi etkinleştirmek için yönergeleri izleyin.
Durum kaynağının mevcut olduğunu ve gibi Status source D:\home\LogFiles\ApplicationInsights\status\status_RD0003FF0317B6_4248_1.jsongöründüğünü onaylayın.
Benzer bir değer yoksa, uygulamanın şu anda çalışmadığını veya desteklenmediğini gösterir. Uygulamanın çalıştığından emin olmak için, çalışma zamanı bilgilerinin kullanılabilir duruma gelmesini sağlayan uygulama URL'sini/uygulama uç noktalarını el ile ziyaret etmeyi deneyin.
bunun olduğunu IKeyExiststrueonaylayın.
Aksi takdirde, uygulama ayarlarınıza izleme anahtarı GUID'nizle ve APPLICATIONINSIGHTS_CONNECTION_STRING ekleyinAPPINSIGHTS_INSTRUMENTATIONKEY.
, AppContainsDiagnosticSourceAssemblyve AppContainsAspNetTelemetryCorrelationAssemblyiçin AppAlreadyInstrumentedgirdi olmadığını onaylayın.
Bu girdilerden herhangi biri varsa, uygulamanızdan şu paketleri kaldırın: Microsoft.ApplicationInsights, System.Diagnostics.DiagnosticSourceve Microsoft.AspNet.TelemetryCorrelation.
Web uygulamalarıyla dağıtılan varsayılan web sitesi otomatik istemci tarafı izlemeyi desteklemez
App Service'te ASP.NET çalışma zamanlarıyla bir web uygulaması oluşturduğunuzda, başlangıç web sitesi olarak tek bir statik HTML sayfası dağıtır. Statik web sayfası da bir ASP yükler. IIS'de NET tarafından yönetilen web bölümü. Bu sayfa, kodsuz sunucu tarafı izlemenin test edilmesini sağlar ancak otomatik istemci tarafı izlemeyi desteklemez.
Bir App Service web uygulamasında ASP.NET için kodsuz sunucu ve istemci tarafı izlemeyi test etmek istiyorsanız, ASP.NET Framework web uygulaması oluşturmak için resmi kılavuzları izlemenizi öneririz. Daha sonra, izlemeyi etkinleştirmek için geçerli makaledeki yönergeleri kullanın.
APPINSIGHTS_JAVASCRIPT_ENABLED ve urlCompression desteklenmiyor
İçeriğin kodlandığı durumlarda kullanıyorsanız APPINSIGHTS_JAVASCRIPT_ENABLED=true aşağıdaki gibi hatalar alabilirsiniz:
500 URL yeniden yazma hatası.
500.53 URL yeniden yazma modülü hatası ve "HTTP yanıtının içeriği kodlandığında giden yeniden yazma kuralları uygulanamıyor ('gzip')."
Uygulama ayarı olarak ayarlandığından APPINSIGHTS_JAVASCRIPT_ENABLEDtrue ve içerik kodlama aynı anda mevcut olduğundan bir hata oluşur. Bu senaryo henüz desteklenmiyor. Geçici çözüm, uygulama ayarlarınızdan kaldırmaktır APPINSIGHTS_JAVASCRIPT_ENABLED . Ne yazık ki, istemci/tarayıcı tarafı JavaScript izlemesi hala gerekliyse, web sayfalarınız için el ile SDK başvuruları gereklidir. JavaScript SDK'sı ile el ile izleme yönergelerini izleyin.
Application Insights aracısı/uzantısı hakkında en son bilgiler için sürüm notlarına bakın.
PHP ve WordPress desteklenmez
PHP ve WordPress siteleri desteklenmez. Şu anda bu iş yüklerinin sunucu tarafı izlemesi için resmi olarak desteklenen bir SDK/aracı yoktur. PHP veya WordPress sitesindeki istemci tarafı işlemlerini izlemek için JavaScript SDK'sını kullanarak istemci tarafı JavaScript'i web sayfalarınıza ekleyin.
Aşağıdaki tabloda, bu değerlerin ne anlama gelenleri, bunların temel nedenleri ve önerilen düzeltmeler hakkında bir açıklama sağlanmaktadır.
Sorun değeri
Açıklama
Düzelt
AppAlreadyInstrumented:true
Bu değer, uzantının sdk'nın uygulamada zaten mevcut olan bazı yönlerini algılayıp geri döndüğünü gösterir. , Microsoft.AspNet.TelemetryCorrelationveya Microsoft.ApplicationInsights başvurusu bu değere System.Diagnostics.DiagnosticSourceneden olabilir.
Başvuruları kaldırın. Bu başvurulardan bazıları varsayılan olarak belirli Visual Studio şablonlarından eklenir. Visual Studio'nun eski sürümleri öğesine Microsoft.ApplicationInsightsbaşvuru ekleyebilir.
AppAlreadyInstrumented:true
Önceki bir dağıtımdan önceki DLL'lerin uygulama klasöründe bulunması da bu değere neden olabilir.
Bu DLL'lerin kaldırıldığından emin olmak için uygulama klasörünü temizleyin. Hem yerel uygulamanızın bin dizinini hem de App Service kaynağındaki wwwroot dizinini denetleyin. App Service web uygulamanızın wwwroot dizinini denetlemek için Gelişmiş Araçlar (Kudu)>Hata ayıklama konsolu>CMD>home\site\wwwroot öğesini seçin.
Bu değer, uzantının uygulamada başvuru Microsoft.AspNet.TelemetryCorrelation algılayıp geri döndüğünü gösterir.
Başvuruyu kaldırın.
AppContainsDiagnosticSourceAssembly**:true
Bu değer, uzantının uygulamada başvuru System.Diagnostics.DiagnosticSource algılayıp geri döndüğünü gösterir.
ASP.NET için başvuruyu kaldırın.
IKeyExists:false
Bu değer, izleme anahtarının uygulama ayarında APPINSIGHTS_INSTRUMENTATIONKEYbulunmadığını gösterir. Olası nedenler, değerlerin yanlışlıkla kaldırılması veya otomasyon betiğindeki değerleri ayarlamayı unutmanız olabilir.
Ayarın App Service uygulama ayarlarında mevcut olduğundan emin olun.
2.8.44 yükseltmesi sonrasında System.IO.FileNotFoundException
Otomatik yetkisiz erişim 2.8.44 sürümü, Application Insights SDK'sını 2.20.0 sürümüne yükseltmektedir. Application Insights SDK'sının aracılığıyla System.Diagnostics.DiagnosticSource.dlldolaylı bir başvurusu System.Runtime.CompilerServices.Unsafe.dll vardır. Uygulamanın için System.Runtime.CompilerServices.Unsafe.dll bağlama yeniden yönlendirmesivarsa ve bu kitaplık uygulama klasöründe yoksa, biçiminde olabilirSystem.IO.FileNotFoundException.
Bu sorunu çözmek için web.config dosyasından bağlama System.Runtime.CompilerServices.Unsafe.dll yeniden yönlendirme girdisini kaldırın. Uygulama kullanmak System.Runtime.CompilerServices.Unsafe.dllistediyse, bağlama yeniden yönlendirmesini burada gösterildiği gibi ayarlayın:
Geçici bir geçici çözüm olarak, uygulama ayarını ApplicationInsightsAgent_EXTENSION_VERSION değerine 2.8.37ayarlayabilirsiniz. Bu ayar, App Service'in eski Application Insights uzantısını kullanmasını tetikler. Geçici azaltmalar yalnızca geçici olarak kullanılmalıdır.
Telemetri eksik
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION Windows'ta, ~3 Linux'ta değerine ~2 ayarlandığını denetleyin
Aracının başarıyla başlatıldığını görmek için günlük dosyasını inceleyin: kök dizinde https://yoursitename.scm.azurewebsites.net/SSH değişikliği altında, günlük dosyası LogFiles/ApplicationInsights altında bulunur.
Java uygulamanız için uygulama izlemeyi etkinleştirdikten sonra canlı ölçümlere bakarak aracının çalıştığını doğrulayabilirsiniz. App Service'e dağıtmadan ve uygulamadan önce bile ortamdan bazı istekler görürsünüz. Telemetri kümesinin tamamının yalnızca uygulamanızı dağıtıp çalıştırdığınızda kullanılabildiğini unutmayın.
Herhangi bir hata görmüyorsanız ve telemetri yoksa ortam değişkenini debug olarak ayarlayınAPPLICATIONINSIGHTS_SELF_DIAGNOSTICS_LEVEL.
Telemetri eksik
Windows
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION değerine ~2ayarlandığını denetleyin.
https://yoursitename.scm.azurewebsites.net/ApplicationInsights adresine göz atın.
Application Insights Extension StatusPre-Installed Site Extension, version 2.8.x.xxxx, is running.
SDKPresent True ise, uzantının SDK'nın bazı yönlerinin Uygulamada zaten mevcut olduğunu algılayıp geri çekileceği anlamına gelir.
Yinelenen telemetri
Azure İzleyici OpenTelemetry Distro veya Azure İzleyici OpenTelemetry Exporter gibi kodunuzda OpenTelemetry'nin el ile izlemesini kullanmıyorsanız App Service'te otomatik müdahaleyi kullanın.
El ile izlemenin üzerinde otomatik yetkisiz erişim kullanılması yinelenen telemetriye neden olabilir ve maliyetinizi artırabilir. App Service OpenTelemetry otomatik müdahalesini kullanmak için, önce kodunuzdan OpenTelemetry'nin el ile izlemesini kaldırın.
Telemetri eksik
Telemetriniz eksikse, otomatik yetkisiz erişim özelliğinin doğru etkinleştirildiğini onaylamak için bu adımları izleyin.
App Service kaynağınızdaki Application Insights deneyiminde otomatik yetkisiz girişin etkinleştirildiğini onaylayın.
Uygulama ayarının ApplicationInsightsAgent_EXTENSION_VERSION değerine ~3 ayarlandığını ve uygun Application Insights kaynağına işaret ettiğini APPLICATIONINSIGHTS_CONNECTION_STRING onaylayın.
Otomatik yetkisiz erişim tanılamalarını ve durum günlüklerini denetleyin.
a. /var/log/applicationinsights/ adresine gidin ve status_*.json açın.
b. Bunun AgentInitializedSuccessfully true olarak ayarlandığını ve IKey geçerli bir iKey'e sahip olduğunu onaylayın.