Åtkomst till diagnostikloggar för Azure Data Lake Storage Gen1
Lär dig hur du aktiverar diagnostikloggning för ditt Azure Data Lake Storage Gen1-konto och hur du visar loggarna som samlats in för ditt konto.
Organisationer kan aktivera diagnostikloggning för sitt Azure Data Lake Storage Gen1-konto för att samla in spårningsloggar för dataåtkomst som innehåller information som en lista över användare som kommer åt data, hur ofta data används, hur mycket data som lagras i kontot osv. När den är aktiverad loggas diagnostiken och/eller begäranden på bästa sätt. Både begäranden och diagnostikloggposter skapas endast om det finns begäranden mot tjänstslutpunkten.
Förutsättningar
- En Azure-prenumeration. Se Hämta en kostnadsfri utvärderingsversion av Azure.
- Azure Data Lake Storage Gen1-konto. Följ anvisningarna i Kom igång med Azure Data Lake Storage Gen1 med hjälp av Azure Portal.
Aktivera diagnostikloggning för ditt Data Lake Storage Gen1-konto
Logga in på nya Azure Portal.
Öppna ditt Data Lake Storage Gen1 konto och klicka på Diagnostikinställningar från bladet Data Lake Storage Gen1 konto.
På bladet Diagnostikinställningar klickar du på Aktivera diagnostik.
På bladet Diagnostikinställningar gör du följande ändringar för att konfigurera diagnostikloggning.
För Namn anger du ett värde för konfigurationen av diagnostikloggen.
Du kan välja att lagra/bearbeta data på olika sätt.
Välj alternativet Arkivera till ett lagringskonto för att lagra loggar till ett Azure Storage-konto. Du använder det här alternativet om du vill arkivera de data som ska batchbearbetas vid ett senare tillfälle. Om du väljer det här alternativet måste du ange ett Azure Storage-konto för att spara loggarna.
Välj alternativet för att Stream till en händelsehubb för att strömma loggdata till en Azure Event Hub. Troligtvis använder du det här alternativet om du har en pipeline för nedströmsbearbetning för att analysera inkommande loggar i realtid. Om du väljer det här alternativet måste du ange information för den Azure Event Hub som du vill använda.
Välj alternativet Skicka till Log Analytics för att använda Azure Monitor-tjänsten för att analysera genererade loggdata. Om du väljer det här alternativet måste du ange information för log analytics-arbetsytan som du skulle använda för att utföra logganalysen. Mer information om hur du använder Azure Monitor-loggar finns i Visa eller analysera data som samlas in med Azure Monitor-loggar .
Ange om du vill hämta granskningsloggar eller begärandeloggar eller båda.
Ange hur många dagar data måste behållas för. Kvarhållning gäller endast om du använder Azure Storage-kontot för att arkivera loggdata.
Klicka på Spara.
När du har aktiverat diagnostikinställningar kan du watch loggarna på fliken Diagnostikloggar.
Visa diagnostikloggar för ditt Data Lake Storage Gen1-konto
Det finns två sätt att visa loggdata för ditt Data Lake Storage Gen1-konto.
- Från vyn Data Lake Storage Gen1 kontoinställningar
- Från Azure Storage-kontot där data lagras
Använda vyn Data Lake Storage Gen1 inställningar
Klicka på Diagnostikloggar på bladet inställningar för Data Lake Storage Gen1 konto.
På bladet Diagnostikloggar bör du se loggarna kategoriserade efter granskningsloggar och begärandeloggar.
- Begärandeloggar samlar in varje API-begäran som görs på Data Lake Storage Gen1-kontot.
- Granskningsloggar liknar begärandeloggar men ger en mycket mer detaljerad uppdelning av de åtgärder som utförs på Data Lake Storage Gen1-kontot. Ett enda uppladdnings-API-anrop i begärandeloggar kan till exempel resultera i flera "Tilläggsåtgärder" i granskningsloggarna.
Om du vill ladda ned loggarna klickar du på länken Ladda ned för varje loggpost.
Från Azure Storage-kontot som innehåller loggdata
Öppna bladet Azure Storage-konto som är associerat med Data Lake Storage Gen1 för loggning och klicka sedan på Blobar. Bladet Blob-tjänst visar två containrar.
- Container insights-logs-audit innehåller granskningsloggarna.
- Container insights-logs-requests innehåller begärandeloggarna.
I dessa containrar lagras loggarna under följande struktur.
Till exempel kan den fullständiga sökvägen till en granskningslogg vara
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
På samma sätt kan den fullständiga sökvägen till en begärandelogg vara
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
Förstå strukturen för loggdata
Gransknings- och begärandeloggarna är i JSON-format. I det här avsnittet tittar vi på strukturen för JSON för begärande- och granskningsloggar.
Begärandeloggar
Här är en exempelpost i JSON-formaterad begärandelogg. Varje blob har ett rotobjekt som kallas poster som innehåller en matris med loggobjekt.
{
"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>"}
}
,
. . . .
]
}
Schema för begärandelogg
Namn | Typ | Description |
---|---|---|
time | Sträng | Tidsstämpeln (i UTC) för loggen |
resourceId | Sträng | ID för resursen som åtgärden ägde rum på |
category | Sträng | Loggkategorin. Till exempel Begäranden. |
operationName | Sträng | Namnet på den åtgärd som loggas. Till exempel getfilestatus. |
resultType | Sträng | Status för åtgärden, till exempel 200. |
callerIpAddress | Sträng | IP-adressen för klienten som gör begäran |
correlationId | Sträng | ID:t för loggen som kan användas för att gruppera en uppsättning relaterade loggposter |
identity | Objekt | Identiteten som genererade loggen |
properties | JSON | Mer information finns nedan |
Schema för egenskaper för begärandelogg
Namn | Typ | Description |
---|---|---|
HttpMethod | Sträng | HTTP-metoden som används för åtgärden. Till exempel GET. |
Sökväg | Sträng | Sökvägen som åtgärden utfördes på |
RequestContentLength | int | Innehållslängden för HTTP-begäran |
ClientRequestId | Sträng | Det ID som unikt identifierar den här begäran |
StartTime | Sträng | Den tidpunkt då servern tog emot begäran |
EndTime | Sträng | Tiden då servern skickade ett svar |
StoreIngressSize | Lång | Storlek i byte som har ingresserats till Data Lake Store |
StoreEgressSize | Lång | Storlek i utgående byte från Data Lake Store |
QueryParameters | Sträng | Beskrivning: Det här är http-frågeparametrarna. Exempel 1: api-version=2014-01-01&op=getfilestatus Exempel 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 |
Granskningsloggar
Här är en exempelpost i den JSON-formaterade granskningsloggen. Varje blob har ett rotobjekt som kallas poster som innehåller en matris med loggobjekt
{
"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"}
}
,
. . . .
]
}
Schema för spårningslogg
Namn | Typ | Description |
---|---|---|
time | Sträng | Tidsstämpeln (i UTC) för loggen |
resourceId | Sträng | ID för resursen som åtgärden ägde rum på |
category | Sträng | Loggkategorin. Till exempel Granskning. |
operationName | Sträng | Namnet på åtgärden som loggas. Till exempel getfilestatus. |
resultType | Sträng | Status för åtgärden, till exempel 200. |
resultSignature | Sträng | Ytterligare information om åtgärden. |
correlationId | Sträng | ID:t för loggen som kan användas för att gruppera en uppsättning relaterade loggposter |
identity | Objekt | Identiteten som genererade loggen |
properties | JSON | Mer information finns nedan |
Schema för egenskaper för granskningsloggar
Namn | Typ | Description |
---|---|---|
StreamName | Sträng | Sökvägen som åtgärden utfördes på |
Exempel för att bearbeta loggdata
När du skickar loggar från Azure Data Lake Storage Gen1 till Azure Monitor-loggar (se Visa eller analysera data som samlas in med Azure Monitor-loggar för att söka efter information om hur du använder Azure Monitor-loggar) returnerar följande fråga en tabell som innehåller en lista över användarens visningsnamn, tidpunkten för händelserna och antalet händelser för tidpunkten för händelsen tillsammans med ett visuellt diagram. Det kan enkelt ändras för att visa användar-GUID eller andra attribut:
search *
| where ( Type == "AzureDiagnostics" )
| summarize count(TimeGenerated) by identity_s, TimeGenerated
Azure Data Lake Storage Gen1 innehåller ett exempel på hur du bearbetar och analyserar loggdata. Du hittar exemplet på https://github.com/Azure/AzureDataLake/tree/master/Samples/AzureDiagnosticsSample.