Azure Depolama analizini günlüğe kaydetme

Depolama Analizi, bir depolama cihazına gönderilen başarılı ve başarısız isteklerle ilgili ayrıntılı bilgileri günlüğe kaydeder. Bu bilgileri kullanarak istekleri ayrı ayrı izleyebilir ve depolama hizmetiyle ilgili sorunları tanılayabilirsiniz. İstekler en iyi çaba temelinde günlüğe kaydedilir. Bu, çoğu isteğin bir günlük kaydına neden olduğu anlamına gelir, ancak Depolama Analytics günlüklerinin tamlığı ve zaman çizelgeleri garanti edilemez.

Not

Analytics günlüklerini kullanmak Depolama azure Azure İzleyici azure Depolama öneririz. Depolama Azure Azure İzleyici günlükleri genel önizleme aşamasındadır ve tüm genel bulut bölgelerinde önizleme testi için kullanılabilir. Bu önizleme bloblar (Azure Data Lake Depolama 2. Nesil dahil), dosyalar, kuyruklar ve tablolar için günlüklere olanak sağlar. Daha fazla bilgi edinmek için aşağıdaki makalelerden herhangi birini okuyun:

Depolama Analizi günlüğe kaydetme özelliği depolama hesabınızda varsayılan olarak etkin değildir. Bu özelliği powershell'Azure portal PowerShell veya Azure CLI kullanarak etkinleştirabilirsiniz. Adım adım kılavuz için bkz. Azure Depolama Analytics günlüklerini (klasik) etkinleştirme ve yönetme.

Depolama Analytics günlüklerini, REST API kitaplığı aracılığıyla program aracılığıyla da etkinleştirebilirsiniz. Her hizmet için Blob Hizmeti ÖzellikleriniAl, Kuyruk HizmetiÖzelliklerini Al ve Tablo Hizmeti Özelliklerini Al işlemlerini kullanarak Depolama Analytics'i etkinleştirin. .NET kullanarak Depolama Analytics günlüklerini etkinleştiren bir örnek görmek için bkz. Günlükleri etkinleştirme

Günlük girişleri yalnızca hizmet uç noktasına yapılan istekler varsa oluşturulur. Örneğin, bir depolama hesabının Blob uç noktası üzerinde etkinliği varsa ancak Tablo veya Kuyruk uç noktalarında etkinlik yoksa, yalnızca Blob hizmetiyle ilgili günlükler oluşturulur.

Not

Depolama Analizi günlüğe kaydetme özelliği şu anda yalnızca Blob, Kuyruk ve Tablo hizmetleri için kullanılabilir. Depolama Analiz günlüğü, premium performansa sahip BlockBlobStorage hesaplarda da kullanılabilir. Ancak premium performansa sahip genel amaçlı v2 hesaplarda kullanılamaz.

Günlüğe kaydedilen istekler

Kimliği doğrulanmış istekleri günlüğe kaydetme

Aşağıdaki türden kimliği doğrulanmış istekler kaydedilir:

  • Başarılı istekler

  • Zaman aşımı, azaltma, ağ, yetkilendirme hatalarını ve diğer hataları içeren başarısız istekler

  • Başarısız ve başarılı istekler de dahil olmak üzere Paylaşılan Erişim İmzası (SAS) veya OAuth kullanan istekler

  • Analiz verisi istekleri

    Depolama Analytics tarafından yapılan günlük oluşturma veya silme gibi istekler günlüğe kaydedilmez. Günlüğe kaydedilen verilerin tam listesi, Depolama Analytics Günlüğe Kaydedilen İşlemler ve Durum İletileri ve Depolama Analytics Günlük Biçimi konu başlıklarında belgelenmiştir.

Anonim istekleri günlüğe kaydetme

Aşağıdaki anonim istek türleri günlüğe kaydedilir:

Not

Depolama Analiz, veri düzlemi için yapılan tüm dahili çağrıları günlüğe kaydeder. Azure kaynak Depolama sağlayıcısından gelen çağrılar da günlüğe kaydedilir. Bu istekleri tanımlamak için istek URL'sinde <sk=system-1> sorgu dizesini arama.

Günlükler nasıl depolanır?

Tüm günlükler, depolama hesabı için Depolama Analytics etkinleştirildiğinde otomatik olarak oluşturulan adlı kapsayıcıda blok $logs bloblarında depolanır. Kapsayıcı, $logs depolama hesabının blob ad alanında bulunur, örneğin: http://<accountname>.blob.core.windows.net/$logs . Bu kapsayıcı, Depolama Analytics etkinleştirildikten sonra silinemez ancak içeriği silinebilir. Doğrudan kapsayıcıya gitmek için depolamaya göz atma aracınızı kullanırsanız, günlük verilerinizi içeren tüm blobları görebilir.

Not

Kapsayıcıları $logs Listeleme işlemi gibi bir kapsayıcı listeleme işlemi gerçekleştiriliyorsa kapsayıcı görüntülenmez. Doğrudan erişilebilir olması gerekir. Örneğin, kapsayıcıda bloblara erişmek için Blobları Listele işlemi $logs kullanabilirsiniz.

İstekler günlüğe kaydedilirken Depolama Analytics ara sonuçları blok olarak karşıya yükler. Düzenli aralıklarla Depolama Analytics bu blokları işler ve blob olarak kullanılabilir hale sunar. Depolama hizmetinin günlük yazıcılarını boşaltma sıklığı nedeniyle günlük $logs bloblarda görünmesi bir saate kadar zaman alır. Aynı saatte oluşturulan günlükler için yinelenen kayıtlar mevcut olabilir. RequestId ve İşlem numarasını kontrol ederek kaydın yinelenen bir kayıt olup olmadığını tespit etmek için.

Her saat için birden çok dosya içeren yüksek hacimli günlük verileriniz varsa blob meta verilerini kullanarak günlüğün hangi verileri içerdiğini belirlemek için blob meta verilerini kullanabilirsiniz. Veriler günlük dosyalarına yazılırken bazen gecikme olması da bu durum için de yararlıdır: blob meta verileri blob içeriğine blob adına göre daha doğru bir gösterge sağlar.

Çoğu depolama gözatma aracı blobların meta verilerini görüntülemenizi sağlar; Bu bilgileri PowerShell kullanarak veya program aracılığıyla da okuyabilirsiniz. Aşağıdaki PowerShell kod parçacığı, bir saat belirtmek için günlük blobları listesini adlarına göre filtrelemenin ve yalnızca yazma işlemlerini içeren günlükleri tanımlamak için meta verilere göre filtrelemenin bir örneğidir.

Get-AzStorageBlob -Container '$logs' |  
Where-Object {  
    $_.Name -match 'blob/2014/05/21/05' -and   
    $_.ICloudBlob.Metadata.LogType -match 'write'  
} |  
ForEach-Object {  
    "{0}  {1}  {2}  {3}" –f $_.Name,   
    $_.ICloudBlob.Metadata.StartTime,   
    $_.ICloudBlob.Metadata.EndTime,   
    $_.ICloudBlob.Metadata.LogType  
}  

Program aracılığıyla blob listeleme hakkında bilgi için bkz. Blob Kaynaklarını Listeleme ve Blob Kaynakları için Özellikleri ve Meta Verileri Ayarlama ve Alma.

Günlük adlandırma kuralları

Her günlük aşağıdaki biçimde yazılır:

<service-name>/YYYY/MM/DD/hhmm/<counter>.log

Aşağıdaki tabloda günlük adı içinde yer alan her öznitelik açık almaktadır:

Öznitelik Açıklama
<service-name> Depolama hizmetinin adı. Örneğin: blob , table veya queue
YYYY Günlük için dört basamaklı yıl. Örnek: 2011
MM Günlük için iki basamaklı ay. Örnek: 07
DD Günlük için iki basamaklı gün. Örnek: 31
hh 24 saat UTC biçiminde günlükler için başlangıç saati gösteren iki basamaklı saat. Örnek: 18
mm Günlükler için başlangıç dakikası belirten iki basamaklı sayı. Not: Bu değer, Depolama Analytics'in geçerli sürümünde desteklenmez ve değeri her zaman 00 olur.
<counter> Depolama hizmeti için bir saatlik süre içinde oluşturulan günlük bloblarının sayısını gösteren altı basamaklı sıfır tabanlı bir sayaç. Bu sayaç ile 000000 başlar. Örnek: 000001

Aşağıda, yukarıdaki örnekleri birleştiren eksiksiz bir örnek günlük adı verilmiştir:

blob/2011/07/31/1800/000001.log

Aşağıdaki örnek URI yukarıdaki günlüğe erişmek için kullanılabilir:

https://<accountname>.blob.core.windows.net/$logs/blob/2011/07/31/1800/000001.log

Bir depolama isteği günlüğe kaydedlandıktan sonra elde edilen günlük adı, istenen işlemi tamamlayan saatle ilişkilidir. Örneğin, 31.07.2011 tarihinde saat 18:30'da bir GetBlob isteği tamamlanmışsa günlük aşağıdaki ön ekle yazılır: blob/2011/07/31/1800/

Günlük meta verileri

Tüm günlük blobları, blob'un içerdiği günlük verilerini tanımlamak için kullanılan meta verilerle depolanır. Aşağıdaki tabloda her meta veri özniteliği açık almaktadır:

Öznitelik Açıklama
LogType Günlüğün okuma, yazma veya silme işlemleriyle ilgili bilgiler içerdiğini açıklar. Bu değer virgülle ayrılmış bir tür veya üçünün birleşimini içerebilir.

Örnek 1: write

Örnek 2: read,write

Örnek 3: read,write,delete
StartTime Günlükte, şeklinde bir girişin en erken YYYY-MM-DDThh:mm:ssZ zamanı. Örnek: 2011-07-31T18:21:46Z
EndTime Günlükteki bir girişin en son saati, biçiminde YYYY-MM-DDThh:mm:ssZ . Örnek: 2011-07-31T18:22:09Z
LogVersion Günlük biçiminin sürümü.

Aşağıdaki liste Yukarıdaki örnekleri kullanarak tüm örnek meta verileri görüntüler:

  • LogType=write
  • StartTime=2011-07-31T18:21:46Z
  • EndTime=2011-07-31T18:22:09Z
  • LogVersion=1.0

Sonraki adımlar