Azure üzerinde web uygulaması izlemeWeb application monitoring on Azure

Azure platformu hizmet (PaaS) teklifleri yönetme gibi işlem kaynakları ve dağıtımları nasıl izlemeniz etkiler.Azure platform as a service (PaaS) offerings manage compute resources for you and affect how you monitor deployments. Azure, her biri belirli bir rol gerçekleştiren birden çok izleme hizmetleri içerir.Azure includes multiple monitoring services, each of which performs a specific role. Birlikte, bu hizmetler alınan telemetri, uygulamalarınızın ve kullandıkları Azure kaynaklar üzerinde çalışan toplama ve analiz için kapsamlı bir çözüm sunar.Together, these services deliver a comprehensive solution for collecting, analyzing, and acting on telemetry from your applications and the Azure resources they consume.

Bu senaryo kullanabilirsiniz ve birden çok veri kaynağı ile kullanmak için bir veri akışı modelini açıklar izleme hizmetleri ele alır.This scenario addresses the monitoring services you can use and describes a dataflow model for use with multiple data sources. İzleme için söz konusu olduğunda, birçok araç ve Hizmetleri Azure dağıtımları ile çalışır.When it comes to monitoring, many tools and services work with Azure deployments. Tam olarak kullanmak kolay olduğu için bu senaryoda, size kullanıma hazır hizmetler seçin.In this scenario, we choose readily available services precisely because they are easy to consume. Diğer izleme seçenekleri, bu makalenin sonraki bölümlerinde ele alınmıştır.Other monitoring options are discussed later in this article.

İlgili kullanım durumlarınıRelevant use cases

Diğer ilgili kullanım durumlarını içerir:Other relevant use cases include:

  • Telemetri izleme için bir web uygulaması izleniyor.Instrumenting a web application for monitoring telemetry.
  • Azure'da dağıtılan bir uygulama için ön uç ve arka uç telemetri toplama.Collecting front-end and back-end telemetry for an application deployed on Azure.
  • İzleme ölçümlerini ve Azure Hizmetleri ile ilgili kotalar.Monitoring metrics and quotas associated with services on Azure.

MimariArchitecture

"Mimarisi diyagramı"

Bu senaryo, bir uygulama ve veri katmanı barındırmak için yönetilen bir Azure ortamı kullanır.This scenario uses a managed Azure environment to host an application and data tier. Veriler senaryosuyla şu şekilde akar:The data flows through the scenario as follows:

  1. Bir kullanıcının uygulamayla etkileşime girer.A user interacts with the application.
  2. Tarayıcı ve app service telemetriyi yayan.The browser and app service emit telemetry.
  3. Application Insights uygulama sistem durumu, performans ve kullanım verilerini toplayıp analiz eder.Application Insights collects and analyzes application health, performance, and usage data.
  4. Geliştiriciler ve Yöneticiler, durum, performans ve kullanım bilgileri gözden geçirebilirsiniz.Developers and administrators can review health, performance, and usage information.
  5. Azure SQL veritabanı telemetri yayar.Azure SQL Database emits telemetry.
  6. Azure İzleyici toplar ve altyapı ölçümleri ve kotalar analiz eder.Azure Monitor collects and analyzes infrastructure metrics and quotas.
  7. Log Analytics toplar ve günlükleri ve ölçümleri analiz eder.Log Analytics collects and analyzes logs and metrics.
  8. Geliştiriciler ve Yöneticiler, durum, performans ve kullanım bilgileri gözden geçirebilirsiniz.Developers and administrators can review health, performance, and usage information.

BileşenlerComponents

  • Azure App Service oluşturmak ve yönetilen sanal makinelerde uygulamaları barındırmak için bir PaaS hizmeti.Azure App Service is a PaaS service for building and hosting apps in managed virtual machines. Temel bilgi işlem altyapılarının, uygulamalarınızı çalıştırın yönetiliyor sizin için.The underlying compute infrastructures on which your apps run is managed for you. App Service kaynak kullanım kotalarını ve uygulama ölçümlerini izleme sağlar tanılama bilgileri ve ölçümlerine bağlı uyarılar günlüğe kaydetme.App Service provides monitoring of resource usage quotas and app metrics, logging of diagnostic information, and alerts based on metrics. Application ınsights'ı oluşturmak için daha da iyi kullanabilirsiniz [kullanılabilirlik testleri] availability-tests farklı bölgelerdeki uygulamanızı test etmek için.Even better, you can use Application Insights to create availability tests for testing your application from different regions.
  • [Application Insights] application-insights geliştiricilerine yönelik genişletilebilir bir uygulama performans yönetimi (APM) hizmetidir ve birden fazla platformu destekler.Application Insights is an extensible Application Performance Management (APM) service for developers and supports multiple platforms. Uygulama izler, zayıf performans ve hatalar gibi uygulama anomalileri algılar ve Azure portala telemetri gönderir.It monitors the application, detects application anomalies such as poor performance and failures, and sends telemetry to the Azure portal. Application Insights, günlüğe kaydetme, dağıtılmış izleme ve özel uygulama ölçümleri için kullanılabilir.Application Insights can also be used for logging, distributed tracing, and custom application metrics.
  • [Azure İzleyici] azure-monitor temel düzeyde bir altyapı sağlar [ölçümlerini ve günlüklerini] metrics çoğu Azure Hizmetleri için.Azure Monitor provides base-level infrastructure metrics and logs for most services in Azure. Ölçümleri bunları Azure portalında grafik, REST API aracılığıyla erişmesini ve bunları sorgulama dahil olmak üzere çeşitli şekillerde etkileşim kurabilirsiniz PowerShell veya CLI kullanarak.You can interact with the metrics in several ways, including charting them in Azure portal, accessing them through the REST API, or querying them using PowerShell or CLI. Azure İzleyici ayrıca, verileri doğrudan sunar Log Analytics ve diğer hizmetleri, burada, sorgu ve şirket içinde veya bulutta, diğer kaynaklardan verilerle birleştirin.Azure Monitor also offers its data directly into Log Analytics and other services, where you can query and combine it with data from other sources on premises or in the cloud.
  • [Log Analytics] log-analytics yardımcı ilişkilendirmenize kullanım ve performans verileri Application ınsights'ı yapılandırma ve performans ile veri toplanmasını uygulama destekleyen Azure kaynakları arasında.Log Analytics helps correlate the usage and performance data collected by Application Insights with configuration and performance data across the Azure resources that support the app. Bu senaryo kullanan [Azure Log Analytics aracısını] Azure Log Analytics agent SQL Server denetim günlüklerini Log Analytics'e gönderme.This scenario uses the Azure Log Analytics agent to push SQL Server audit logs into Log Analytics. Azure portalında Log Analytics dikey penceresinde sorgu ve görünüm veri yazabilirsiniz.You can write queries and view data in the Log Analytics blade of the Azure portal.

Dikkat edilmesi gerekenlerConsiderations

Önerilen bir yöntem kullanarak geliştirme sırasında Application ınsights'ı kodunuza ekleyen Application Insights SDK'larıve uygulama başına özelleştirme.A recommended practice is adding Application Insights to your code during development using the Application Insights SDKs, and customizing per application. Bu açık kaynak SDK'ları, çoğu uygulama çerçeveleri için kullanılabilir.These open-source SDKs are available for most application frameworks. Zenginleştirin ve topladığınız verilerin denetlemek için geliştirme sürecinizle SDK'lar her iki kullanımı test ve üretim dağıtımları için bir araya getirin.To enrich and control the data you collect, incorporate the use of the SDKs both for testing and production deployments into your development process. Uygulamanın bir doğrudan veya dolaylı görebilmesi için bir Internet'e yönelik adresi ile barındırılan uygulamalar Insights alım uç noktası ana gereksinimini içindir.The main requirement is for the app to have a direct or indirect line of sight to the Applications Insights ingestion endpoint hosted with an Internet-facing address. Telemetri ekleyin veya mevcut bir telemetri koleksiyonu zenginleştirin.You can then add telemetry or enrich an existing telemetry collection.

Çalışma zamanını izleme kullanmaya başlamak için başka bir kolayca yoludur.Runtime monitoring is another easy way to get started. Toplanan telemetriyi yapılandırma dosyalarını denetlenebilir.The telemetry that is collected must be controlled through configuration files. Örneğin gibi araçlar sağlayan bir çalışma zamanı yöntemleri içerebilir [Application Insights Durum İzleyicisi] Application Insights Status Monitor doğru klasöre SDK'ları dağıtma ve başlamak için doğru yapılandırma ekleme İzleme.For example, you can include runtime methods that enable tools such as Application Insights Status Monitor to deploy the SDKs into the correct folder and add the right configurations to begin monitoring.

Application Insights gibi Log Analytics için araçlar sağlar. veri kaynaklarında çözümleme, karmaşık sorgular oluşturma ve [proaktif uyarıları göndermek] sending proactive alerts belirtilen koşulları.Like Application Insights, Log Analytics provides tools for analyzing data across sources, creating complex queries, and sending proactive alerts on specified conditions. Telemetriyi de görüntüleyebilirsiniz Azure portalında.You can also view telemetry in the Azure portal. Log Analytics'e değeri gibi mevcut izleme hizmetlerine ekler [Azure İzleyici] azure-monitor ve şirket içi ortamları da izleyebilirsiniz.Log Analytics adds value to existing monitoring services such as Azure Monitor and can also monitor on-premises environments.

Hem Application Insights ve Log Analytics kullanımı Azure Log Analytics sorgu dili.Both Application Insights and Log Analytics use Azure Log Analytics Query Language. Ayrıca kaynaklar arası sorgular tek bir sorguda Application Insights ve Log Analytics tarafından toplanan telemetriyi analiz etmek için.You can also use cross-resource queries to analyze the telemetry gathered by Application Insights and Log Analytics in a single query.

Azure İzleyici, Application Insights ve Log Analytics tüm gönderme uyarılar.Azure Monitor, Application Insights, and Log Analytics all send alerts. Örneğin, Azure İzleyici uyarılarda sunucu yanıt süresi gibi uygulama düzeyinde ölçümler üzerinde Application Insights uyarıları sırasında CPU kullanımı gibi platform düzeyi ölçümleri.For example, Azure Monitor alerts on platform-level metrics such as CPU utilization, while Application Insights alerts on application-level metrics such as server response time. Yeni etkinlik günlüğünde olayları Azure Log Analytics kullanmak için yapılandırılmış bir hizmeti için ölçümleri veya olay verileri hakkında uyarı verebilir sırada, Azure İzleyici uyarılar.Azure Monitor alerts on new events in the Azure Activity Log, while Log Analytics can issue alerts about metrics or event data for the services configured to use it. Birleştirilmiş uyarılar Azure İzleyicisi'nde yeni, farklı bir sınıflandırma kullanan Azure deneyimini uyarı birleşik olduğu.Unified alerts in Azure Monitor is a new, unified alerting experience in Azure that uses a different taxonomy.

AlternatifleriAlternatives

Bu makalede popüler özelliklerle rahatça kullanılabilir izleme seçeneklerini açıklar, ancak kendi günlük mekanizmaları oluşturma seçeneği de dahil olmak üzere çok sayıda seçeneğiniz vardır.This article describes conveniently available monitoring options with popular features, but you have many choices, including the option to create your own logging mechanisms. Bir çözümde katman oluşturdukça izleme hizmetleri eklemek önerilen bir uygulamadır.A recommended practice is to add monitoring services as you build out tiers in a solution. Bazı olası Uzantılar ve Seçenekler şunlardır:Here are some possible extensions and alternatives:

Ölçeklenebilirlik ve kullanılabilirlikScalability and availability

Bu senaryo, PaaS çözümlerini kolayca kullanılabilirlik ve ölçeklenebilirlik sizin için yapar ve hizmet düzeyi sözleşmeleri (SLA'lar) tarafından desteklenen büyük bölümünde izleme için odaklanır.This scenario focuses on PaaS solutions for monitoring in large part because they conveniently handle availability and scalability for you and are backed by service-level agreements (SLAs). Örneğin, uygulama hizmetleri bir garanti sağlar SLA SLA kullanılabilirliğini için.For example, App Services provides a guaranteed SLA for its availability.

Application Insights sahip [sınırları] app-insights-limits üzerinde saniye başına kaç istek işlenebilir.Application Insights has limits on how many requests can be processed per second. İstek sınırı aşarsanız, ileti azaltma karşılaşabilirsiniz.If you exceed the request limit, you may experience message throttling. Azaltmayı önlemek için uygulama [filtreleme] message-filtering veya [örnekleme] message-sampling veri hızı azaltmak içinTo prevent throttling, implement filtering or sampling to reduce the data rate

Uygulamayı çalıştırdığınızda, yüksek kullanılabilirlik dikkate alınacak noktalar ancak korumanın geliştiricinin sorumluluğunda değildir.High availability considerations for the app you run, however, are the developer's responsibility. Ölçeklendirme hakkında daha fazla bilgi için bkz. Örneğin, ölçeklenebilirliği hakkında hususlar temel web uygulaması başvuru mimarisi bölümünde.For information about scale, for example, see the Scalability considerations section in the basic web application reference architecture. Bir uygulama dağıtıldıktan sonra testleri ayarlayabilirsiniz [onun kullanılabilirliğini izleyebilir] monitor its availability Application Insights kullanarak.After an app is deployed, you can set up tests to monitor its availability using Application Insights.

GüvenlikSecurity

Hassas bilgi ve uyumluluk gereksinimlerini, veri toplama, bekletme ve depolama etkiler.Sensitive information and compliance requirements affect data collection, retention, and storage. Hakkında daha fazla bilgi [Application Insights] application-insights ve [Log Analytics] log-analytics telemetri işleme.Learn more about how Application Insights and Log Analytics handle telemetry.

Aşağıdaki güvenlik konuları da uygulanabilir:The following security considerations may also apply:

  • Kişisel bilgilerini işleyen, geliştiricilerin kendi veri toplayabilir veya var olan telemetriyi zenginleştirin izin vermek için bir plan geliştirin.Develop a plan to handle personal information if developers are allowed to collect their own data or enrich existing telemetry.
  • Veri saklama göz önünde bulundurun.Consider data retention. Örneğin, Application Insights telemetri verileri 90 gün boyunca saklar.For example, Application Insights retains telemetry data for 90 days. Uzun dönem için Microsoft Power BI, sürekli dışarı aktarma veya REST API'yi kullanarak erişmek istediğiniz arşiv verileri.Archive data you want access to for longer periods using Microsoft Power BI, Continuous Export, or the REST API. Depolama ücretleri uygulanır.Storage rates apply.
  • Veri ve belirli bir uygulamadan telemetri görüntüleyebilecek kişileri erişimi denetlemek için Azure kaynaklarına erişimi sınırlayın.Limit access to Azure resources to control access to data and who can view telemetry from a specific application. Erişim kilitleme telemetri izlemeye yardımcı olmak için bkz: kaynaklar, roller ve erişim denetimi Application ınsights'ta.To help lock down access to monitoring telemetry, see Resources, roles, and access control in Application Insights.
  • Uygulama kodunda kullanıcıların uygulamadan veri alımı sınırlayabilirsiniz sürümü veya da etiketi işaretçileri eklemesini engellemek için okuma/yazma erişimi denetlemek bu seçeneği düşünün.Consider whether to control read/write access in application code to prevent users from adding version or tag markers that limit data ingestion from the application. Application Insights ile bir kaynağa gönderildikten sonra bireysel veri öğeleri üzerinde denetimi yoktur var olan bir kullanıcı herhangi bir veri erişimi varsa, tüm veriler ayrı bir kaynak erişimleri şekilde.With Application Insights, there is no control over individual data items once they are sent to a resource, so if a user has access to any data, they have access to all data in an individual resource.
  • Ekleme idare mekanizmaları politikasını veya gerekirse denetimlerin üzerine Azure kaynakları maliyeti.Add governance mechanisms to enforce policy or cost controls over Azure resources if needed. Örneğin, güvenlikle ilgili ilkelerini ve rol tabanlı erişim denetimi gibi izlemek için Log Analytics kullanın veya kullanmak Azure İlkesi oluşturmak, atamak ve, ilke tanımları yönetme.For example, use Log Analytics for security-related monitoring such as policies and role-based access control, or use Azure Policy to create, assign and, manage policy definitions.
  • Olası güvenlik sorunlarını izlemek ve genel bir görünüm Azure kaynaklarınızın güvenlik durumunu almak için kullanmayı Azure Güvenlik Merkezi.To monitor potential security issues and get a central view of the security state of your Azure resources, consider using Azure Security Center.

FiyatlandırmaPricing

Ücretleri izleme hızlıca ekleyin, böylece Önden fiyatlandırma göz önünde bulundurun, ne izlemekte olduğunuz, anlamak ve ilişkili ücretleri her hizmet için denetleyin.Monitoring charges can add up quickly, so consider pricing up front, understand what you are monitoring, and check the associated fees for each service. Azure İzleyicisi'nin sağladığı [temel ölçümleri] basic metrics maliyetlerini izleme sırasında hiçbir ücret ödemeden [Application Insights] application-insights-pricing ve [ Log Analytics] log-analytics içe alınan veri miktarı ve çalıştırdığınız testlerin sayısını temel alır.Azure Monitor provides basic metrics at no cost, while monitoring costs for Application Insights and Log Analytics are based on the amount of data ingested and the number of tests you run.

Başlamanıza yardımcı olmak için kullanın [fiyatlandırma hesaplayıcısını] pricing maliyetlerini tahmin etmek için.To help you get started, use the pricing calculator to estimate costs. Fiyatlandırma, belirli bir kullanım örneği için nasıl değiştirirsiniz görmek için beklenen dağıtımınızı eşleştirmek için çeşitli seçenekler değiştirin.To see how the pricing would change for your particular use case, change the various options to match your expected deployment.

Application Insights telemetrisini Azure portalında, hata ayıklama sırasında ve uygulamanızı yayımladıktan sonra gönderilir.Telemetry from Application Insights is sent to the Azure portal during debugging and after you have published your app. Sınama amacıyla ve ücretleri önlemek için sınırlı miktarda telemetri işaretlendi.For testing purposes and to avoid charges, a limited volume of telemetry is instrumented. Daha fazla göstergeleri eklemek için telemetri sınırı yükseltebilirsiniz.To add more indicators, you can raise the telemetry limit. Daha ayrıntılı denetim için bkz: Application Insights'ta örnekleme.For more granular control, see Sampling in Application Insights.

Dağıtımdan sonra izlediğiniz bir [Canlı ölçümleri Stream] Live Metrics Stream performans göstergelerinin.After deployment, you can watch a Live Metrics Stream of performance indicators. Bu veriler depolanmaz — gerçek zamanlı ölçümlerini görüntülediğiniz — ancak telemetri toplanır ve daha sonra analiz edilir.This data is not stored — you are viewing real-time metrics — but the telemetry can be collected and analyzed later. Canlı Stream veri için ücret alınmaz.There is no charge for Live Stream data.

Log Analytics, hizmete alınan her 1 gigabayt (GB) veri için faturalandırılır.Log Analytics is billed per gigabyte (GB) of data ingested into the service. İlk 5 GB her ay Azure Log Analytics hizmetine alınan veri ücretsiz olarak sunulur ve veriler, Log Analytics çalışma alanınızda ilk 31 gün boyunca ücretsiz olarak korunur.The first 5 GB of data ingested to the Azure Log Analytics service every month is offered free, and the data is retained at no charge for first 31 days in your Log Analytics workspace.

Sonraki adımlarNext steps

Kendi izleme çözümü başlamanıza yardımcı olmak için tasarlanan bu kaynaklara göz atın:Check out these resources designed to help you get started with your own monitoring solution:

Temel web uygulaması başvuru mimarisiBasic web application reference architecture

ASP.NET Web uygulamanızı izlemeye başlamaStart monitoring your ASP.NET Web Application

Azure sanal makineler hakkında veri toplamaCollect data about Azure Virtual Machines

Azure uygulamalarını ve kaynaklarını izlemeMonitoring Azure applications and resources

Bulma ve Azure Application Insights ile çalışma zamanı özel durumları tanılamaFind and diagnose run-time exceptions with Azure Application Insights