Storage Analytics Protokollformat
Storage Analytics Protokollierung zeichnet Details zu erfolgreichen und fehlgeschlagenen Anforderungen für Ihr Speicherkonto auf. Storage Analytics Protokollen können Sie Details zu Lese-, Schreib- und Löschvorgängen für Ihre Azure-Tabellen, Warteschlangen und Blobs überprüfen. Sie ermöglichen es Ihnen auch, die Gründe für fehlerhafte Anforderungen wie Timeouts, Drosselung und Autorisierungsfehler zu untersuchen.
Jeder Protokolleintrag entspricht einem Standardprotokollformat, das von der Version der Storage Analytics verwendeten Protokollierung bestimmt wird. Version 1.0 enthält alle felder, die im Protokolleintragsformat 1.0 beschrieben sind. Version 2.0 fügt Felder zum Protokollieren von Informationen zu Anforderungen an die Blob- und Warteschlangendienste hinzu, die mit einem OAuth 2.0-Token autorisiert sind. Diese zusätzlichen Felder werden im Protokolleintragsformat 2.0 beschrieben.
Das erste Feld eines Protokolleintrags gibt immer die Versionsnummer an. Consumer von Protokollierungsdaten können von diesem Feld sowie von folgenden Aspekten eines Protokolleintrags abhängig sein:
Alle aufgefüllten oder leeren Felder werden durch ein Semikolon ";" getrennt.
Jeder Protokolleintrag wird durch ein Zeilenumbruchzeichen "\n" getrennt.
Das letzte Feld im Eintrag endet nicht mit einem Semikolon ";"
Überprüfen Sie immer die Version, bevor Sie einen Protokolleintrag verarbeiten.
Hinweis
Jedes Feld, das ein Anführungszeichen ("), ein Semikolon (;) oder einen Zeilenumbruch (\n) enthalten kann, ist HTML-codiert und in Anführungszeichen gesetzt.
Festlegen der Protokollierungsversion
Um die Protokollierungsversion festzulegen, rufen Sie den entsprechenden Vorgang für den Dienst auf:
- Blobdienst:Blobdiensteigenschaften festlegen (unterstützt beide Versionen 1.0 und 2.0)
- Warteschlangendienst:Warteschlangendiensteigenschaften festlegen (unterstützt beide Versionen 1.0 und 2.0)
- Tabellendienst:Festlegen von Tabellendiensteigenschaften (unterstützt nur Version 1.0)
Protokolleintragsformat 1.0
Jeder Protokolleintrag der Version 1.0 entspricht dem folgenden Format:
<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>
Protokolleintragsfelder für Version 1.0
In der folgenden Tabelle sind die Felder in einem Protokolleintrag der Version 1.0 aufgeführt und definiert.
Feldname | Feldtyp | Definition | Beispiel |
---|---|---|---|
<version-number> |
Zeichenfolge | Die Version von Storage Analytics Protokollierung, die zum Aufzeichnen des Eintrags verwendet wird. | 1.0 |
<request-start-time> |
timestamp | Die Zeit in UTC, zu der die Anforderung von der Speicheranalyse empfangen wurde. | 2011-08-09T21:44:36.2481552Z |
<operation-type> |
Zeichenfolge | Der Typ des ausgeführten REST-Vorgangs. Eine Liste der möglichen Vorgänge finden Sie im Thema Storage Analytics Protokollierte Vorgänge und Statusmeldungen. | GetBlob |
<request-status> |
Zeichenfolge | Hierbei handelt es sich um den Status des angeforderten Vorgangs. Eine Liste möglicher status Nachrichten finden Sie im Thema Storage Analytics Protokollierte Vorgänge und Statusmeldungen. In Version 2017-04-17 und höher ClientOtherError wird nicht verwendet. Stattdessen enthält dieses Feld den Fehlercode. |
Success |
<http-status-code> |
Zeichenfolge | Hierbei handelt es sich um den HTTP-Statuscode für die Anforderung. Wenn die Anforderung unterbrochen wurde, kann dieser Wert auf Unknown festgelegt werden. |
200 |
<end-to-end-latency-in-ms> |
duration | Die Gesamtzeit in Millisekunden, um den angeforderten Vorgang auszuführen, einschließlich der Zeit zum Lesen der eingehenden Anforderung und Senden der Antwort an den Anforderer. | 39 |
<server-latency-in-ms> |
duration | Die Gesamtzeit in Millisekunden, um den angeforderten Vorgang auszuführen. Dieser Wert umfasst nicht die Netzwerklatenzzeit (die Zeit, um die eingehende Anforderung zu lesen und die Antwort an den Anforderer zu senden). | 22 |
<authentication-type> |
Zeichenfolge | Gibt an, ob die Anforderung autorisiert, anonym oder Shared Access Signature (SAS) verwendet wurde. | authenticated |
<requester-account-name> |
Zeichenfolge | Identisch mit dem Speicherkontonamen, wenn die Anforderung autorisiert ist. Dieses Feld ist bei anonymen und SAS-Anforderungen leer. | myaccount |
<owner-account-name> |
Zeichenfolge | Der Kontoname für den Dienstinhaber. | myaccount |
<service-type> |
Zeichenfolge | Der angeforderte Speicherdienst: BLOB, Tabelle oder Warteschlange. | blob |
<request-url> |
Zeichenfolge | Die vollständige URL der Anforderung, in Anführungszeichen. | "https://myaccount.blob.core.windows.net/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034?timeout=30000" |
<requested-object-key> |
Zeichenfolge | Der Schlüssel des angeforderten Objekts, in Anführungszeichen. In diesem Feld wird immer der Kontoname verwendet, selbst wenn ein benutzerdefinierter Domänenname konfiguriert wurde. | "/myaccount/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034" |
<request-id-header> |
guid | Die vom Speicherdienst zugewiesene Anforderungs-ID. Dies entspricht dem Wert des x-ms-request-id -Headers. |
668a4744-7eb3-4e8f-b8d3-fbfd3829715b |
<operation-count> |
INT | Die Nummer jedes protokollierten Vorgangs für eine Anforderung, unter Verwendung des Indexes 0. Manche Anforderungen erfordern mehrere Vorgänge, z. B. Copy Blob, die meisten jedoch nur einen. | 0 |
<requester-ip-address> |
Zeichenfolge | Hierbei handelt es sich um die IP-Adresse des Anforderers einschließlich der Portnummer. | 192.100.0.102:4362 |
<request-version-header> |
Zeichenfolge | Die Speicherdienstversion, die beim Erstellen der Anforderung angegeben wurde. Dies entspricht dem Wert des x-ms-version -Headers. |
2009-09-19 |
<request-header-size> |
long | Die Größe des Anforderungsheaders in Bytes. Wenn bei einer Anforderung ein Fehler aufgetreten ist, kann dieser Wert leer sein. | 280 |
<request-packet-size> |
long | Die Größe der vom Speicherdienst gelesenen Anforderungspakete in Bytes. Wenn bei einer Anforderung ein Fehler aufgetreten ist, kann dieser Wert leer sein. | 0 |
<response-header-size> |
long | Die Größe des Antwortheaders in Bytes. Wenn bei einer Anforderung ein Fehler aufgetreten ist, kann dieser Wert leer sein. | 216 |
<response-packet-size> |
long | Hierbei handelt es sich um die Größe der vom Speicherdienst geschriebenen Antwortpakete in Byte. Wenn bei einer Anforderung ein Fehler aufgetreten ist, kann dieser Wert leer sein. | 0 |
<request-content-length> |
long | Der Wert des Content-Length -Headers für die an den Speicherdienst gesendete Anforderung. Wenn die Anforderung erfolgreich war, ist dieser Wert gleich <request-packet-size> . Wenn bei einer Anforderung ein Fehler aufgetreten ist, darf dieser Wert nicht gleich <request-packet-size> sein, oder er kann leer sein. |
0 |
<request-md5> |
Zeichenfolge | Der Wert des Content-MD5-Headers oder des x-ms-content-md5-Headers in der Anforderung, in Anführungszeichen. Der MD5-Hashwert, der in diesem Feld angegeben ist, stellt den Inhalt der Anforderung dar. Dieses Feld kann leer sein. | "788815fd0198be0d275ad329cafd1830" |
<server-md5> |
Zeichenfolge | Der Wert des vom Speicherdienst berechneten MD5-Hashs, in Anführungszeichen. Dieses Feld kann leer sein. | "3228b3cf1069a5489b298446321f8521" |
<etag-identifier> |
Zeichenfolge | Hierbei handelt es sich um den ETag-Bezeichner für das zurückgegebene Objekt in Anführungszeichen. | "0x8D101F7E4B662C4" |
<last-modified-time> |
datetime | Die Uhrzeit der letzten Änderung (LMT) für das zurückgegebene Objekt, in Anführungszeichen. Dieses Feld ist für Vorgänge leer, die mehrere Objekte zurückgeben können. | Tuesday, 09-Aug-11 21:13:26 GMT |
<conditions-used> |
Zeichenfolge | Eine durch Semikolons getrennte Liste in Form von ConditionName=value , in Anführungszeichen.
ConditionName kann eine der folgenden Bedingungen sein:- 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> |
Zeichenfolge | Der Wert des User-Agent -Headers, in Anführungszeichen. |
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" |
<referrer-header> |
Zeichenfolge | Der Wert des Referer -Headers, in Anführungszeichen. |
"http://contoso.com/about.html" |
<client-request-id> |
Zeichenfolge | Der Wert des in der Anforderung enthaltenen x-ms-client-request-id Headers, in Anführungszeichen. |
"8/9/2011 9:44:36 PM 45ef1c0f-8c71-4153-bc88-38589f63fbfc" |
Beispielprotokolleinträge für Version 1.0
Get Blob
Der folgende Beispielprotokolleintrag gilt für eine anonyme GetBlob-Anforderung :
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"
Put Blob
Der folgende Beispielprotokolleintrag gilt für eine autorisierte PutBlob-Anforderung :
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"
Kopieren von Blobs
Die folgenden Beispielprotokolleinträge gelten für eine autorisierte CopyBlob-Anforderung . Der Kopierblobvorgang protokolliert 3 Vorgänge: CopyBlob, CopyBlobSource und CopyBlobDestination. Die Anforderungs-ID-Eigenschaft ist für alle drei Vorgänge identisch, aber die Vorgangs-ID wird bei jedem Vorgang um eins erhöht.
Dienstversion 2012-02-12 und höher
In der Version 2012-02-12 und höher ist <requested-object-key>
eine URL, die das in den Versionen vor 2012-02-12 verwendete Format /accountname/containername/blobname
ersetzt.
Die Anforderungs-ID und die Vorgangs-ID sind unten für jeden Protokolleintrag fett dargestellt:
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"
Dienstversionen vor 2012-02-12
Die Anforderungs-ID und die Vorgangs-ID sind unten für jeden Protokolleintrag fett dargestellt:
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"
Protokolleintragsformat 2.0
Storage Analytics Protokollformatversion 2.0 fügt Felder hinzu, um Protokollierungsinformationen zu Anforderungen zu unterstützen, die mit einem von Microsoft Entra ID bereitgestellten OAuth 2.0-Token autorisiert wurden. Weitere Informationen finden Sie unter Authentifizieren mit Microsoft Entra ID.
Jeder Protokolleintrag der Version 2.0 entspricht dem folgenden Format:
<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>
Protokolleintragsfelder für Version 2.0
In der folgenden Tabelle werden die zusätzlichen Felder aufgelistet und definiert, die in einen Protokolleintrag der Version 2.0 geschrieben wurden. Alle Felder der Version 1.0 sind in Protokolleinträgen der Version 2.0 enthalten.
Feldname | Feldtyp | Definition | Beispiel |
---|---|---|---|
UserObjectId | Zeichenfolge | Die für die Authentifizierung verwendete Objekt-ID. Kann ein beliebiger Sicherheitsprinzipal sein, einschließlich eines Benutzers, einer verwalteten Identität oder eines Dienstprinzipals. | 03124200-da00-4aa6-aa09-be77923d7870 |
TenantId | Zeichenfolge | Mandanten-ID, die in der Bearerautorisierung verwendet wird. | 72f988bf-86f1-41af-91ab-2d7cd011db47 |
ApplicationId | Zeichenfolge | Bei der Bearerautorisierung verwendete Anwendungs-ID | 2cd20493-fe97-42ef-9ace-ab95b63d82c4 |
Ressourcen-ID | Zeichenfolge | Ressourcen-ID, die in der Bearerautorisierung verwendet wird. | https://storage.azure.com https://storagesamples.blob.core.windows.net |
Issuer (Aussteller) | Zeichenfolge | Aussteller, der in der Bearerautorisierung verwendet wird. | https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/ |
UserPrincipalName | Zeichenfolge | Benutzerprinzipalname, der in der Bearerautorisierung verwendet wird. | testuser@azure.onmicrosoft.com |
Reserviert | Zeichenfolge | Für die zukünftige Verwendung reserviert. Value ist eine leere Zeichenfolge. | – |
AuthorizationDetail | Zeichenfolge | Detaillierte Richtlinieninformationen, die zum Autorisieren der Anforderung verwendet werden. | [{"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"}] |
Beispielprotokolleinträge für Version 2.0
List Blobs
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"}]"
Put Block
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"}]"
Weitere Informationen
Informationen zur Protokollierung durch die Speicheranalyse
Protokollierte Speicheranalysevorgänge und Statusmeldungen