Microsoft Azure İzleyici Application Insights JavaScript SDK yapılandırması
Azure Uygulaması lication Insights JavaScript SDK'sı, web uygulamalarınızı izlemek, izlemek ve hata ayıklamak için yapılandırma sağlar.
SDK yapılandırması
Bu yapılandırma alanları, aksi belirtilmedikçe isteğe bağlıdır ve varsayılan olarak false olarak ayarlanır.
SDK yapılandırması ekleme yönergeleri için bkz . SDK yapılandırması ekleme.
Adı | Tip | Varsayılan |
---|---|---|
accountId Uygulamanız kullanıcıları hesaplar halinde gruplandırırsa isteğe bağlı bir hesap kimliği. Boşluk, virgül, noktalı virgül, eşittir veya dikey çubuk yok |
Dize | boş |
addRequestContext Api çağrısının başındaki bağlamla bağımlılık günlüklerini zenginleştirmek için bir yol sağlayın. Varsayılan tanımlanmamıştır. İlgili bağlamı yapılandırırsanız xhr mevcut olup olmadığını xhr denetlemeniz gerekir. İlgili bağlamı yapılandırıp yapılandırmadığınız fetch ve var olup olmadığını fetch request fetch response denetlemeniz gerekir. Aksi takdirde ihtiyacınız olan verileri alamayabilirsiniz. |
(requestContext: IRequestionContext) => {[key: string]: any} | Tanımsız |
ajaxPerfLookupDelay Varsayılan değer: 25 ms. Ajax isteğinin windows.performance zamanlamalarını bulmak için yeniden kullanıma almadan önce beklenen süre milisaniye cinsindendir ve doğrudan setTimeout() öğesine geçirilir. |
sayısal | 25 |
appId AppId, istemci tarafında sunucu tarafı istekleriyle gerçekleşen AJAX bağımlılıkları arasındaki bağıntı için kullanılır. İşaret API'si etkinleştirildiğinde otomatik olarak kullanılamaz, ancak yapılandırmada el ile ayarlanabilir. Varsayılan değer null |
Dize | boş |
autoTrackPageVisitTime Doğruysa, bir sayfa görünümünde, önceki izlenen sayfanın görüntüleme süresi izlenir ve telemetri olarak gönderilir ve geçerli sayfa görünümü için yeni bir zamanlayıcı başlatılır. içinde adlı PageVisitTime milliseconds özel bir ölçüm olarak gönderilir ve Date now() işlevi (varsa) aracılığıyla hesaplanır ve (yeni Date()) öğesine geri döner.getTime() now() kullanılamıyorsa (IE8 veya daha az). Varsayılan değer yanlış'tır. |
boolean | yanlış |
convertUndefined Kullanıcıya tanımlanmamış alanı kullanıcı tanımlı değere dönüştürme seçeneği sağlayın. |
any |
Tanımsız |
cookieCfg Tanımlama bilgisi kullanımı etkin varsayılanları tam varsayılanlar için bkz . ICookieCfgConfig ayarları. |
ICookieCfgConfig [İsteğe bağlı] (2.6.0'dan itibaren) |
Tanımsız |
cookieDomain Özel tanımlama bilgisi etki alanı. Application Insights tanımlama bilgilerini alt etki alanları arasında paylaşmak istiyorsanız yararlı olur. (v2.6.0'dan itibaren) Tanımlanmışsa cookieCfg.domain bu değerden önceliklidir. |
diğer adı cookieCfg.domain [İsteğe bağlı] |
boş |
cookiePath Özel tanımlama bilgisi yolu. Application Insights tanımlama bilgilerini bir uygulama ağ geçidinin arkasında paylaşmak istiyorsanız yararlı olur. Tanımlanırsa cookieCfg.path öncelik kazanır. |
diğer adı cookieCfg.path [İsteğe bağlı] (2.6.0'dan itibaren) |
boş |
correlationHeaderDomains Belirli etki alanları için bağıntı üst bilgilerini etkinleştirme |
string[] | Tanımsız |
correlationHeaderExcludedDomains Belirli etki alanları için bağıntı üst bilgilerini devre dışı bırakma |
string[] | Tanımsız |
correlationHeaderExcludePatterns Normal ifadeleri kullanarak bağıntı üst bilgilerini devre dışı bırakma |
regex[] | Tanımsız |
createPerfMgr Gerektiğinde enablePerfMgr ve etkinleştirildiğinde bir IPerfManager örneği oluşturmak için çağrılacak geri çağırma işlevi, başlatma işleminden sonra gerek setPerfMgr() kalmadan bir PerfManager() öğesinin varsayılan oluşturma işlemini geçersiz kılmanızı sağlar. |
(çekirdek: IAppInsightsCore, notificationManager: INotificationManager) => IPerfManager | Tanımsız |
customHeaders Kullanıcının özel bir uç nokta kullanırken ek üst bilgi sağlayabilmesi. customHeader'lar, işaret gönderen kullanıldığında tarayıcı kapatma anında eklenmez. Ayrıca özel üst bilgiler eklemek IE9 veya önceki sürümlerde desteklenmez. |
[{header: string, value: string}] |
Tanımsız |
diagnosticLogInterval (iç) İç günlük kuyruğu için yoklama aralığı (ms cinsinden) |
sayısal | 10000 |
disableAjaxTracking Doğruysa, Ajax çağrıları otomatik olarak toplamaz. Varsayılan değer yanlış'tır. |
boolean | yanlış |
disableCookiesUsage Varsayılan false. SDK tarafından tanımlama bilgilerinin kullanılmasının devre dışı bırakılıp bırakılmayacağını gösteren boole değeri. Doğruysa, SDK tanımlama bilgilerinden hiçbir veri depolamaz veya okumaz. (v2.6.0'dan itibaren) Tanımlanırsa cookieCfg.enabled öncelik kazanır. Tanımlama bilgisi kullanımı, core.getCookieMgr().setEnabled(true) aracılığıyla başlatma işleminden sonra yeniden etkinleştirilebilir. |
diğer adı cookieCfg.enabled [İsteğe bağlı] |
yanlış |
disableCorrelationHeaders False ise SDK, tüm bağımlılık isteklerine iki üst bilgi ('Request-Id' ve 'Request-Context') arak bunları sunucu tarafındaki ilgili isteklerle ilişkilendirer. Varsayılan değer yanlış'tır. |
boolean | yanlış |
disableDataLossAnalysis False ise, iç telemetri gönderen arabellekleri henüz gönderilmemiş öğeler için başlangıçta denetlenür. |
boolean | true |
disableExceptionTracking True ise, özel durumlar otomatik olarak toplamaz. Varsayılan değer yanlış'tır. |
boolean | yanlış |
disableFetchTracking için disableFetchTracking varsayılan ayarı etkin false olduğu anlamına gelir. Ancak, 2.8.10 öncesi sürümlerde varsayılan olarak devre dışı bırakılmıştır. olarak ayarlandığında true , Getirme istekleri otomatik olarak toplanmaz. Varsayılan ayar 2.8.0 sürümünde olarak değiştirildi true false . |
boolean | yanlış |
disableFlushOnBeforeUnload Varsayılan false. True ise, onBeforeUnload olay tetikleyicileri olduğunda flush yöntemi çağrılmaz |
boolean | yanlış |
disableIkeyDeprecationMessage İzleme Anahtarını kullanımdan kaldırma hata iletisini devre dışı bırakın. Doğruysa, hata iletileri GÖNDERILMEZ. |
boolean | true |
disableInstrumentationKeyValidation Doğruysa, izleme anahtarı doğrulama denetimi atlanır. Varsayılan değer yanlış'tır. |
boolean | yanlış |
disableTelemetry Doğruysa telemetri toplanmaz veya gönderilmez. Varsayılan değer yanlış'tır. |
boolean | yanlış |
disableXhr Varsayılan olarak XMLHttpRequest veya XDomainRequest (Internet Explorer < sürüm 9 için) kullanmayın; bunun yerine fetch() veya sendBeacon kullanmayı deneyin. Başka aktarım yoksa XMLHttpRequest kullanır |
boolean | yanlış |
distributedTracingMode Dağıtılmış izleme modunu ayarlar. AI_AND_W3C modu veya W3C modu ayarlanırsa, W3C izleme bağlamı üst bilgileri (traceparent/tracestate) oluşturulur ve tüm giden isteklere eklenir. AI_AND_W3C, tüm eski Application Insights izlemeli hizmetlerle arka uyumluluk için sağlanır. |
sayısal veya DistributedTracingModes |
DistributedTracing Modes.AI_AND_W3C |
enableAjaxErrorStatusText Varsayılan false. True ise, başarısız AJAX isteklerindeki bağımlılık olayına yanıt hatası veri metni boole değerini ekleyin. |
boolean | yanlış |
enableAjaxPerfTracking Varsayılan false. Bildirilen Ajax (XHR ve getirme) bildirilen ölçümlerinde arama ve ek tarayıcı penceresi.performans zamanlamaları dahil etme bayrağı. |
boolean | yanlış |
enableAutoRouteTracking Tek Sayfalı Uygulamalarda (SPA) yol değişikliklerini otomatik olarak izleme. Doğruysa, her yol değişikliği Application Insights'a yeni bir Sayfa Görünümü gönderir. Karma yol değişiklikleri ( example.com/foo#bar ) yeni sayfa görünümleri olarak da kaydedilir.Not: Bu alanı etkinleştirirseniz, birden çok sayfa görüntüleme olayı elde ettiğiniz için React yönlendirici yapılandırması için nesnesini etkinleştirmeyin history . |
boolean | yanlış |
enableCorsCorrelation True ise SDK, giden AJAX bağımlılıklarını sunucu tarafındaki ilgili isteklerle ilişkilendirmek için tüm CORS isteklerine iki üst bilgi ('Request-Id' ve 'Request-Context') ekler. Varsayılan değer false |
boolean | yanlış |
enableDebug True ise, SDK günlük ayarları ne olursa olsun, iç hata ayıklama verileri günlüğe kaydedilmek yerine bir özel durum olarak oluşturulur. Varsayılan değer yanlış'tır. Not: Bu ayarın etkinleştirilmesi, bir iç hata oluştuğunda telemetrinin bırakılmasına neden olur. SDK yapılandırmanızla veya kullanımınızla ilgili sorunları hızla belirlemek için yararlı olabilir. Hata ayıklarken telemetriyi kaybetmek istemiyorsanız veya loggingLevelTelemetry yerine enableDebug kullanmayı loggingLevelConsole göz önünde bulundurun. |
boolean | yanlış |
enablePerfMgr Etkinleştirildiğinde (true) perfEvents (doPerf() yardımcısı aracılığıyla) yaymak için izlenmiş kod için yerel perfEvents oluşturur. Sdk içindeki performans sorunlarını kullanımınıza göre veya isteğe bağlı olarak kendi izleme kodunuz içinde tanımlamak için kullanılabilir. |
boolean | yanlış |
enableRequestHeaderTracking Doğruysa, AJAX & Getirme isteği üst bilgileri izlenir, varsayılan değer false olur. IgnoreHeaders yapılandırılmamışsa Yetkilendirme ve X-API-Key üst bilgileri günlüğe kaydedilmez. |
boolean | yanlış |
enableResponseHeaderTracking True ise, AJAX & Fetch isteğinin yanıt üst bilgileri izlenir, varsayılan değer false olur. ignoreHeaders yapılandırılmamışsa, WWW-Authenticate üst bilgisi günlüğe kaydedilmez. |
boolean | yanlış |
enableSessionStorageBuffer Varsayılan true. True ise, tüm yanıtsız telemetri verilerini içeren arabellek oturum depolama alanında depolanır. Arabellek sayfa yüklemesinde geri yüklenir |
boolean | true |
enableUnhandledPromiseRejectionTracking True ise, işlenmeyen söz reddetmeleri JavaScript hatası olarak otomatik olarak kabul edilir. disableExceptionTracking true olduğunda (özel durumları izlemeyin), yapılandırma değeri yoksayılır ve işlenmeyen söz reddetmeleri bildirilmez. |
boolean | yanlış |
eventsLimitInMem SDK, Oturum Depolama (varsayılan) kullanmadığında olayları bırakmaya başlamadan önce bellekte tutulabilecek olayların sayısı. |
Numara | 10000 |
excludeRequestFromAutoTrackingPatterns XMLHttpRequest veya Fetch isteği için belirli bir yolu otomatik izlemenin dışında tutmak için bir yol sağlayın. Tanımlanırsa, istek URL'sinin regex desenleriyle eşleştiğinden bir Ajax /fetch isteği için otomatik izleme kapatılır. Varsayılan tanımlanmamıştır. |
string[] | RegExp[] | Tanımsız |
featureOptIn Özellik kabul etme ayrıntılarını ayarlayın. Bu yapılandırma alanı yalnızca 3.0.3 ve sonraki sürümlerde kullanılabilir. |
IFeatureOptIn | Tanımsız |
idLength Yeni rastgele oturum ve kullanıcı kimlikleri oluşturmak için kullanılan varsayılan uzunluğu tanımlar. Varsayılan değer 22'ydi, önceki varsayılan değer 5'tir (v2.5.8 veya üzeri), önceki maksimum uzunluğu korumanız gerekiyorsa değeri 5 olarak ayarlamanız gerekir. |
sayısal | 22 |
ignoreHeaders AJAX & Fetch isteği ve yanıt üst bilgileri günlük verilerinde yoksayılacak. Varsayılanı geçersiz kılmak veya atmak için, dışlanacak tüm üst bilgileri içeren bir dizi veya yapılandırmaya boş bir dizi ekleyin. |
string[] | ["Authorization", "X-API-Key", "WWW-Authenticate"] |
isBeaconApiDisabled Yanlışsa SDK, beacon API'sini kullanarak tüm telemetri verilerini gönderir |
boolean | true |
isBrowserLinkTrackingEnabled Varsayılan değer yanlış'tır. Doğruysa, SDK tüm Tarayıcı Bağlantısı isteklerini izler. |
boolean | yanlış |
isRetryDisabled Varsayılan false. Yanlışsa, 206 (kısmi başarı), 408 (zaman aşımı), 429 (çok fazla istek), 500 (iç sunucu hatası), 503 (hizmet kullanılamıyor) ve 0 (yalnızca algılanırsa çevrimdışı) üzerinde yeniden deneyin |
boolean | yanlış |
isStorageUseDisabled Doğruysa, SDK yerel ve oturum depolamadan veri depolamaz veya okumaz. Varsayılan değer yanlış'tır. |
boolean | yanlış |
loggingLevelConsole İç Application Insights hatalarını konsola kaydeder. 0: kapalı, 1: Yalnızca kritik hatalar, 2: Her şey (hatalar ve uyarılar) |
sayısal | 0 |
loggingLevelTelemetry İç Application Insights hatalarını telemetri olarak gönderir. 0: kapalı, 1: Yalnızca kritik hatalar, 2: Her şey (hatalar ve uyarılar) |
sayısal | 1 |
maxAjaxCallsPerView Varsayılan 500 - Sayfa görünümü başına kaç Ajax çağrısının izleneceğini denetler. Sayfadaki tüm (sınırsız) Ajax çağrılarını izlemek için -1 olarak ayarlayın. |
sayısal | 500 |
maxAjaxPerfLookupAttempts Varsayılan değer 3'tir. Window.performance timings (varsa) için aranacak en fazla sayı gereklidir. XHR isteğinin sonunu bildirmeden önce tüm tarayıcılar window.performance dosyasını doldurmaz. Getirme istekleri tamamlandıktan sonra eklenir. |
sayısal | 3 |
maxBatchInterval Göndermeden önce telemetriyi toplu işleme süresi (milisaniye) |
sayısal | 15000 |
maxBatchSizeInBytes En büyük telemetri toplu işlemi boyutu. Toplu iş bu sınırı aşarsa hemen gönderilir ve yeni bir toplu iş başlatılır |
sayısal | 10000 |
namePrefix localStorage ve oturum tanımlama bilgisi adı için ad son eki olarak kullanılan isteğe bağlı bir değer. |
Dize | Tanımsız |
onunloadDisableBeacon Varsayılan false. Sekme kapatıldığında SDK kalan tüm telemetri verilerini İşaret API'sini kullanarak gönderir |
boolean | yanlış |
onunloadDisableFetch Fetch keepalive destekleniyorsa, kaldırma sırasında olayları göndermek için bunu kullanmıyorsa, tutma olmadan fetch() öğesine geri dönebilir |
boolean | yanlış |
overridePageViewDuration True ise, trackPageView'un varsayılan davranışı trackPageView çağrıldığında sayfa sonu görünümü süre aralığını kaydedecek şekilde değiştirilir. TrackPageView için false ve özel süre sağlanmadıysa, sayfa görünümü performansı gezinti zamanlama API'si kullanılarak hesaplanır. Varsayılan değer yanlış'tır. |
boolean | yanlış |
perfEvtsSendAll EnablePerfMgr etkinleştirildiğinde ve IPerfManager bir INotificationManager.perfEvent() tetiklediğinde, bu bayrak bir olayın tüm olaylar (true) için mi yoksa yalnızca 'üst' olaylar (yanlış <varsayılan>) için mi tetikleneceğini (ve tüm dinleyicilere gönderileceğini) belirler. Üst IPerfEvent , oluşturulan olayın noktasında başka hiçbir IPerfEvent'in hala çalışmadığı ve üst özelliğinin null veya tanımsız olmadığı bir olaydır. v2.5.7'den beri |
boolean | yanlış |
samplingPercentage Gönderilen olayların yüzdesi. Varsayılan değer 100'dür, yani tüm olaylar gönderilir. Büyük ölçekli uygulamalar için veri üst sınırınızı korumak istiyorsanız ayarlayın. |
sayısal | 100 |
sdkExtension SDK uzantısı adını ayarlar. Yalnızca alfabetik karakterlere izin verilir. Uzantı adı , 'ai.internal.sdkVersion' etiketine bir ön ek olarak eklenir (örneğin, 'ext_javascript:2.0.0'). Varsayılan değer null'tır. |
Dize | boş |
sessionCookiePostfix Oturum tanımlama bilgisi adı için ad son eki olarak kullanılan isteğe bağlı bir değer. Tanımlanmamışsa, oturum tanımlama bilgisi adı için ad son eki olarak namePrefix kullanılır. |
Dize | Tanımsız |
sessionExpirationMs Bu süre milisaniye cinsinden devam ettiyse oturum günlüğe kaydedilir. Varsayılan değer 24 saattir |
sayısal | 86400000 |
sessionRenewalMs Kullanıcı bu süre boyunca milisaniye cinsinden etkin değilse oturum günlüğe kaydedilir. Varsayılan değer 30 dakikadır |
sayısal | 1800000 |
throttleMgrCfg Kısıtlama mgr yapılandırmasını anahtara göre ayarlayın. Bu yapılandırma alanı yalnızca 3.0.3 ve sonraki sürümlerde kullanılabilir. |
{[key: number]: IThrottleMgrConfig} |
Tanımsız |
userCookiePostfix Kullanıcı tanımlama bilgisi adı için ad son eki olarak kullanılan isteğe bağlı bir değer. Tanımlanmamışsa, kullanıcı tanımlama bilgisi adına hiçbir sonek eklenmez. |
Dize | Tanımsız |
Tanımlama bilgisi yönetimi
sürüm 2.6.0'dan başlayarak Azure Uygulaması lication Insights JavaScript SDK'sı, başlatma işleminden sonra devre dışı bırakılıp yeniden etkinleştirilebilen örnek tabanlı tanımlama bilgisi yönetimi sağlar.
veya yapılandırmalarını kullanarak disableCookiesUsage
tanımlama bilgilerini başlatma sırasında devre dışı bırakdıysanız, ICookieMgr nesnesinin setEnabled
işlevini kullanarak bunları yeniden etkinleştirebilirsiniz.cookieCfg.enabled
Örnek tabanlı tanımlama bilgisi yönetimi, , setCookie()
, getCookie()
ve deleteCookie()
değerlerinin önceki CoreUtils genel işlevlerinin disableCookies()
yerini alır.
2.6.0 sürümünde sunulan ağaç sallama geliştirmelerinden yararlanmak için genel işlevlerin artık kullanılmaması önerilir.
Tanımlama bilgisi yapılandırması
ICookieMgrConfig, 2.6.0'da eklenen örnek tabanlı tanımlama bilgisi yönetimi için bir tanımlama bilgisi yapılandırmasıdır. Sağlanan seçenekler, SDK tarafından tanımlama bilgilerinin kullanımını etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Ayrıca özel tanımlama bilgisi etki alanları ve yolları ayarlayabilir ve tanımlama bilgilerini getirme, ayarlama ve silme işlevlerini özelleştirebilirsiniz.
ICookieMgrConfig seçenekleri aşağıdaki tabloda tanımlanmıştır.
Adı | Tip | Varsayılan | Açıklama |
---|---|---|---|
enabled | boolean | true | SDK'nın geçerli örneği, tanımlama bilgilerinin kullanımının etkinleştirilip etkinleştirilmediğini belirtmek için bu boole değerini kullanır. False ise, bu yapılandırma tarafından başlatılan SDK örneği tanımlama bilgilerindeki verileri depolamaz veya okumaz. |
etki alanı | Dize | boş | Özel tanımlama bilgisi etki alanı. Application Insights tanımlama bilgilerini alt etki alanları arasında paylaşmak istiyorsanız yararlı olur. Sağlanmazsa, kök cookieDomain değerden değerini kullanır. |
yol | Dize | / | Tanımlama bilgisi için kullanılacak yolu belirtir, sağlanmadıysa kök cookiePath değerden herhangi bir değer kullanır. |
ignoreCookies | string[] | Tanımsız | Yoksayılacak tanımlama bilgisi adlarını belirtin; eşleşen tanımlama bilgisi adlarının hiçbir zaman okunmamasını veya yazılmamasını sağlayın. Bunlar yine de açıkça temizlenebilir veya silinebilir. Yapılandırmada blockedCookies adı yinelemeniz gerekmez. (v2.8.8'den itibaren) |
blockedCookies | string[] | Tanımsız | Hiçbir zaman yazılacak tanımlama bilgisi adlarını belirtin. Herhangi bir tanımlama bilgisi adının oluşturulmasını veya güncelleştirilmesini engeller, ancak ignoreCookies'e dahil edilmediği sürece bunlar yine de okunabilir. Bunlar yine de açıkça temizlenebilir veya silinebilir. Sağlanmazsa ignoreCookies içinde varsayılan olarak aynı listeye sahiptir. (v2.8.8'den itibaren) |
getCookie | (name: string) => string |
boş | Adlandırılmış tanımlama bilgisi değerini getirmek için işlev, sağlanmadıysa iç tanımlama bilgisi ayrıştırma / önbelleğe alma kullanır. |
setCookie | (name: string, value: string) => void |
boş | Adlandırılmış tanımlama bilgisini belirtilen değerle ayarlama işlevi; yalnızca tanımlama bilgisi eklerken veya güncelleştirirken çağrılır. |
delCookie | (name: string, value: string) => void |
boş | Tanımlama bilgisinin eklenip eklenmediğini veya kaldırıldığını belirlemek için değeri ayrıştırma gereksinimini ortadan kaldırmak için belirtilen değere sahip adlandırılmış tanımlama bilgisini silme işlevi. Sağlanmadıysa iç tanımlama bilgisi ayrıştırma / önbelleğe alma kullanır. |
Kaynak eşleme
Kaynak eşleme desteği, özel durum telemetrinizin küçültüldü çağrı yığınını ayırarak küçültüldü JavaScript kodunda hata ayıklamanıza yardımcı olur.
- Özel Durum Ayrıntıları panelindeki tüm geçerli tümleştirmelerle uyumlu
- SDK yükseltmesine gerek kalmadan Node.JS dahil olmak üzere tüm geçerli ve gelecekteki JavaScript SDK'larını destekler
Blob Depolama hesabına bağlantı
Application Insights, kaynak eşlemelerin Azure Depolama hesabı blob kapsayıcınıza yüklenmesini destekler. Uçtan uca işlem ayrıntıları sayfasında bulunan çağrı yığınlarını birleştirmek için kaynak eşlemeleri kullanabilirsiniz. JavaScript SDK'sı veya Node.js SDK'sı tarafından gönderilen özel durumları çözmek için kaynak eşlemeleri de kullanabilirsiniz.
Yeni depolama hesabı ve blob kapsayıcısı oluşturma
Zaten bir depolama hesabınız veya blob kapsayıcınız varsa bu adımı atlayabilirsiniz.
Yeni bir depolama hesabı oluşturun.
Depolama hesabınızın içinde bir blob kapsayıcısı oluşturun. Kaynak eşlemelerinizin genel olarak erişilebilir olmadığından emin olmak için Genel erişim düzeyini Özel olarak ayarlayın.
Kaynak eşlemelerinizi blob kapsayıcınıza gönderme
Kaynak eşlemelerinizi yapılandırılan blob kapsayıcısına otomatik olarak yükleyecek şekilde yapılandırarak sürekli dağıtım işlem hattınızı depolama hesabınızla tümleştirin.
Kaynak eşlemeleri, derlenip dağıtıldıkları klasör yapısıyla Azure Blob Depolama kapsayıcınıza yükleyebilirsiniz. Yaygın kullanım örneklerinden biri, bir dağıtım klasörünün ön ekini sürümüyle (örneğin, 1.2.3/static/js/main.js
) kullanmaktır. adlı sourcemaps
bir Azure blob kapsayıcısı aracılığıyla ayırdığınızda işlem hattı konumunda sourcemaps/1.2.3/static/js/main.js.map
bulunan bir kaynak eşlemeyi getirmeye çalışır.
Kaynak haritaları Azure Pipelines aracılığıyla karşıya yükleme (önerilir)
Uygulamanızı sürekli derlemek ve dağıtmak için Azure Pipelines kullanıyorsanız kaynak haritalarınızı otomatik olarak karşıya yüklemek için işlem hattınıza bir Azure dosya kopyalama görevi ekleyin.
Application Insights kaynağınızı kaynak eşleme depolama hesabıyla yapılandırma
Application Insights kaynağınızı bir kaynak eşleme depolama hesabıyla yapılandırmak için iki seçeneğiniz vardır.
Uçtan uca işlem ayrıntıları sekmesi
Uçtan uca işlem ayrıntıları sekmesinden Ayır'ı seçin. Yapılandırılmamışsa kaynağınızı yapılandırın.
- Azure portalında, küçültüldü bir özel durumun ayrıntılarını görüntüleyin.
- Tümleştir'i seçin.
- Kaynağınız yapılandırılmadıysa yapılandırın.
Özellikler sekmesi
Application Insights kaynağınıza bağlı depolama hesabını veya blob kapsayıcısını yapılandırmak veya değiştirmek için:
Application Insights kaynağınızın Özellikler sekmesine gidin.
Kaynak eşleme blob kapsayıcısını değiştir'i seçin.
Kaynak eşleme kapsayıcınız olarak farklı bir blob kapsayıcısı seçin.
Uygula’yı seçin.
Unminified callstack'i görüntüleme
Gereksiz çağrı yığınını görüntülemek için Azure portalında bir Özel Durum Telemetrisi öğesi seçin, çağrı yığınıyla eşleşen kaynak eşlemeleri bulun ve kaynak eşlemeleri Sürükleyip Azure portalındaki çağrı yığınına bırakın. Kaynak eşleme, bir yığın çerçevesinin kaynak dosyasıyla aynı ada sahip olmalı, ancak bir map
uzantıya sahip olmalıdır.
JavaScript uygulamaları için kaynak eşleme desteğiyle ilgili sorunlarla karşılaşıyorsanız bkz . JavaScript uygulamaları için kaynak eşleme desteği sorunlarını giderme.
Ağaç sallanıyor
Ağaç sallama, son JavaScript paketindeki kullanılmayan kodu ortadan kaldırır.
Ağaç sallama işleminden yararlanmak için yalnızca SDK'nın gerekli bileşenlerini kodunuz içine aktarın. Bunu yaptığınızda, kullanılmayan kod son pakete dahil edilmediğinden boyutu küçültülür ve performans iyileştirilir.
Ağaç sallama geliştirmeleri ve önerileri
Sürüm 2.6.0'da, ağaç sallama algoritmalarına yönelik desteği geliştirmek için bu statik yardımcı sınıfların iç kullanımını kullanımdan kaldırdık ve kaldırdık. Npm paketlerinin kullanılmayan kodu güvenli bir şekilde bırakmasına olanak tanır.
CoreUtils
EventHelper
Util
UrlHelper
DateTimeUtils
ConnectionStringParser
İşlevler artık modüllerden en üst düzey kökler olarak dışarı aktarılarak daha iyi ağaç sallama için kodunuzu yeniden düzenlemeyi kolaylaştırır.
Statik sınıflar, dışarı aktarılan yeni işlevlere başvuran const nesneleri olarak değiştirildi ve başvuruların daha fazla yeniden düzenlenmesi için gelecekteki değişiklikler planlanıyor.
Ağaç sallama kullanım dışı işlevler ve değişimler
Bu bölüm yalnızca kullanım dışı işlevleri kullanıyorsanız ve paket boyutunu iyileştirmek istiyorsanız sizin için geçerlidir. Internet Explorer'ın tüm sürümlerinin boyutunu küçültmek ve desteklemek için değiştirme işlevlerini kullanmanızı öneririz.
Mevcut | Değiştirme |
---|---|
CoreUtils | @microsoft/applicationinsights-core-js |
CoreUtils._canUseCookies | Yok. Tüm CoreUtils başvurularının son kodunuza eklenmesine neden olduğundan kullanmayın. Değerini ayarlamak ve appInsights.getCookieMgr().isEnabled() değeri denetlemek için öğesini kullanmak appInsights.getCookieMgr().setEnabled(true/false) için tanımlama bilgisi işlemenizi yeniden düzenleme. |
CoreUtils.isTypeof | isTypeof |
CoreUtils.isUndefined | isUndefined |
CoreUtils.isNullOrUndefined | isNullOrUndefined |
CoreUtils.hasOwnProperty | hasOwnProperty |
CoreUtils.isFunction | isFunction |
CoreUtils.isObject | isObject |
CoreUtils.isDate | isDate |
CoreUtils.isArray | isArray |
CoreUtils.isError | isError |
CoreUtils.isString | isString |
CoreUtils.isNumber | isNumber |
CoreUtils.isBoolean | isBoolean |
CoreUtils.toISOString | toISOString veya getISOString |
CoreUtils.arrForEach | arrForEach |
CoreUtils.arrIndexOf | arrIndexOf |
CoreUtils.arrMap | arrMap |
CoreUtils.arrReduce | arrReduce |
CoreUtils.strTrim | strTrim |
CoreUtils.objCreate | objCreateFn |
CoreUtils.objKeys | objKeys |
CoreUtils.objDefineAccessors | objDefineAccessors |
CoreUtils.addEventHandler | addEventHandler |
CoreUtils.dateNow | dateNow |
CoreUtils.isIE | isIE |
CoreUtils.disableCookies | disableCookies Her ikisine de başvurmak, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().setEnabled(false) |
CoreUtils.newGuid | newGuid |
CoreUtils.perfNow | perfNow |
CoreUtils.newId | newId |
CoreUtils.randomValue | randomValue |
CoreUtils.random32 | random32 |
CoreUtils.mwcRandomSeed | mwcRandomSeed |
CoreUtils.mwcRandom32 | mwcRandom32 |
CoreUtils.generateW3CId | generateW3CId |
EventHelper | @microsoft/applicationinsights-core-js |
EventHelper.Attach | attachEvent |
EventHelper.AttachEvent | attachEvent |
EventHelper.Detach | detachEvent |
EventHelper.DetachEvent | detachEvent |
Util | @microsoft/applicationinsights-common-js |
Util.NotSpecified | strNotSpecified |
Util.createDomEvent | createDomEvent |
Util.disableStorage | utlDisableStorage |
Util.isInternalApplicationInsightsEndpoint | isInternalApplicationInsightsEndpoint |
Util.canUseLocalStorage | utlCanUseLocalStorage |
Util.getStorage | utlGetLocalStorage |
Util.setStorage | utlSetLocalStorage |
Util.removeStorage | utlRemoveStorage |
Util.canUseSessionStorage | utlCanUseSessionStorage |
Util.getSessionStorageKeys | utlGetSessionStorageKeys |
Util.getSessionStorage | utlGetSessionStorage |
Util.setSessionStorage | utlSetSessionStorage |
Util.removeSessionStorage | utlRemoveSessionStorage |
Util.disableCookies | disableCookies Her ikisine de başvurmak, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().setEnabled(false) |
Util.canUseCookies | canUseCookies Her ikisine de başvurmak, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().isEnabled() |
Util.disallowsSameSiteNone | uaDisallowsSameSiteNone |
Util.setCookie | coreSetCookie Başvuru, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().set(name: string, value: string) |
Util.stringToBoolOrDefault | stringToBoolOrDefault |
Util.getCookie | coreGetCookie Başvuru, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().get(name: string) |
Util.deleteCookie | coreDeleteCookie Başvuru, geriye dönük uyumluluk için CoreUtils'e başvurulmaya neden olur. Tanımlama bilgisi işlemenizi, appInsights.getCookieMgr().del(name: string, path?: string) |
Util.trim | strTrim |
Util.newId | newId |
Util.random32 | --- Değiştirme yok, kodunuzu çekirdek random32(true) kullanacak şekilde yeniden düzenleme |
Util.generateW3CId | generateW3CId |
Util.isArray | isArray |
Util.isError | isError |
Util.isDate | isDate |
Util.toISOStringForIE8 | toISOString |
Util.getIEVersion | getIEVersion |
Util.msToTimeSpan | msToTimeSpan |
Util.isCrossOriginError | isCrossOriginError |
Util.dump | dumpObj |
Util.getExceptionName | getExceptionName |
Util.addEventHandler | attachEvent |
Util.IsBeaconApiSupported | isBeaconApiSupported |
Util.getExtension | getExtensionByName |
UrlHelper | @microsoft/applicationinsights-common-js |
UrlHelper.parseUrl | urlParseUrl |
UrlHelper.getAbsoluteUrl | urlGetAbsoluteUrl |
UrlHelper.getPathName | urlGetPathName |
UrlHelper.getCompeteUrl | urlGetCompleteUrl |
UrlHelper.parseHost | urlParseHost |
UrlHelper.parseFullHost | urlParseFullHost |
DateTimeUtils | @microsoft/applicationinsights-common-js |
DateTimeUtils.Now | dateTimeUtilsNow |
DateTimeUtils.GetDuration | dateTimeUtilsDuration |
ConnectionStringParser | @microsoft/applicationinsights-common-js |
ConnectionStringParser.parse | parseConnectionString |
Hizmet bildirimleri
Hizmet bildirimleri, telemetrinizin Application Insights'a kesintisiz olarak akışının sağlanmasına yardımcı olmak için eyleme dönüştürülebilir öneriler sağlayan SDK'da yerleşik bir özelliktir. Bildirimleri Application Insights içinde özel durum iletisi olarak görürsünüz. SDK ayarlarınıza göre bildirimlerin sizinle ilgili olduğundan eminiz ve önerinin aciliyetine göre ayrıntı düzeyini belirliyoruz. Hizmet bildirimlerini açık bırakmanızı öneririz, ancak yapılandırmayı featureOptIn
devre dışı bırakabilirsiniz. Etkin bildirimlerin listesi için aşağıya bakın.
Şu anda etkin bildirim gönderilmemektedir.
Sorun giderme
Ayrılmış sorun giderme makalesine bakın.
Sık sorulan sorular
Bu bölüm, sık sorulan soruların yanıtlarını sağlar.
JavaScript SDK'sı için üçüncü taraf sunucu yapılandırmamı nasıl güncelleştirebilirim?
Sunucu tarafının bu üst bilgilerle bağlantıları kabul edebilmesi gerekir. Sunucu tarafındaki yapılandırmaya Access-Control-Allow-Headers
bağlı olarak, genellikle , Request-Context
ve traceparent
(W3C dağıtılmış üst bilgisi) ekleyerek Request-Id
sunucu tarafı listesini genişletmek gerekir.
Access-Control-Allow-Headers: Request-Id
, traceparent
, Request-Context
, , <your header>
JavaScript SDK'sı için dağıtılmış izlemeyi nasıl devre dışı bırakabilirim?
Dağıtılmış izleme, yapılandırmada devre dışı bırakılabilir.
HTTP 502 ve 503 yanıtları her zaman Application Insights tarafından yakalanır mı?
Hayır "502 hatalı ağ geçidi" ve "503 hizmet kullanılamıyor" hataları her zaman Application Insights tarafından yakalanmaz. İzleme için yalnızca istemci tarafı JavaScript kullanılıyorsa, bu davranış beklenir çünkü hata yanıtı, izlenen JavaScript kod parçacığının işlendiği HTML üst bilgisini içeren sayfadan önce döndürülür.
Sunucu tarafı izleme etkinleştirilmiş bir sunucudan 502 veya 503 yanıtı gönderildiyse, hatalar Application Insights SDK'sı tarafından toplanır.
Bir uygulamanın web sunucusunda sunucu tarafı izleme etkinleştirildiğinde bile, bazen Application Insights tarafından 502 veya 503 hatası yakalanmaz. Birçok modern web sunucusu, istemcinin doğrudan iletişim kurmasına izin vermez. Bunun yerine, istemci ve ön uç web sunucuları arasında ileri geri bilgi geçirmek için ters proxy'ler gibi çözümler kullanılır.
Bu senaryoda, ters ara sunucu katmanındaki bir sorun nedeniyle istemciye 502 veya 503 yanıtı döndürülebilir, bu nedenle Application Insights tarafından kullanıma açık olarak yakalanmaz. Bu katmandaki sorunları algılamaya yardımcı olmak için günlükleri ters proxy'nizden Log Analytics'e iletmeniz ve 502 veya 503 yanıtlarını denetlemek için özel bir kural oluşturmanız gerekebilir. 502 ve 503 hatalarının yaygın nedenleri hakkında daha fazla bilgi edinmek için bkz. Azure Uygulaması Hizmeti'nde "502 hatalı ağ geçidi" ve "503 hizmet kullanılamıyor" HTTP hatalarını giderme.