Azure Web App Logging – Logging to Azure Storage – Bölüm 3
0

Bir önceki bölümde Azure üzerindeki web app’e ait uygulama loglarını uygulamanın bulunduğu dizindeki bir lokasyona almıştık. Bu bölümde ise Azure üzerindeki bir blob storage üzerine loglama’nın nasıl yapılacağını anlatacağım. Ayrıca Uygulamanın üzerinde çalıştığı server loglarını da yine blob storage üzerine nasıl alacağımızdan bahsedeceğim.

Bir önceki bölümde aşağıdaki şekildeki ilk seçeneği seçerek loglamayı file system üzerine yapmıştık. Şimdi de ikinci seçenek olan blob üzerine loglamayı etkinleştirelim. Yine hatırlatmak istiyorum, bu işlem ile uygulama loglarını Azure üzerindeki blob storage’a alacağız.

Şekilde işaretlediğim numaraları madde madde anlatacak olursak;

  1. Blob’a loglama işlemini etkinleştiriyoruz.
  2. Blob üzerine yapılacak logların seviyesini belirtiyoruz.
  3. Loglama yapılacak storage account’u seçiyoruz.

Resim – 1

Loglama işleminin olması için blob storage içerisinde loglamanın yapılacağı container’ın olması gerekir. Eğer yoksa artı işaretine basılarak uygun container oluşturulmalıdır. Logların herkes tarafından ulaşılabilir olmasını engellemek için container’ı private olarak oluşturabilirsiniz.

Resim – 2

Uygun storage oluşturulup yada seçilip ardından blob storage içerisindeki loglama yapılacak container seçildikten sonra storage adımını tamamlayabiliriz. Bundan bir sonraki adım ise logların blob storage üzerinde tutulacağı süreyi belirlediğimiz adım. Ben buraya örnek olarak 7 yazdım. Bu logların storage üzerinde 7 gün saklanacağı anlamına gelir.

Resim – 3

Bu işlemlerin ardından konfigürasyonu kaydettikten sonra yine web uygulamanızı browse edip dynamicdata isimli sayfaya istek göndererek loglama işlemini tetikleyebiliriz. Bu işlemlerin ardından blob storage üzerindeki container’ı kontrol ettiğinizde web uygulamasının isminde bir klasörün oluştuğunu görebilirsiniz. Bu klasörün içerisinde tarih bazlı dizin oluşturarak loglama işlemi yapılacaktır.

Resim – 4

Tarih bazlı dizini takip ettiğinizde log dosyası aşağıdaki şekilde görünecektir. Şu anda azure üzerinde bu log dosyasını direk açma imkanınız bulunmuyor. Bu yüzden logu görüntülemek için download etmeniz gerekiyor.

Logu download butonuna tıklayarak kolaylıkla indirebiliriz.

Resim – 5

Logu indirip açtığımızda uygulamamıza eklediğimiz custom log’lar aşağıdaki gibi görüntülenecektir.

Resim – 6

Bazen uygulama geliştiricileri uygulamalarının çalıştığı web server’a ait loglara da erişmek isteyebilir. Bunlar genelde IIS loglarıdır. Azure üzerinde bu loglara erişmek için “Web Server Logging” seçeneğinin etkinleştirilmesi gerekir. Bu log tipide tıpkı uygulama loglarında olduğu gibi filesystem dizinine yada Azure üzerindeki bir blob storage üzerine alınabilir. Alınan bu log’lar uygulamaların çalıştığı web server ile alakalı ayrıntılı bilgi sağlayacaktır. Oluşan log W3C extended log file formatnda http işlemlerinin tamamını içerir.

Şimdi bu loglarında nasıl konfigüre edileceği ve nerelerde hangi isimlerde log oluşturacağına hızlı şekilde göz atalım. Aşağıdaki şekilde görüntüğü gibi Webserver logları için storage seçeneğini seçip ilgili storage accountu seçmemiz gerekir.

Resim – 7

İlgili storage account seçildiğinde loglama için bir container’a ihtiyaç duyulur. Bu sebeple web server logları için ayrı bir blob container oluşturarak loglama için seçelim.

Resim – 8

Bu işlemin ardından logların tutulacağı zamanı konfigüre ettiğimiz retention period ayarına da gerekli gün değerini atadıktan sonra web server’ımıza ait loglar blob storage üzerine yazılmaya başlayacaktır. Bir süre sonra loglama yapılacak dizin kontrol edildiğinde IIS’e ait logların aşağıdaki gibi storage üzerinde oluştuğu görünecektir.

Resim – 9

Tıpkı uygulama loglarında olduğu gibi web server loglarını filesystem üzerindeki bir dizine de alabilirsiniz. Bu işlem için aşağıdaki şekilde olduğu gibi “FileSystem” seçeneğini seçmeniz yeterli olacaktır. Bu seçeneği seçtiğimizde storage seçeneğinden farklı olarak “Quota” isimli bir textbox görünecektir. Bu logların büyüyüp dizinde çok fazla yer işgal etmesini önlemek içindir. İstediğiniz değeri MB cinsinden atayabilirsiniz. Diğer ayar zaten önceki bölümlerde bahsettiğim retention period ayarıdır.

Resim – 10

Web server loglamasının filesystem dizinine yapılması için gerekli konfigürasyonlar yapıldıktan sonra dizini kontrol ettiğinizde http isimli bir klasör görebilirsiniz. Bu klasör windows server ile alakalı logların yapılaacğı klasördür.

Resim – 11

Bu klasör içerisine girdiğinizde yeni oluşan web server logu karşınıza gelecektir.

Resim – 12

Logu görüntülediğinizde tıpkı Azure üzerindeki storage üzerine yapılan logun aynısının file server üzerine de yapıldığını görebilirsiniz.

Resim – 13

Diagnostic bölümünde web server logging’e ait iki konfigürasyon birimi daha vardır. Bunlar;

  1. Detailed Error Message: Hatalar sonucu oluşan http status code’ları için(status kodu 400 ve yukarı olanlar için) ayrıntılı bilgi sağlar. Böylece server’ın hata ürettiği durumlarda soruna ilişkin ayrıntılı bilgi elde edilebilir.
  2. Failed Request Training: Hata alan request’ler için ayrıntılı bilgi sağlar. Gelen isteği process eden tüm IIS componentlerine ait bilgiyi sağlar. Böylece zaman alan işlemler kolaylıkla belirlenebilir. Site performansını arttırma ve bazı http hatalarını izole etme gibi işlemlerde oldukça faydalıdır.

Resim -14

Bu bölümde blob storage üzerine uygulama loglarının nasıl alınacağını ve web server’a ait logların kaç farklı şekilde nasıl alındığını özetlemiş olduk.

Bir sonraki bölümde görüşmek üzere.

Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

https://docs.microsoft.com/en-us/azure/app-service/troubleshoot-diagnostic-logs

https://app.pluralsight.com/library/courses/microsoft-azure-app-services-managing

TAGs: Azure Logging, Azure Log Streaming, Azure Web App Logging, Azure app service logging, Azure web app application logging, Windows Server logging, Azure for Architects, Azure Architect, Azure IAAS Planning, Azure SAAS Planning, Azure app services, Azure web app diagnostic, Azure app service diagnostic, Azure web app diagnostic logs, Log streaming with powershell, Azyre web app log streaming with azure cli, Azure Web App FileSystem Logging, Azure web app blob storage logging

Bu İçeriğe Tepkin Ne Oldu?
  • 0
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Sakarya doğumludur. İstanbul Üniversitesi’nde Matematik/Fen ve Teknoloji öğretmenliğini bitirmiştir. Yüksek lisansını Sakarya Üniversitesi Bilgisayar Mühendisliği’nde yapmıştır. Bilişim sektöründe çeşitli firmalarda sistem ve network sorumlusu olarak çalışmıştır. Bazı kurumlarda sistem ve network üzerine uzmanlık eğitimleri vermiştir. Şu anda Netaş şirketinde kurumsal danışman olarak görev yapmaktadır. Microsoft System Center ürünleri, Powershell ve Azure teknolojileri ile ilgilenmektedir. 2016 yılında Microsoft tarafından Cloud and Datacenter alanında MVP unvanını almıştır.

Yazarın Profili
İlginizi Çekebilir

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir