Azure Data Lake Storage 1. Nesil için tanılama günlüklerine erişme
Azure Data Lake Storage 1. Nesil hesabınız için tanılama günlüğünü etkinleştirmeyi ve hesabınız için toplanan günlükleri görüntülemeyi öğrenin.
Kuruluşlar verilere erişen kullanıcıların listesi, verilere ne sıklıkta erişileceği, hesapta ne kadar veri depolandığı gibi bilgiler sağlayan veri erişim denetim izlerini toplamak için Azure Data Lake Storage 1. Nesil hesapları için tanılama günlüğünü etkinleştirebilir. Etkinleştirildiğinde, tanılamalar ve/veya istekler en iyi çaba temelinde günlüğe kaydedilir. Hem İstekler hem de Tanılama günlüğü girdileri yalnızca hizmet uç noktasında yapılan istekler olduğunda oluşturulur.
Önkoşullar
- Bir Azure aboneliği. Bkz. Azure ücretsiz deneme sürümü edinme.
- 1. Nesil hesabını Azure Data Lake Storage. Azure portal kullanarak Azure Data Lake Storage 1. Nesil'i kullanmaya başlama başlığındaki yönergeleri izleyin.
Data Lake Storage 1. Nesil hesabınız için tanılama günlüğünü etkinleştirme
Yeni Azure portal oturum açın.
Data Lake Storage 1. Nesil hesabınızı açın ve Data Lake Storage 1. Nesil hesabı dikey pencerenizden Tanılama ayarları'nı tıklatın.
Tanılama ayarları dikey penceresinde Tanılamayı aç'a tıklayın.
Tanılama ayarları dikey penceresinde, tanılama günlüğünü yapılandırmak için aşağıdaki değişiklikleri yapın.
Ad alanına tanılama günlüğü yapılandırması için bir değer girin.
Verileri farklı şekillerde depolamayı/işlemeyi seçebilirsiniz.
Günlükleri bir Azure Depolama hesabında depolamak için Depolama hesabında arşivle seçeneğini belirleyin. Daha sonraki bir tarihte toplu işlenecek verileri arşivlamak istiyorsanız bu seçeneği kullanırsınız. Bu seçeneği seçerseniz günlükleri kaydetmek için bir Azure Depolama hesabı sağlamanız gerekir.
Azure Olay Hub'ına günlük verilerinin akışını yapmak için bir olay hub'ına Stream seçeneğini belirleyin. Gelen günlükleri gerçek zamanlı olarak analiz etmek için bir aşağı akış işleme işlem hattınız varsa büyük olasılıkla bu seçeneği kullanırsınız. Bu seçeneği belirtirseniz, kullanmak istediğiniz Azure Olay Hub'ına ilişkin ayrıntıları sağlamanız gerekir.
Oluşturulan günlük verilerini analiz etmek üzere Azure İzleyici hizmetini kullanmak için Log Analytics'e Gönder seçeneğini belirleyin. Bu seçeneği seçerseniz Log Analytics çalışma alanının günlük analizini gerçekleştirmek için kullanacağınız ayrıntıları sağlamanız gerekir. Azure İzleyici günlükleriyle toplanan verileri görüntüleme veya analiz etme bölümüne bakın. Azure İzleyici günlüklerini kullanma hakkında ayrıntılı bilgi için arama yapın.
Denetim günlüklerini mi yoksa istek günlüklerini mi yoksa her ikisini birden mi almak istediğinizi belirtin.
Verilerin saklanması gereken gün sayısını belirtin. Saklama yalnızca günlük verilerini arşivlerken Azure depolama hesabı kullanıyorsanız geçerlidir.
Kaydet’e tıklayın.
Tanılama ayarlarını etkinleştirdikten sonra, Tanılama Günlükleri sekmesinde günlükleri watch.
Data Lake Storage 1. Nesil hesabınız için tanılama günlüklerini görüntüleme
Data Lake Storage 1. Nesil hesabınızın günlük verilerini görüntülemenin iki yolu vardır.
- Data Lake Storage 1. Nesil hesabı ayarları görünümünden
- Verilerin depolandığı Azure Depolama hesabından
Data Lake Storage 1. Nesil Ayarları görünümünü kullanma
Data Lake Storage 1. Nesil hesabı Ayarları dikey penceresinde Tanılama Günlükleri'ne tıklayın.
Tanılama Günlükleri dikey penceresinde, Denetim Günlükleri ve İstek Günlükleri tarafından kategorilere ayrılmış günlükleri görmeniz gerekir.
- İstek günlükleri, Data Lake Storage 1. Nesil hesabında yapılan her API isteğini yakalar.
- Denetim Günlükleri, istek Günlüklerine benzer ancak Data Lake Storage 1. Nesil hesabında gerçekleştirilen işlemlerin çok daha ayrıntılı dökümünü sağlar. Örneğin, istek günlüklerindeki tek bir karşıya yükleme API çağrısı, denetim günlüklerinde birden çok "Ekleme" işlemine neden olabilir.
Günlükleri indirmek için her günlük girdisinde İndir bağlantısına tıklayın.
Günlük verilerini içeren Azure Depolama hesabından
Günlüğe kaydetmek için Data Lake Storage 1. Nesil ile ilişkili Azure Depolama hesabı dikey penceresini açın ve bloblar'a tıklayın. Blob hizmeti dikey penceresinde iki kapsayıcı listelenir.
- Kapsayıcı içgörüleri-günlükleri-denetimi denetim günlüklerini içerir.
- kapsayıcı içgörüleri-logs-requests istek günlüklerini içerir.
Bu kapsayıcılar içinde günlükler aşağıdaki yapı altında depolanır.
Örneğin, bir denetim günlüğünün tam yolu
https://adllogs.blob.core.windows.net/insights-logs-audit/resourceId=/SUBSCRIPTIONS/<sub-id>/RESOURCEGROUPS/myresourcegroup/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/mydatalakestorage/y=2016/m=07/d=18/h=04/m=00/PT1H.json
Benzer şekilde, istek günlüğünün tam yolu
https://adllogs.blob.core.windows.net/insights-logs-requests/resourceId=/SUBSCRIPTIONS/<sub-id>/RESOURCEGROUPS/myresourcegroup/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/mydatalakestorage/y=2016/m=07/d=18/h=14/m=00/PT1H.json
Günlük verilerinin yapısını anlama
Denetim ve istek günlükleri JSON biçimindedir. Bu bölümde, istek ve denetim günlükleri için JSON yapısını inceleyeceğiz.
İstek günlükleri
JSON biçimli istek günlüğünde örnek bir giriş aşağıda verilmiştir. Her blob, günlük nesneleri dizisi içeren kayıtlar adlı bir kök nesneye sahiptir.
{
"records":
[
. . . .
,
{
"time": "2016-07-07T21:02:53.456Z",
"resourceId": "/SUBSCRIPTIONS/<subscription_id>/RESOURCEGROUPS/<resource_group_name>/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/<data_lake_storage_gen1_account_name>",
"category": "Requests",
"operationName": "GETCustomerIngressEgress",
"resultType": "200",
"callerIpAddress": "::ffff:1.1.1.1",
"correlationId": "4a11c709-05f5-417c-a98d-6e81b3e29c58",
"identity": "1808bd5f-62af-45f4-89d8-03c5e81bac30",
"properties": {"HttpMethod":"GET","Path":"/webhdfs/v1/Samples/Outputs/Drivers.csv","RequestContentLength":0,"StoreIngressSize":0 ,"StoreEgressSize":4096,"ClientRequestId":"3b7adbd9-3519-4f28-a61c-bd89506163b8","StartTime":"2016-07-07T21:02:52.472Z","EndTime":"2016-07-07T21:02:53.456Z","QueryParameters":"api-version=<version>&op=<operationName>"}
}
,
. . . .
]
}
İstek günlüğü şeması
Ad | Tür | Description |
---|---|---|
time | Dize | Günlüğün zaman damgası (UTC olarak) |
resourceId | Dize | İşlemin gerçekleştiği kaynağın kimliği |
category | Dize | Günlük kategorisi. Örneğin , İstekler. |
operationName | Dize | Günlüğe kaydedilen işlemin adı. Örneğin, getfilestatus. |
resultType | Dize | İşlemin durumu, örneğin 200. |
callerIpAddress | Dize | İsteği yapan istemcinin IP adresi |
correlationId | Dize | bir dizi ilgili günlük girdisini birlikte gruplandırmak için kullanılabilecek günlüğün kimliği |
identity | Nesne | Günlüğü oluşturan kimlik |
properties | JSON | Ayrıntılar için aşağıya bakın |
İstek günlüğü özellikleri şeması
Ad | Tür | Description |
---|---|---|
HttpMethod | Dize | İşlem için kullanılan HTTP Yöntemi. Örneğin, GET. |
Yol | Dize | İşlemin gerçekleştirildiği yol |
RequestContentLength | int | HTTP isteğinin içerik uzunluğu |
ClientRequestId | Dize | Bu isteği benzersiz olarak tanımlayan kimlik |
StartTime | Dize | Sunucunun isteği aldığı saat |
EndTime | Dize | Sunucunun yanıt gönderdiği saat |
StoreIngressSize | Uzun | Data Lake Store'a girilen bayt cinsinden boyut |
StoreEgressSize | Uzun | Data Lake Store'dan alınan bayt cinsinden boyut |
QueryParameters | Dize | Açıklama: Bunlar http sorgu parametreleridir. Örnek 1: api-version=2014-01-01&op=getfilestatus Örnek 2: op=APPEND&append=true&syncFlag=DATA&filesessionid=bee3355a-4925-4435-bb4d-ceea52811aeb&leaseid=bee3355a-4925-4435-bb4d-ceea52811aeb&offset=28313319&api-version=2017-08-01 |
Denetim günlükleri
JSON biçimli denetim günlüğünde örnek bir giriş aşağıda verilmiştır. Her blob, günlük nesneleri dizisi içeren kayıtlar adlı bir kök nesneye sahiptir
{
"records":
[
. . . .
,
{
"time": "2016-07-08T19:08:59.359Z",
"resourceId": "/SUBSCRIPTIONS/<subscription_id>/RESOURCEGROUPS/<resource_group_name>/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/<data_lake_storage_gen1_account_name>",
"category": "Audit",
"operationName": "SeOpenStream",
"resultType": "0",
"resultSignature": "0",
"correlationId": "381110fc03534e1cb99ec52376ceebdf;Append_BrEKAmg;25.66.9.145",
"identity": "A9DAFFAF-FFEE-4BB5-A4A0-1B6CBBF24355",
"properties": {"StreamName":"adl://<data_lake_storage_gen1_account_name>.azuredatalakestore.net/logs.csv"}
}
,
. . . .
]
}
Denetim günlüğü şeması
Ad | Tür | Description |
---|---|---|
time | Dize | Günlüğün zaman damgası (UTC olarak) |
resourceId | Dize | İşlemin gerçekleştiği kaynağın kimliği |
category | Dize | Günlük kategorisi. Örneğin , Denetim. |
operationName | Dize | Günlüğe kaydedilen işlemin adı. Örneğin, getfilestatus. |
resultType | Dize | İşlemin durumu, örneğin 200. |
resultSignature | Dize | İşlemle ilgili ek ayrıntılar. |
correlationId | Dize | bir dizi ilgili günlük girdisini gruplandırmak için kullanılabilecek günlüğün kimliği |
identity | Nesne | Günlüğü oluşturan kimlik |
properties | JSON | Ayrıntılar için aşağıya bakın |
Denetim günlüğü özellikleri şeması
Ad | Tür | Description |
---|---|---|
StreamName | Dize | İşlemin gerçekleştirildiği yol |
Günlük verilerini işleme örnekleri
Azure Data Lake Storage 1. Nesil günlüklerinden Azure İzleyici günlüklerine günlük gönderirken (bkz. Azure İzleyici günlükleriyle toplanan verileri görüntüleme veya analiz etme, Azure İzleyici günlüklerini kullanmayla ilgili ayrıntıları arama), aşağıdaki sorgu kullanıcı görünen adlarının listesini, olayların zamanını ve görsel bir grafikle birlikte olayın zamanını içeren bir tablo döndürür. Kullanıcı GUID'sini veya diğer öznitelikleri gösterecek şekilde kolayca değiştirilebilir:
search *
| where ( Type == "AzureDiagnostics" )
| summarize count(TimeGenerated) by identity_s, TimeGenerated
Azure Data Lake Storage 1. Nesil, günlük verilerini işleme ve analiz etme hakkında bir örnek sağlar. Örneği adresinde https://github.com/Azure/AzureDataLake/tree/master/Samples/AzureDiagnosticsSamplebulabilirsiniz.