1. Başlamadan önce
Akıllı Ev'de Hata Ayıklama adlı codelab'de ele aldığımız gibi, metrikleri ve günlükleri Akıllı Ev projelerinizde yayınlıyoruz. Metrikler, akıllı ev işleminizin nerede sorun yaşadığını belirlemenize yardımcı olur. Günlükler ise bu sorunları çözmek için ayrıntılı inceleme yaparken faydalıdır.

Projenize sağlanan metrikleri kullanarak otomatik olarak kesintileri izlemek ve hizmet kesintileri sırasında bildirim almak için uyarılar ayarlayabilirsiniz. Projenizdeki kesintileri vurgulamak için bir güven metriği yayınlıyoruz. Bu metriği, Google Cloud'da kullanabileceğiniz diğer tüm uyarı araçlarıyla birlikte bu codelab'de ele alacağız.
Ön koşullar
- Works with Smart Home entegrasyonuna sahip olmanız gerekir.
- Akıllı Ev'de Hata Ayıklama codelab'ini tamamlayın.
Neler öğreneceksiniz?
- Projenizdeki performans sorunlarını ve hizmet kesintilerini izleme
- Eşiğe dayalı uyarı oluşturma ve kesintiler sırasında bildirim alma
- Kesintileri tespit etmek için projenize sağlanan güven metriğini kullanma
2. Performans İzleme
Performansı izlemek, Google Home ekosistemiyle başarılı bir entegrasyon için kritik öneme sahiptir. Google Cloud'da akıllı ev geliştiricilerine bir dizi izleme aracı sunuyoruz. Projenizin performansı hakkında fikir edinmek için bu araçları kullanabilirsiniz.
Gösterge Tablolarına Erişme
Verilerinize erişmek için ilk adım, Google Cloud Console'a giriş yapıp İşlemler > İzleme > Gösterge Tabloları'na giderek Google Home kontrol panellerini kontrol etmektir. Kullanabileceğiniz çeşitli kontrol panelleri olduğunu göreceksiniz. Akıllı ev kontrol panelleri, Google Home Analytics önekiyle gelir.

Her entegrasyon türünü temsil etmek için ayrı ayrı kontrol panelleri oluşturduk. Bulut, yerel ve Matter entegrasyonlarının kendi kontrol paneli vardır. Kamera akışı protokolleriyle ilgili veriler ise Kamera Kalitesi kontrol panelinde sağlanır. Bu kontrol panelleri yalnızca ilgili türde bir entegrasyonunuz ve istekleri karşılayan çalışan bir projeniz varsa veri içerir.
Bu kontrol panellerinden birini açtığınızda aşağıdaki gibi bir görünüm elde edersiniz:

Gösterge Tablolarında, projeniz tarafından işlenen isteklerin ayrıntılarını gösteren çeşitli grafikler bulunur. Her entegrasyon kontrol panelinde, projeniz tarafından işlenen toplam istek sayısını gösteren bir grafik, söz konusu entegrasyon türünün başarı oranını gösteren bir grafik ve ilgili cihaz türlerini ve özelliklerini gösteren çeşitli grafikler görürsünüz.
Akıllı Ev işlemlerinizin performansını değerlendirmek için üç önemli grafik vardır:

Kesintiler sırasında genellikle başarı yüzdesinde düşüş, hata dağılımı grafiğinde ise artış görülür. Yürütme başarısı yüzdesini izlemek kesintiyi fark etmenize yardımcı olurken hata dökümündeki en önemli hatalara göz atmak hata ayıklama konusunda yardımcı olabilir. Ayrıca, kesintiler sırasında gecikme süresinde artış olduğunu da görebilirsiniz. Bu artışı istek gecikmesi grafiklerinde inceleyebilirsiniz.
Google Home Analytics kontrol panellerinde gördüğünüz grafiklerin bulunduğu varsayılan görünümün, akıllı ev metrikleri verilerini kullanarak projeniz için oluşturduğumuz bir görünüm olduğunu unutmayın. Ayrıca, aynı temel metriklerden kendi grafiklerinizi oluşturmak ve bunları özel kontrol panellerinize kaydetmek için Metrik Gezgini'ni kullanabilirsiniz.
Metrik Gezgini
Metrik Gezgini, projenizin veri kümesinin kesitlerini görselleştirmek için kullanılan bir araçtır. Araca Google Cloud Console'da İşlemler > İzleme > Metrik Gezgini'ne giderek erişebilirsiniz.
Google Cloud, akıllı evle ilgili olmayanlar da dahil olmak üzere birçok farklı metrik sunar. Akıllı ev için sağladığımız metrikler "actions.googleapis.com/smarthome_action/..." kaynağı altında listelenir ve metrik seçim kutusuna "smarthome" yazılarak kolayca aranabilir.

"smarthome" araması, projenize sağladığımız tüm akıllı ev metriklerini gösterir. Metriklerimizin her biri hakkında ayrıntılı bilgiyi dokümanlarımızın İzleme ve Günlüğe Kaydetme sayfalarında bulabilirsiniz.
Projenizi izleme söz konusu olduğunda başvurabileceğiniz en basit metrik, İstek sayısı metriğidir (delta metriği). Bu metrik, kullanıcılarınız tarafından başlatılan her akıllı ev yürütme işlemi için bir giriş kaydeder ve yürütme işlemine dahil olan cihaz türü, özellik, yürütme türü gibi alanları ve sonucu gösteren durum alanını kaydeder.
Bu metriğin seçilmesiyle, her bir veri grubu aşağıdaki gibi gösteren bir ekran oluşturulur:

Temel olarak, bu metrikte bulunan her veri etiketi kombinasyonu için önceki ve mevcut zaman aralıkları arasındaki değişikliği (delta) kaydeden bir grup vardır. İstediğiniz görünüm veri dilimini elde etmek için bu grupları birleştirebilir veya filtreleyebilirsiniz. Ayrıca, veriler bir hizalama işlevi (DELTA, MEAN, MEDIAN, SUM) ile seçilen zaman aralıklarına göre hizalanır. Aksi gerekmedikçe, genellikle bir delta metriğiyle birlikte Delta hizalamasını kullanırsınız.
Google Home Analytics kontrol panellerinde bulunan grafiklerin çoğunu Metrik Gezgini'ni kullanarak oluşturabilir ve daha sonra erişmek için özel bir kontrol paneline kaydedebilirsiniz. Oran grafiği gibi daha karmaşık görünümler elde etmek için MQL'yi (Monitoring Query Language) kullanmanız gerekir.
3. Başarı Ölçüleri
Entegrasyon başarınızı izlemek için istek sayısı metriğinizden hesapladığımız başarı oranını temel gösterge olarak veya daha özel bir yaklaşım için başarı güvenini kullanabilirsiniz.
Başarı Oranı
Başarı oranı, tüm istekler için başarılı istek sayısının toplam istek sayısına bölünmesiyle hesaplanır. Bu rapora, Google Home Analytics kontrol panelinizdeki Sipariş Tamamlama Başarı Oranı grafiğinden erişebilirsiniz.

Karşılama Başarı Oranı grafiği, projenizdeki performansı izlemek için çok yararlıdır ancak özel kontrol panellerinizi oluştururken veya uyarıları ayarlarken pek yararlı değildir. Başarı oranı, kendi başına bir metrik olmaktan ziyade istek sayısı metriğinizden elde edildiğinden bu oranı her iki özellikle de kullanmak için Metrik Gezgini'nde MQL (Monitoring Query Language) kullanarak yeniden oluşturmanız gerekir.
Ayrıca projenizdeki performans kesintilerini izlemek için çok daha uzmanlaşmış bir yaklaşımın gerekli olduğunu düşünüyoruz. Bu nedenle, mevcut karşılama başarı oranınızın geçmiş normlardan ne kadar saptığına bağlı olarak değişen güven metriğini oluşturduk.
Güven Metriği
Kesintiler, projeler için farklı şekil ve boyutlarda olabilir. Birkaç saatten yalnızca birkaç dakikaya kadar sürebilen bu olayları tanımlamak zor olabilir. Bu amaçla projenizde, geçmiş performansa dayalı olarak güvenilirliği tahmin etmek için normalleştirilmiş bir değer sağlayan bir güven metriği oluşturduk. Metrik gezgininde smarthome araması yapıp Execution success confidence'ı (Yürütme başarısı güveni) seçerek güven metriğine erişebilirsiniz.

Akıllı ev entegrasyonunuz geçmiş performansın (7 günlük ortalama) üzerinde veya bu performansa eşit olduğunda bu metrik maksimum değeri (1,0) verir. Başarı yüzdeniz 4 standart sapmadan fazla değiştiğinde (7 gün boyunca da hesaplanır) bu metrik minimum değeri (0,0) verir. Standart sapmaların çok küçük olduğu (yüzde 2,5'ten az) durumlarda bu metrik, başarı yüzdesinde %10'luk bir düşüşte 0,0 değerini temel alır.
Bu metrik, tüm ara durumlar için 1,0 (kesintinin olmadığına dair tam güven) ile 0,0 (kesinti olduğuna dair maksimum güven) arasında değerler sağlar.
Bu nedenle, uyarı ayarlarken (bir sonraki bölümde ele alınacaktır) eşik olarak 0,5 değerini kullanmanızı öneririz. Bu, 2 standart sapmaya veya% 5'lik bir düşüşe (hangisi daha yüksekse) karşılık gelir.
4. Uyarıları ayarlama
Bir sonraki adım, projenizde uyarıları ayarlamak için önceki bölümde öğrendiğiniz her şeyi kullanmaktır.
Uyarı politikası oluşturma
Google Cloud'da otomatik uyarılar, uyarı politikaları aracılığıyla ayarlanır. Uyarı politikalarına yan menüdeki İşlemler > İzleme > Uyarılar sekmesinden erişebilirsiniz. +POLİTİKA OLUŞTUR seçeneğini belirleyerek yeni bir uyarı politikası oluşturabilirsiniz. Bu seçenek sizi uyarı politikası oluşturma ekranına yönlendirir:

Uyarı politikası oluşturmak üç bölümlü bir işlemdir. Öncelikle bir koşul ekleyerek neyi izlemek istediğinizi belirlemeniz gerekir. KOŞUL EKLE düğmesine basıldığında, koşulu yapılandırmak için bazı ek kontrollerin bulunduğu, Metrik Gezgini'ne benzer bir pencere açılır:

Hedef için önceki bölümde ele aldığımız güven metriğini seçin. Bu metriği kullanarak düzleştiricinin delta olarak ayarlandığından emin olun (Gelişmiş Seçenekleri Göster > Düzleştirici). Bir sonraki adım, uyarı koşulunu yapılandırmak ve aşağıdaki ayarları kullanmaktır:

Koşul tetiklenirse: Bu, uyarıların ne zaman tetikleneceğini belirleyen ana yapılandırmadır. Herhangi bir zaman serisi ihlal ediyor'u seçmek işe yarayacaktır. Çünkü metriğimizde bir eşik belirleyip değerin bu eşiği aşıp aşmadığını izleyeceğiz.
Koşul: Değer eşiğin altına düştüğünde uyarının tetiklenmesini istediğimiz için bunu altında olarak ayarlayacağız. Metriğimizde 1,0 değeri entegrasyonun sorunsuz çalıştığını, 0,0 değeri ise kesin bir kesintinin olduğunu gösterir.
Eşik: Bu değer 0,5 olarak ayarlandığında en iyi sonuçları sağlamak için güven metriğini oluşturduk. Daha sık uyarı almak ve daha küçük olaylar için bildirim almak istiyorsanız bu değeri artırmayı deneyebilirsiniz (maksimum 1, 0). Daha sonra, yalnızca daha ciddi sorunlar için daha az uyarı almak istiyorsanız bu değeri düşürmeyi deneyebilirsiniz (minimum 0, 0).
Süre: Bu ayar, kesintiyle ilgili uyarı almadan önce kesintinin ne kadar sürmesi gerektiğini belirler. Eşiği aşan herhangi bir nokta için uyarı almak istiyorsanız bu ayarı en son değer olarak bırakmanızı öneririz. Güven metriğimiz, o dönemdeki ortalama başarıya bakılarak her 15 dakikada bir yayınlanır.
Koşul ekleme işlemini tamamladıktan sonraki adım, bildirim kanalını seçmektir. En basit bildirim yöntemi e-posta uyarılarıdır. Bildirim kanalları açılır listesinde yer alan bir e-posta adresini seçebilirsiniz:

Olay kapatıldığında bildir seçeneğini işaretlerseniz olay kapatıldı olarak işaretlendiğinde başka bir bildirim gönderilir. Bu durumda, varsayılan olarak 7 gün olarak belirtilen bir Olayı otomatik kapatma süresi de seçmeniz gerekir.
Son adımda, uyarınıza bir ad verin ve bildirimlere eklenmesini istediğiniz belgeleri ekleyin.

Özellikle uyarıyı alacak kişi siz değilseniz doküman sağlamanız önerilir. Bir olay sırasında nereye bakılacağı ve nasıl önceliklendirileceği ve hata ayıklanacağı gibi adımlar eklemek kesinti sırasında yardımcı olabilir. Gerekirse Sorun Giderme Kılavuzumuza başvurabilirsiniz.
Kaydedildikten sonra uyarı politikanız, Uyarılar sayfasındaki Politikalar bölümünde listelenir.

5. Kesintileri Azaltma
Uyarıları ayarladıktan sonra, sağladığınız bildirim kanalları üzerinden kesintiler sırasında bilgilendirilirsiniz. Ayrıca, Uyarılar sayfasında bir olay girişi oluşturulur.
Uyarı Alma
Bu codelab'de sağladığımız uyarı kanalı bir e-postaydı. Ayarladıktan sonra umarız herhangi bir uyarı (kesinti) almazsınız. Ancak uyarı alırsanız bildirim aşağıdaki gibi görünür:

Uyarı bildiriminin, belirttiğiniz eşiği aşan gözlemlenen değeri ve olayın ilk başladığı zamanı gösteren bir zaman damgası sağladığını unutmayın.
İzleme Olayları
Olaylar gerçekleştiğinde Uyarılar sayfasındaki olaylar bölümünde de sayılır.

Kesintiyle ilgili ayrıntıları (ör. ne kadar sürdüğü veya ne kadar ciddi olduğu) görmek için ilgili olayı tıklayabilirsiniz.
Uyarı aldığınızda ilk olarak metriklerinize göz atmanız ve ardından kesintinize neden olan hataları günlüklerinizde aramanız gerektiğini unutmayın. Bunları nasıl yapacağınızı Akıllı Evde Hata Ayıklama codelab'imizde hatırlayabilirsiniz.
6. Tebrikler

Tebrikler! Projenize sağlanan metrikleri kullanarak uyarıları nasıl ayarlayacağınızı, kesintileri otomatik olarak nasıl izleyeceğinizi ve hizmet kesintileri sırasında nasıl bildirim alacağınızı başarıyla öğrendiniz.
Sonraki adımlar
Bu Codelab'den yararlanarak aşağıdaki alıştırmaları deneyin ve ek kaynakları inceleyin:
- Bu codelab'de öğrendiklerinizi projenize sağlanan diğer metriklerle birleştirebilirsiniz. Kullanılabilir metriklerin tam listesini İzleme sayfasının Desteklenen Metrikler bölümünde görebilirsiniz.
- Google Cloud dokümanlarının Bildirim Seçenekleri sayfasında açıklanan uyarılar için diğer bildirim kanalı türlerini inceleyin.