Microsoft AZ-204: Azure İzleme, Tanılama ve DevOps Entegrasyonu — Çalışma kılavuzu
Şunun bir parçası: Microsoft Azure Developer Associate AZ-204 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Microsoft sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.
Azure Monitor verileri, KQL ve eylem gruplarıyla uyarı verme
Azure Monitor iki temel veri türünü alır: metrikler ve günlükler (log’lar). Metrikler, neredeyse gerçek zamanlı alım ve çok boyutlu dilimleme (ör. örneğe (instance), API rotasına göre) özelliklerine sahip, hafif, sayısal zaman serileridir. Hızlı tespit (CPU, bellek, istek oranı, gecikme, kullanılabilirlik) için en iyisidirler ve varsayılan olarak 93 güne kadar saklamayı desteklerler. Günlükler, bir Log Analytics çalışma alanında depolanan, yapılandırılmış, sorgulanabilir kayıtlardır ve Application Insights verilerini, platform kaynak günlüklerini ve yapılandırılabilir saklama süresine sahip özel günlükleri içerir. Platform metriklerini ve kaynak günlüklerini arşivleme ve analiz için bir çalışma alanına, Event Hub’a veya Storage’a yönlendirmek için Tanılama ayarlarını (Diagnostic settings) kullanın.
Kusto Sorgu Dili (Kusto Query Language - KQL), keşif amaçlı analizleri, panoları ve günlük uyarılarını güçlendirir. Temel kalıplar şunları içerir:
- Temel sorgular: Hızlı örnekleme için
undefined
; performans için zamanı her zaman sorgunun başında
undefined
ile kısıtlayın.
- Filtreleme ve yansıtma (projection): Yükü azaltmak ve analizi odaklamak için
undefined
.
- Toplama (Aggregation): Oranları, yüzdelik dilimleri veya ortalamaları hesaplamak için
undefined
; zaman çizelgeleri için
undefined
ve
undefined
kullanın.
- Birleştirmeler (Joins): Requests’i Dependencies veya Exceptions ile bağlamak için
undefined
gibi korelasyon anahtarları üzerinde
undefined
veya
undefined
; kaynaklar arası birleştirmeler için her ikisinin de aynı çalışma alanına gönderildiğinden emin olun veya kaynaklar arası sorguları etkinleştirin.
- Faydalı tablolar: Application Insights için requests, dependencies, exceptions, traces, availabilityResults; platform günlükleri için AzureDiagnostics ve AzureActivity; VM öngörüleri (insights) için Perf ve Heartbeat.
- En iyi uygulamalar: Yalnızca gereken sütunları yansıtın (project), erkenden filtreleyin, makul aralıklarla gruplayın (bin) ve gerekmedikçe büyük zaman aralıklarında maliyetli çapraz birleştirmelerden (cross-joins) kaçının.
Uyarı (Alerting), metrikleri ve günlükleri kapsar. Metrik uyarıları, metrik eşiklerini neredeyse gerçek zamanlı olarak değerlendirir, boyutları ve boyuta göre bölmeyi destekler ve statik veya dinamik (ML tabanlı temel çizgiler) eşikler kullanabilir. Durum bilgisi tutarlar (stateful) ve değerlendirme sonuçlarına göre tetiklenip otomatik olarak çözülebilirler, durum değiştiğinde tek bir bildirim üretirler. Günlük (zamanlanmış sorgu) uyarıları, belirli bir düzende KQL çalıştırır ve sorgu sonuçlarına (eşleşme sayısı veya ölçüm eşikleri) göre tetiklenir. Koşullar tablolar arasında karmaşık desenlere bağlı olduğunda veya metin analizi gerektirdiğinde günlük uyarılarını kullanın. Application Insights’taki akıllı algılama (Smart detection) ve anomali uyarıları, belirgin eşikler olmadan regresyonları vurgulayabilir.
Eylem grupları (Action groups), uyarılar için yeniden kullanılabilir yanıt setleri tanımlar. Bildirim türleri arasında e-posta, SMS, sesli arama ve Azure mobil uygulama anlık bildirimi (push) bulunur. Entegrasyonlar şunları içerir:
- Tutarlı yükler (payload) için Ortak Uyarı Şeması (Common Alert Schema) ile Webhook’lar (v1 ve v2); kimlik doğrulama için özel üstbilgiler (header) ayarlayın ve olay (incident) sistemlerine (ör. PagerDuty veya özel alıcılar) yönlendirin.
- Programatik düzeltme ve zenginleştirme için Azure Functions, Logic Apps ve Automation runbook’ları; esnek dönüşümler ve bağlayıcılar için Logic Apps kullanın.
- Eşleştirilmiş alanlarla olay (incident) açmak için ITSM bağlayıcıları (ör. ServiceNow). Bakım sırasında uyarıları bastırmak, ciddiyete göre yönlendirmek veya dinamik eylemler uygulamak için eylem gruplarını uyarı işleme kurallarıyla (alert processing rules) eşleştirin. Güvenli giden webhook’lar için, alıcıyı Azure IP’leriyle kısıtlayın veya imza/üstbilgi gerektirin ve Essentials.AlertRule ve AlertContext gibi Ortak Uyarı Şeması (Common Alert Schema) özelliklerini doğrulayın.
İzlenebilirlik ve tekrarlanabilir dağıtım için ARM şablonları
Azure Resource Manager (ARM) şablonları, kaynakları ve izleme yapılandırmasını kod olarak bildirimsel bir şekilde tanımlar. Bir şablonun yapısı şunları içerir:
- Şablon sürümünü tanımlamak için $schema ve contentVersion.
- Dışsallaştırılmış değerler için parametreler (ör. çalışma alanı adları, konumlar, SKU’lar). Gizli bilgiler için secureString/secureObject kullanın.
- Tekrardan kaçınmak için hesaplanmış değerler için değişkenler.
- Application Insights, Log Analytics çalışma alanları, uyarı kuralları, eylem grupları ve tanılama ayarlarının bildirimsel dağıtımı için kaynaklar.
- Sonraki dağıtım aşamaları için Application Insights connectionString gibi değerleri yayınlamak için çıktılar.
Karmaşık dağıtımlar oluşturmak için bağlantılı veya iç içe şablonlar kullanın. Bir dağıtım kaynağı (Microsoft.Resources/deployments), templateLink (harici URI) aracılığıyla bir alt şablona referans verir veya onu satır içi olarak gömer. Parametre nesnelerini parameters veya parametersLink aracılığıyla geçirin, sıralama için dependsOn tanımlayın ve modülleri ortamlar arasında yeniden kullanın. ARM aracılığıyla varsayılan olarak izlenebilirliğe örnekler:
- Bir Log Analytics çalışma alanı dağıtın ve Application Insights kaynakları tarafından kullanılan workspaceResourceId çıktılarını ayarlayın (çalışma alanı tabanlı mod).
- Application Insights (çalışma alanı tabanlı) oluşturun ve connectionString’ini çıktı olarak verin; eski instrumentation key’lerin açığa çıkmasını önleyin.
- Günlükleri ve metrikleri çalışma alanına ve/veya Event Hub’a akıtmak için kaynaklarda (ör. App Service, Key Vault, Storage) Tanılama ayarlarını etkinleştirin.
- Kriterler ve boyutlar içeren metrik uyarıları (microsoft.insights/metricAlerts) ve KQL ile zamanlanmış sorgu uyarıları (microsoft.insights/scheduledQueryRules) sağlayın, eylem gruplarını kaynak kimliğiyle bağlayın.
- E-posta/SMS ve webhook alıcıları ile eylem grupları (microsoft.insights/actionGroups) tanımlayın; ortama özgü yönlendirme için adresleri ve uç noktaları parametreleştirin.
Ölçeklenebilir dağıtımlar için koşulları ve kopya döngülerini benimseyin (ör. bir dizi kaynak kimliğine tanılama ayarları uygulamak). Dinamik referanslar ve kararlı adlar oluşturmak için resourceId, subscriptionResourceId, reference, concat ve guid gibi ARM fonksiyonlarını kullanın. ARM veya App Service yapılandırma kaynakları aracılığıyla sunulan uygulama ayarlarında rol adı kurallarını ve örneklemeyi merkezileştirerek telemetri yapılandırmasını hizmetler arasında tutarlı tutun.
Pratik Problem Senaryosu
Adobe’nin, Azure App Service API’leri ve AKS mikro servisleri üzerine kurulu yeni, çok bölgeli bir medya işleme ardışık düzeni için uçtan uca gözlemlenebilirliğe ihtiyacı var. Gecikme regresyonlarının hızlı bir şekilde tespit edilmesini, hizmetler arasında dağıtılmış izlemeyi, genel uç noktalar için proaktif kullanılabilirlik denetimlerini ve kod olarak altyapı tekrarlanabilirliği ile nöbetçi sistemlerine otomatik olay yönlendirmeyi gerektiriyorlar.
- Hizmetleri Application Insights ile bağlantı dizeleri kullanarak izleme
- Her App Service ve AKS iş yükünü, eski anahtarlar yerine Application Insights bağlantı dizesini kullanacak şekilde yapılandırın, böylece doğru alım uç noktaları ve geleceğe dönük yönlendirme sağlanır. Net filtreleme ve haritalar sağlamak için her hizmet başına bulut rolü adlarını ayarlayın. Alan olaylarını ve metrikleri yayınlamak için çekirdek API’lerde SDK tabanlı izlemeyi seçin; kapsamı hızlandırmak için yardımcı hizmetler için kodsuz eklemeyi (codeless attach) etkinleştirin. Neden: Bağlantı dizeleri uç nokta esnekliği sağlar; SDK’lar özel telemetri sunarken, kodsuz ekleme benimseme maliyetini düşük tutar.
- Dağıtılmış izlemeyi ve bağımlılık takibini etkinleştirme
- Giden HTTP istemcilerinin ve Azure SDK’larının W3C izleme bağlamını (trace context) yaydığından emin olun; KQL’de operation_Id sürekliliğini doğrulayın. Arka plan mesaj akışları (Service Bus) için, korelasyonun SDK’lar tarafından enjekte edildiğini ve çıkarıldığını onaylayın; özel başlıkların kullanıldığı yerlerde TelemetryInitializers ile destekleyin. Neden: Tutarlı izleme yayılımı, mikro servisler arasında doğru uçtan uca gecikme ve hata atfı sağlar.
- Kullanılabilirlik testleri ve özel sentetik denetimler uygulama
- Hafif bir sistem durumu uç noktasında (health endpoint) içerik eşleşmesi ile birden çok coğrafyadan genel API’ler için URL ping testleri yapılandırın. Kimliği doğrulanmış akışlar (token alımı ve medya gönderimi) için, iş akışını çağıran ve çalışma konumu ve ayrıntılı mesajlarla TrackAvailability sonuçları yayınlayan sentetik bir istemci uygulayın. Neden: URL ping’leri hızlı harici doğrulama sağlar; TrackAvailability, temel ping’lerin ötesinde karmaşık, kimliği doğrulanmış iş akışlarını destekler.
- Verileri bir Log Analytics çalışma alanında merkezileştirme ve platform günlüklerini yönlendirme
- Bir çalışma alanı dağıtın ve günlükleri ve metrikleri çalışma alanına akıtmak için App Services, AKS kontrol düzlemi günlükleri, Key Vault ve Storage üzerinde Tanılama ayarlarını yapılandırın. Sorguları birleştirmek için Application Insights kaynaklarının çalışma alanı tabanlı olduğundan emin olun. Neden: Tek bir çalışma alanı, bütünsel bir araştırma için istekleri, bağımlılıkları ve platform günlüklerini birleştiren hizmetler arası KQL sorgularını mümkün kılar.
- Metrik ve günlük uyarılarını eylem gruplarıyla oluşturma
- İstek süresi yüzdelik dilimleri ve konuma göre kullanılabilirlik üzerine, bulut rolü adına göre ayırarak dinamik eşiklerle metrik uyarıları tanımlayın. Operasyon adına göre hata artışlarını tespit eden ve operation_Id üzerinde bir KQL join kullanarak bağımlılık hatalarıyla ilişkilendiren zamanlanmış sorgu uyarıları ekleyin. Neden: Metrik uyarıları neredeyse gerçek zamanlı tespit sağlar; günlük uyarıları, basit eşiklerle ifade edilemeyen karmaşık kalıpları yakalar.
- Olay müdahalesini eylem grupları ve webhook’lar aracılığıyla entegre etme
- Hizmet sahipleri için e-posta, nöbetçi liderler için SMS ve Ortak Uyarı Şeması’nı (Common Alert Schema) kullanarak Adobe’nin olay platformuna güvenli bir webhook içeren bir eylem grubu yapılandırın. Yükleri en son KQL sorgu sonuçları ve topoloji meta verileriyle zenginleştirmek için bir Logic App alıcısı ekleyin. Neden: Çok kanallı bildirimler MTTA’yı (tespit için ortalama süre) azaltır; webhook ve Logic App, otomatik biletleme ve zengin bağlamlı olaylar sağlar.
- İzlemeyi ARM şablonlarıyla kod haline getirme
- Log Analytics çalışma alanını, Application Insights’ı (çalışma alanı tabanlı), tanılama ayarlarını, metrik uyarılarını, zamanlanmış sorgu uyarılarını ve eylem gruplarını dağıtmak için ARM şablonları yazın. Ortam adlarını, bölgeleri ve iletişim noktalarını parametreleştirin; sonraki uygulama yapılandırması için Application Insights connectionString’ini çıktı olarak verin. Ekibe ait modüller (platform vs. uygulama) için bağlantılı şablonlar kullanın. Neden: Kod olarak altyapı, geliştirme, hazırlık ve üretim ortamlarında tutarlı, tekrarlanabilir gözlemlenebilirlik sağlar ve CI/CD’yi destekler.
- KQL panoları ile doğrulama
- Hizmete göre gecikmeyi (yüzdelik dilimleri aralık ve role göre özetleyerek), bağımlılık hedeflerine bağlanmış hata oranlarını ve konuma göre sentetik kullanılabilirliği özetleyen KQL kullanarak panolar oluşturun. Zaman aralığı filtreleri ve izlemelere ve istisnalara detaylı inme (drill-through) özelliklerini dahil edin. Neden: KQL, mühendislik ve operasyon ekipleri için esnek analiz ve eyleme geçirilebilir görselleştirmeler sunar.
← Azure Önbelleğe Alma · Tüm alanlar
Bu soruları çözün → · ExamRoll.io’da süreli pratik →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Sınavınızı geçin →