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 olacağı, ancak Depolama Analizi günlüklerinin eksiksiz ve zamanında olması garanti edilmediği anlamına gelir.

Not

Depolama Analizi günlükleri yerine Azure İzleyici'de Azure Depolama günlüklerini kullanmanızı öneririz. Daha fazla bilgi edinmek için aşağıdaki makalelerden birine bakın:

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

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

Günlük girdileri yalnızca hizmet uç noktasında yapılan istekler olduğunda oluşturulur. Örneğin, bir depolama hesabının Blob uç noktasında etkinliği varsa ancak Tablo veya Kuyruk uç noktalarına sahip değilse, 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 Analizi günlüğü, premium performanslı BlockBlobStorage hesapları için de kullanılabilir. Ancak, premium performansa sahip genel amaçlı v2 hesaplarında 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 Analizi 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 Analizi Günlüğe Kaydedilen İşlemler ve Durum İletileri veDepolama Analizi Günlük Biçimi konularında belgelenmiştir.

Anonim istekleri günlüğe kaydetme

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

Not

Depolama Analizi veri düzlemine yapılan tüm iç çağrıları günlüğe kaydeder. Azure Depolama Kaynak Sağlayıcısı'ndan yapılan çağrılar da günlüğe kaydedilir. Bu istekleri tanımlamak için istek URL'sinde sorgu dizesini <sk=system-1> arayın.

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

Tüm günlükler, depolama hesabı için Depolama Analizi etkinleştirildiğinde otomatik olarak oluşturulan adlı $logskapsayıcıdaki blok 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 Analizi etkinleştirildikten sonra silinemez, ancak içeriği silinebilir. Depolama göz atma aracınızı doğrudan kapsayıcıya gitmek için kullanırsanız, günlük verilerinizi içeren tüm blobları görürsünüz.

Not

$logs Kapsayıcı listeleme işlemi gerçekleştirildiğinde kapsayıcı görüntülenmez(Örneğin, Kapsayıcıları Listele işlemi). Doğrudan erişilmesi gerekir. Örneğin, kapsayıcıdaki bloblara erişmek için Blobları $logs Listele işlemini kullanabilirsiniz.

İstekler günlüğe kaydedildikçe Depolama Analizi ara sonuçları blok olarak karşıya yükler. Depolama Analizi düzenli aralıklarla bu blokları işler ve blob olarak kullanılabilir hale getirir. Depolama hizmetinin günlük yazıcılarını boşaltma sıklığı nedeniyle günlük verilerinin $logs kapsayıcıdaki bloblarda görünmesi bir saate kadar sürebilir. Aynı saat içinde oluşturulan günlükler için yinelenen kayıtlar bulunabilir. RequestId ve operation numarasını denetleyerek kaydın yinelenen kayıt olup olmadığını belirleyebilirsiniz.

Her saat için birden çok dosya içeren yüksek hacimli günlük verileriniz varsa blob meta verilerini kullanarak blob meta verileri alanlarını inceleyerek günlüğün hangi verileri içerdiğini belirleyebilirsiniz. Veriler günlük dosyalarına yazılırken bazen gecikme olabileceğinden bu da yararlıdır: blob meta verileri blob içeriği hakkında blob adından 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ığı, günlük blobları listesini bir saat belirtmek için ada göre ve meta verilere göre yalnızca yazma işlemleri içeren günlükleri tanımlamak için filtreleme ö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  
}  

Blobları program aracılığıyla 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ındaki her öznitelik açıklanmaktadır:

Öznitelik Açıklama
<service-name> Depolama hizmetinin adı. Örneğin: blob, tableveya queue
YYYY Günlüğün dört basamaklı yılı. Örnek: 2011
MM Günlük için iki basamaklı ay. Örnek: 07
DD Günlüğün iki basamaklı günü. Örnek: 31
hh 24 saat UTC biçiminde günlüklerin başlangıç saatini gösteren iki basamaklı saat. Örnek: 18
mm Günlüklerin başlangıç dakikasını gösteren iki basamaklı sayı. Not: Bu değer geçerli Depolama Analizi sürümünde desteklenmez ve değeri her zaman olur00.
<counter> Bir saatlik zaman aralığında depolama hizmeti için oluşturulan günlük bloblarının sayısını gösteren altı basamaklı sıfır tabanlı sayaç. Bu sayaç konumunda 000000başlar. Örnek: 000001

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

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

Yukarıdaki günlüğe erişmek için kullanılabilecek örnek bir URI aşağıda verilmiştir:

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

Depolama isteği günlüğe kaydedildiğinde, sonuçta elde edilen günlük adı istenen işlemin tamamlandığı saatle ilişkilendirilir. Örneğin, bir GetBlob isteği 31.07.2011 tarihinde 18:30'da tamamlanırsa, günlük aşağıdaki ön ek ile yazılır: blob/2011/07/31/1800/

Günlük meta verileri

Tüm günlük blobları, blob'un hangi günlük verilerini içerdiğini belirlemek için kullanılabilecek meta verilerle depolanır. Aşağıdaki tabloda her meta veri özniteliği açıklanmaktadı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ış olarak üçünün bir türünü veya birleşimini içerebilir.

Örnek 1: write

Örnek 2: read,write

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

Aşağıdaki listede yukarıdaki örnekler kullanılarak tam örnek meta veriler görüntülenir:

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

Günlük girdileri

Aşağıdaki bölümlerde desteklenen her Azure Depolama hizmeti için örnek bir günlük girdisi gösterilmektedir.

Blob Depolama için örnek günlük girdisi

2.0;2022-01-03T20:34:54.4617505Z;PutBlob;SASSuccess;201;7;7;sas;;logsamples;blob;https://logsamples.blob.core.windows.net/container1/1.txt?se=2022-02-02T20:34:54Z&amp;sig=XXXXX&amp;sp=rwl&amp;sr=c&amp;sv=2020-04-08&amp;timeout=901;"/logsamples/container1/1.txt";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53371;2019-12-12;654;13;337;0;13;"xxxxxxxxxxxxxxxxxxxxx==";"xxxxxxxxxxxxxxxxxxxxx==";"&quot;0x8D9CEF88004E296&quot;";Monday, 03-Jan-22 20:34:54 GMT;;"Microsoft Azure Storage Explorer, 1.20.1, win32, azcopy-node, 2.0.0, win32, AzCopy/10.11.0 Azure-Storage/0.13 (go1.15; Windows_NT)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Blob Depolama için örnek günlük girişi (Data Lake Storage 2. Nesil etkin)

2.0;2022-01-04T22:50:56.0000775Z;RenamePathFile;Success;201;49;49;authenticated;logsamples;logsamples;blob;"https://logsamples.dfs.core.windows.net/my-container/myfileorig.png?mode=legacy";"/logsamples/my-container/myfilerenamed.png";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;73.157.16.8;2020-04-08;591;0;224;0;0;;;;Friday, 11-Jun-21 17:58:15 GMT;;"Microsoft Azure Storage Explorer, 1.19.1, win32 azsdk-js-storagedatalake/12.3.1 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Kuyruk Depolama için örnek günlük girdisi

2.0;2022-01-03T20:35:04.6097590Z;PeekMessages;Success;200;5;5;authenticated;logsamples;logsamples;queue;https://logsamples.queue.core.windows.net/queue1/messages?numofmessages=32&amp;peekonly=true&amp;timeout=30;"/logsamples/queue1";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53385;2020-04-08;536;0;232;62;0;;;;;;"Microsoft Azure Storage Explorer, 1.20.1, win32 azsdk-js-storagequeue/12.3.1 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Tablo Depolama için örnek günlük girdisi

1.0;2022-01-03T20:35:13.0719766Z;CreateTable;Success;204;30;30;authenticated;logsamples;logsamples;table;https://logsamples.table.core.windows.net/Tables;"/logsamples/Table1";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53389;2018-03-28;601;22;339;0;22;;;;;;"Microsoft Azure Storage Explorer, 1.20.1, win32, Azure-Storage/2.10.3 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"

Sonraki adımlar