Format dziennika analityki magazynu
analityka magazynu rejestrowania rejestruje szczegółowe informacje dotyczące żądań zakończonych powodzeniem i niepowodzeniem dla konta magazynu. analityka magazynu dzienniki umożliwiają przeglądanie szczegółów operacji odczytu, zapisu i usuwania względem tabel, kolejek i obiektów blob platformy Azure. Umożliwiają one również badanie przyczyn niepomyślnie zgłaszanych żądań, takich jak przekroczenia limitu czasu, ograniczanie przepustowości i błędy autoryzacji.
Każdy wpis dziennika jest zgodny ze standardowym formatem dziennika, który podlega wersji analityka magazynu używanego logowania. Wersja 1.0 zawiera wszystkie pola opisane w formacie wpisu dziennika 1.0. Wersja 2.0 dodaje pola do rejestrowania informacji o żądaniach do usług obiektów blob i kolejek, które są autoryzowane przy użyciu tokenu OAuth 2.0. Te dodatkowe pola są opisane w formacie wpisu dziennika 2.0.
Pierwsze pole we wpisie dziennika zawsze określa numer wersji. Użytkownicy danych rejestrowania mogą mieć zależność od tego pola, a także następujące aspekty wpisu dziennika:
Wszystkie pola, wypełnione lub puste, zostaną oddzielone średnikiem ";"
Każdy wpis dziennika jest oddzielony znakiem nowego wiersza "\n"
Ostatnie pole w wpisie nie zakończy się średnikiem ";"
Zawsze sprawdzaj wersję przed przetworzeniem wpisu dziennika.
Uwaga
Każde pole, które może zawierać cudzysłów ("), średnik (;) lub nowy wiersz (\n) jest zakodowany i cytowany w formacie HTML.
Ustawianie wersji rejestrowania
Aby ustawić wersję rejestrowania, wywołaj odpowiednią operację dla usługi:
- Blob Service:Ustawianie właściwości usługi Blob Service (obsługuje obie wersje 1.0 i 2.0)
- Usługa kolejki:Ustawianie właściwości usługi kolejki (obsługuje obie wersje 1.0 i 2.0)
- Usługa table:Ustawianie właściwości usługi Table Service (obsługuje tylko wersję 1.0)
Format wpisu dziennika 1.0
Każdy wpis dziennika w wersji 1.0 jest zgodny z następującym formatem:
<version-number>;<request-start-time>;<operation-type>;<request-status>;<http-status-code>;<end-to-end-latency-in-ms>;<server-latency-in-ms>;<authentication-type>;<requester-account-name>;<owner-account-name>;<service-type>;<request-url>;<requested-object-key>;<request-id-header>;<operation-count>;<requester-ip-address>;<request-version-header>;<request-header-size>;<request-packet-size>;<response-header-size>;<response-packet-size>;<request-content-length>;<request-md5>;<server-md5>;<etag-identifier>;<last-modified-time>;<conditions-used>;<user-agent-header>;<referrer-header>;<client-request-id>
Pola wpisu dziennika dla wersji 1.0
Poniższa tabela zawiera listę i definiuje pola we wpisie dziennika w wersji 1.0.
Nazwa pola | Typ pola | Definicja | Przykład |
---|---|---|---|
<version-number> |
ciąg | Wersja rejestrowania analityka magazynu używana do rejestrowania wpisu. | 1.0 |
<request-start-time> |
sygnatura czasowa | Godzina w formacie UTC odebrania żądania przez analityka magazynu. | 2011-08-09T21:44:36.2481552Z |
<operation-type> |
ciąg | Typ wykonanej operacji REST. Aby uzyskać listę możliwych operacji, zobacz temat Analityka magazynu Zarejestrowane operacje i komunikaty o stanie. | GetBlob |
<request-status> |
ciąg | Stan żądanej operacji. Aby uzyskać listę możliwych komunikatów o stanie, zobacz temat analityka magazynu Zarejestrowane operacje i komunikaty o stanie. W wersji 2017-04-17 i nowszej ClientOtherError nie jest używana. Zamiast tego to pole zawiera kod błędu. |
Success |
<http-status-code> |
ciąg | Kod stanu HTTP dla żądania. Jeśli żądanie zostanie przerwane, ta wartość może być ustawiona na Unknown wartość . |
200 |
<end-to-end-latency-in-ms> |
czas trwania | Łączny czas w milisekundach do wykonania żądanej operacji, w tym czas odczytywania żądania przychodzącego i wysyłania odpowiedzi do żądającego. | 39 |
<server-latency-in-ms> |
czas trwania | Łączny czas w milisekundach do wykonania żądanej operacji. Ta wartość nie obejmuje opóźnienia sieci (czas odczytywania przychodzącego żądania i wysyłania odpowiedzi do żądającego). | 22 |
<authentication-type> |
ciąg | Wskazuje, czy żądanie zostało autoryzowane, anonimowe lub używane sygnatury dostępu współdzielonego (SAS). | authenticated |
<requester-account-name> |
ciąg | Tak samo jak nazwa konta magazynu, jeśli żądanie jest autoryzowane. To pole będzie puste dla żądań anonimowych i sas. | myaccount |
<owner-account-name> |
ciąg | Nazwa konta właściciela usługi. | myaccount |
<service-type> |
ciąg | Żądana usługa magazynu: obiekt blob, tabela lub kolejka. | blob |
<request-url> |
ciąg | Pełny adres URL żądania w cudzysłowie. | "https://myaccount.blob.core.windows.net/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034?timeout=30000" |
<requested-object-key> |
ciąg | Klucz żądanego obiektu w cudzysłowach. To pole zawsze będzie używać nazwy konta, nawet jeśli skonfigurowano niestandardową nazwę domeny. | "/myaccount/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034" |
<request-id-header> |
guid | Identyfikator żądania przypisany przez usługę magazynu. Jest to równoważne wartości nagłówka x-ms-request-id . |
668a4744-7eb3-4e8f-b8d3-fbfd3829715b |
<operation-count> |
int | Liczba zarejestrowanych operacji dla żądania przy użyciu indeksu zera. Niektóre żądania wymagają więcej niż jednej operacji, takiej jak kopiowanie obiektu blob, choć większość wykonuje tylko jedną operację. | 0 |
<requester-ip-address> |
ciąg | Adres IP obiektu żądającego, w tym numer portu. | 192.100.0.102:4362 |
<request-version-header> |
ciąg | Wersja usługi magazynu określona po wysłaniu żądania. Jest to równoważne wartości nagłówka x-ms-version . |
2009-09-19 |
<request-header-size> |
długi | Rozmiar nagłówka żądania w bajtach. Jeśli żądanie nie powiedzie się, ta wartość może być pusta. | 280 |
<request-packet-size> |
długi | Rozmiar pakietów żądań odczytanych przez usługę magazynu w bajtach. Jeśli żądanie nie powiedzie się, ta wartość może być pusta. | 0 |
<response-header-size> |
długi | Rozmiar nagłówka odpowiedzi w bajtach. Jeśli żądanie nie powiedzie się, ta wartość może być pusta. | 216 |
<response-packet-size> |
długi | Rozmiar pakietów odpowiedzi napisanych przez usługę magazynu w bajtach. Jeśli żądanie nie powiedzie się, ta wartość może być pusta. | 0 |
<request-content-length> |
długi | Wartość nagłówka Content-Length żądania wysłanego do usługi magazynu. Jeśli żądanie zakończyło się pomyślnie, ta wartość jest równa <request-packet-size> . Jeśli żądanie zakończy się niepowodzeniem, ta wartość może nie być równa <request-packet-size> lub może być pusta. |
0 |
<request-md5> |
ciąg | Wartość nagłówka Content-MD5 lub nagłówka x-ms-content-md5 w żądaniu w cudzysłowie. Wartość skrótu MD5 określona w tym polu reprezentuje zawartość w żądaniu. To pole może być puste. | "788815fd0198be0d275ad329cafd1830" |
<server-md5> |
ciąg | Wartość skrótu MD5 obliczona przez usługę magazynu w cudzysłowie. To pole może być puste. | "3228b3cf1069a5489b298446321f8521" |
<etag-identifier> |
ciąg | Identyfikator ETag zwróconego obiektu w cudzysłowie. | "0x8D101F7E4B662C4" |
<last-modified-time> |
datetime | Czas ostatniej modyfikacji (LMT) dla zwróconego obiektu w cudzysłowie. To pole jest puste dla operacji, które mogą zwracać wiele obiektów. | Tuesday, 09-Aug-11 21:13:26 GMT |
<conditions-used> |
ciąg | Rozdzielana średnikami lista w postaci ConditionName=value , w cudzysłowie.
ConditionName może być jednym z następujących warunków:- If-Modified-Since - If-Unmodified-Since - If-Match - If-None-Match |
"If-Modified-Since=Friday, 05-Aug-11 19:11:54 GMT" |
<user-agent-header> |
ciąg | Wartość nagłówka User-Agent w cudzysłowie. |
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" |
<referrer-header> |
ciąg | Wartość nagłówka Referer w cudzysłowie. |
"http://contoso.com/about.html" |
<client-request-id> |
ciąg | Wartość nagłówka zawarta x-ms-client-request-id w żądaniu w cudzysłowach. |
"8/9/2011 9:44:36 PM 45ef1c0f-8c71-4153-bc88-38589f63fbfc" |
Przykładowe wpisy dziennika dla wersji 1.0
Uzyskiwanie obiektu blob
Następujący przykładowy wpis dziennika dotyczy anonimowego żądania GetBlob :
1.0;2014-06-19T22:59:23.1967767Z;GetBlob;AnonymousSuccess;200;17;16;anonymous;;storagesample;blob;"https://storagesample.blob.core.windows.net/sample-container1/00001.txt";"/storagesample/sample-container1/00001.txt";61d2e3f6-bcb7-4cd1-a81e-4f8f497f0da2;0;192.100.0.102:4362;2014-02-14;283;0;354;23;0;;;""0x8D15A2913C934DE"";Thursday, 19-Jun-14 22:58:10 GMT;;"WA-Storage/4.0.1 (.NET CLR 4.0.30319.34014; Win32NT 6.3.9600.0)";;"44dfd78e-7288-4898-8f70-c3478983d3b6"
Wstawianie obiektu blob
Następujący przykładowy wpis dziennika dotyczy autoryzowanego żądania PutBlob :
1.0;2014-06-19T01:33:54.0926521Z;PutBlob;Success;201;197;54;authenticated;storagesample;storagesample;blob;"https://storagesample.blob.core.windows.net/sample-container1/00001.txt";"/storagesample/sample-container1/00001.txt";a200be85-1c98-4dd9-918e-f13d8c0538e0;0;192.100.0.102:4362;2014-02-14;460;23;225;0;23;"DrPO6z1f00SCsomhaf+J/A==";"DrPO6z1f00SCsomhaf+J/A==";""0x8D15975AA456EA4"";Thursday, 19-Jun-14 01:33:53 GMT;;"WA-Storage/4.0.1 (.NET CLR 4.0.30319.34014; Win32NT 6.3.9600.0)";;"1fe6814a-e4cb-4195-a3cf-837dc7120f68"
Kopiowanie obiektu blob
Następujące przykładowe wpisy dziennika dotyczą autoryzowanego żądania CopyBlob . Operacja kopiowania obiektu blob będzie rejestrować 3 operacje: CopyBlob, CopyBlobSource i CopyBlobDestination. Należy pamiętać, że właściwość identyfikatora żądania jest identyczna dla wszystkich trzech operacji, ale identyfikator operacji jest zwiększany dla każdej operacji.
Wersja usługi 2012-02-12 i nowsza
W wersji 2012-02-12 i nowszej <requested-object-key>
jest to adres URL, który zastępuje /accountname/containername/blobname
format używany w wersjach przed 2012-02-12.
Identyfikator żądania i identyfikator operacji są pogrubione dla każdego wpisu dziennika poniżej:
1.0;2014-06-19T23:31:36.5780954Z;CopyBlob;Success;202;13;13;authenticated;storagesample;storagesample;blob;"https://storagesample.blob.core.windows.net/sample-container/Copy-sample-blob.txt";"/storagesample/sample-container/Copy-sample-blob.txt";505fc366-688f-4622-bbb1-20e8fc26cffd;0;192.100.0.102:4362;2014-02-14;538;0;261;0;0;;;""0x8D15A2DBF11553E"";Thursday, 19-Jun-14 23:31:36 GMT;;"WA-Storage/4.0.1 (.NET CLR 4.0.30319.34014; Win32NT 6.3.9600.0)";;"dc00da87-5483-4524-b0dc-d1df025a6a9a"
1.0;2014-06-19T23:31:36.5780954Z;CopyBlobSource;Success;202;13;13;authenticated;storagesample;storagesample;blob;"https://storagesample.blob.core.windows.net/sample-container/Copy-sample-blob.txt";"https://storagesample.blob.core.windows.net/sample-container/sample-blob.txt";505fc366-688f-4622-bbb1-20e8fc26cffd;1;192.100.0.102:4362;2014-02-14;538;0;261;0;0;;;;;;"WA-Storage/4.0.1 (.NET CLR 4.0.30319.34014; Win32NT 6.3.9600.0)";;"dc00da87-5483-4524-b0dc-d1df025a6a9a"
1.0;2014-06-19T23:31:36.5780954Z;CopyBlobDestination;Success;202;13;13;authenticated;storagesample;storagesample;blob;"https://storagesample.blob.core.windows.net/sample-container/Copy-sample-blob.txt";"/storagesample/sample-container/Copy-sample-blob.txt";505fc366-688f-4622-bbb1-20e8fc26cffd;2;192.100.0.102:4362;2014-02-14;538;0;261;0;0;;;;;;"WA-Storage/4.0.1 (.NET CLR 4.0.30319.34014; Win32NT 6.3.9600.0)";;"dc00da87-5483-4524-b0dc-d1df025a6a9a"
Wersje usługi przed 2012-02-12
Identyfikator żądania i identyfikator operacji są pogrubione dla każdego wpisu dziennika poniżej:
1.0;2011-08-09T18:02:40.6526789Z;CopyBlob;Success;201;28;28;authenticated;account8ce1b67a9e80b35;myaccount;blob;"https://myaccount.blob.core.windows.net/thumbnails/lake.jpg?timeout=30000";"/myaccount/thumbnails/lakebck.jpg";85ba10a5-b7e2-495e-8033-588e08628c5d;0;268.20.203.21:4362;2009-09-19;505;0;188;0;0;;;"0x8CE1B67AD473BC5";Friday, 09-Aug-11 18:02:40 GMT;;;;"8/9/2011 6:02:40 PM 683803d3-538f-4ba8-bc7c-24c83aca5b1a"
1.0;2011-08-09T18:02:40.6526789Z;CopyBlobSource;Success;201;28;28;authenticated;myaccount;myaccount;blob;"https://myaccount.blob.core.windows.net/thumbnails/lake.jpg?timeout=30000";"/myaccount/thumbnails/lake.jpg";85ba10a5-b7e2-495e-8033-588e08628c5d;1;268.20.203.21:4362;2009-09-19;505;0;188;0;0;;;;;;;;"8/9/2011 6:02:40 PM 683803d3-538f-4ba8-bc7c-24c83aca5b1a"
1.0;2011-08-09T18:02:40.6526789Z;CopyBlobDestination;Success;201;28;28;authenticated;myaccount;myaccount;blob;"https://myaccount.blob.core.windows.net/thumbnails/lake.jpg?timeout=30000";"/myaccount/thumbnails/lakebck.jpg";85ba10a5-b7e2-495e-8033-588e08628c5d;2;268.20.203.21:4362;2009-09-19;505;0;188;0;0;;;;;;;;"8/9/2011 6:02:40 PM 683803d3-538f-4ba8-bc7c-24c83aca5b1a"
Format wpisu dziennika 2.0
analityka magazynu format dziennika w wersji 2.0 dodaje pola do obsługi rejestrowania informacji o żądaniach autoryzowanych przy użyciu tokenu OAuth 2.0 dostarczonego przez Tożsamość Microsoft Entra. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie przy użyciu Tożsamość Microsoft Entra.
Każdy wpis dziennika w wersji 2.0 jest zgodny z następującym formatem:
<version-number>;<request-start-time>;<operation-type>;<request-status>;<http-status-code>;<end-to-end-latency-in-ms>;<server-latency-in-ms>;<authentication-type>;<requester-account-name>;<owner-account-name>;<service-type>;<request-url>;<requested-object-key>;<request-id-header>;<operation-count>;<requester-ip-address>;<request-version-header>;<request-header-size>;<request-packet-size>;<response-header-size>;<response-packet-size>;<request-content-length>;<request-md5>;<server-md5>;<etag-identifier>;<last-modified-time>;<conditions-used>;<user-agent-header>;<referrer-header>;<client-request-id>;<user-object-id>;<tenant-id>;<application-id>;<audience>;<issuer>;<user-principal-name>;<reserved-field>;<authorization-detail>
Pola wpisu dziennika dla wersji 2.0
W poniższej tabeli wymieniono i zdefiniowano dodatkowe pola zapisane we wpisie dziennika w wersji 2.0. Wszystkie pola w wersji 1.0 są uwzględniane w wpisach dziennika w wersji 2.0.
Nazwa pola | Typ pola | Definicja | Przykład |
---|---|---|---|
UserObjectId | ciąg | Identyfikator obiektu używany do uwierzytelniania. Może to być dowolny podmiot zabezpieczeń, w tym użytkownik, tożsamość zarządzana lub jednostka usługi. | 03124200-da00-4aa6-aa09-be77923d7870 |
TenantId | ciąg | Identyfikator dzierżawy używany w autoryzacji elementu nośnego. | 72f988bf-86f1-41af-91ab-2d7cd011db47 |
ApplicationId | ciąg | Identyfikator aplikacji używany w autoryzacji elementu nośnego. | 2cd20493-fe97-42ef-9ace-ab95b63d82c4 |
Identyfikator zasobu | ciąg | Identyfikator zasobu używany w autoryzacji elementu nośnego. | https://storage.azure.com https://storagesamples.blob.core.windows.net |
Wystawca | ciąg | Wystawca używany w autoryzacji elementu nośnego. | https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/ |
UserPrincipalName | ciąg | Główna nazwa użytkownika używana w autoryzacji elementu nośnego. | testuser@azure.onmicrosoft.com |
Zarezerwowany | ciąg | Zarezerwowane do użytku w przyszłości. Wartość jest pustym ciągiem. | Nie dotyczy |
AuthorizationDetail | ciąg | Szczegółowe informacje o zasadach używane do autoryzowania żądania. | [{"action":"Microsoft.Storage/storageAccounts/blobServices/containers/read", "roleAssignmentId":"/subscriptions/5451a164-d870-4626-a64c-c38d62da20da/providers/Microsoft.Authorization/roleAssignments/6632a082-9b6a-486c-b296-f9d785d32800", "roleDefinitionId":"/subscriptions/5451a164-d870-4626-a64c-c38d62da20da/providers/Microsoft.Authorization/roleDefinitions/ba92f5b4-2d11-453d-a403-e96b0029c9fe", "principalId":"03124200-da00-4aa6-aa09-be77923d7870", "principalType":"ServicePrincipal"}] |
Przykładowe wpisy dziennika dla wersji 2.0
Wyświetlanie listy obiektów blob
2.0;2019-02-25T20:06:55.9794046Z;ListBlobs;OAuthSuccess;200;250;46;bearer;storagesamples;storagesamples;blob;"https://storagesamples.blob.core.windows.net/sample-container?restype=container&comp=list&prefix=&delimiter=/&marker=&maxresults=30&include=metadata&_=1551125215793";"/storagesamples/sample-container";470b9e55-201e-0137-5c45-cdd293000000;0;200.59.21.176:52659;2018-03-28;2682;0;295;5184;0;;;;;;"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763";"blob:https://ms.portal.azure.com/cf576432-66ab-4ae6-9cb3-4852b1137a21";;"e5981635-dcf0-4279-ab7b-ca1cbdf4a5c7";"72f988bf-86f1-41af-91ab-2d7cd011db47";"691458b9-1327-4635-9f55-ed83a7f1b41c";"https://storage.azure.com/";"https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/";;;"[{"action":"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read", "roleAssignmentId":"ca8af92a-6708-4cdf-a678-bb55d0ff7b80", "roleDefinitionId":"ba92f5b4-2d11-453d-a403-e96b0029c9fe", "principalId":"e5981635-dcf0-4279-ab7b-ca1cbdf4a5c7", "principalType":"User"}]"
Umieść blok
2.0;2019-02-25T20:06:55.9089848Z;PutBlock;OAuthSuccess;201;95;95;bearer;storagesamples;storagesamples;blob;"https://storagesamples.blob.core.windows.net/sample-container/blob1.txt?comp=block&blockid=YmxvY2stMDAwMDAwMDA=";"/storagesamples/sample-container/blob1.txt";5569fa10-e01e-00c0-2745-cdb22d000000;0;200.59.21.176:52665;2017-11-09;2581;9;365;0;9;;"tdzGO9AaJte/e2HJZLtXig==";;;;"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763";"https://ms.portal.azure.com/";"c808142e-0393-4942-9001-af4833061026";"e5981635-dcf0-4279-ab7b-ca1cbdf4a5c7";"72f988bf-86f1-41af-91ab-2d7cd011db47";"691458b9-1327-4635-9f55-ed83a7f1b41c";"https://storage.azure.com/";"https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/";;;"[{"action":"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write", "roleAssignmentId":"ca8af92a-6708-4cdf-a678-bb55d0ff7b80", "roleDefinitionId":"ba92f5b4-2d11-453d-a403-e96b0029c9fe", "principalId":"e5981635-dcf0-4279-ab7b-ca1cbdf4a5c7", "principalType":"User"}]"
Zobacz też
Informacje o rejestrowaniu analityka magazynu
analityka magazynu zarejestrowane operacje i komunikaty o stanie