你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
存储分析日志格式
存储分析记录存储帐户的成功和失败请求的详细信息。 存储分析日志可用于查看针对 Azure 表、队列和 Blob 的读取、写入和删除操作的详细信息。 它们还使你能够调查请求失败的原因,例如超时、限制和授权错误。
每个日志条目都符合标准日志格式,该格式受所用存储分析日志记录的版本控制。 版本 1.0 包括 日志条目格式 1.0 中所述的所有字段。 版本 2.0 添加了字段,用于记录有关使用 OAuth 2.0 令牌授权的 Blob 和队列服务的请求的信息。 日志条目格式 2.0 中介绍了这些附加字段。
日志条目中的第一个字段始终指定版本号。 日志记录数据的使用者可依赖于此字段以及日志条目的以下几方面:
所有字段(已填充或空)都将用分号“;”分隔
每个日志条目由换行符“\n”分隔
条目中的最后一个字段不会以分号“;”结尾
在处理日志条目之前,应始终检查版本。
注意
可能包含引号 (“) 、分号 (;) 或换行符 (\n) 的任何字段都经过 HTML 编码和引号。
设置日志记录版本
若要设置日志记录版本,请为服务调用相应的操作:
- Blob 服务:设置 Blob 服务属性 (支持版本 1.0 和 2.0)
- 队列服务:设置队列服务属性 (支持版本 1.0 和 2.0)
- 表服务:设置表服务属性 (仅支持版本 1.0)
日志条目格式 1.0
每个 1.0 版日志条目都遵循以下格式:
<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>
版本 1.0 的日志条目字段
下表列出了并定义版本 1.0 日志条目中的字段。
字段名称 | 字段类型 | 定义 | 示例 |
---|---|---|---|
<version-number> |
字符串 | 用于记录条目的存储分析日志记录的版本。 | 1.0 |
<request-start-time> |
timestamp | 存储分析接收请求的 UTC 时间。 | 2011-08-09T21:44:36.2481552Z |
<operation-type> |
字符串 | 所执行的 REST 操作的类型。 有关可能操作的列表,请参阅存储分析记录的操作和状态消息主题。 | GetBlob |
<request-status> |
字符串 | 所请求的操作的状态。 有关可能的状态消息的列表,请参阅存储分析记录的操作和状态消息主题。 在版本 2017-04-17 及更高版本中, ClientOtherError 不使用 。 相反,此字段包含 错误代码。 |
Success |
<http-status-code> |
字符串 | 请求的 HTTP 状态代码。 擶夏请―详い断,昳麲摨设竚为 Unknown 愢 |
200 |
<end-to-end-latency-in-ms> |
duration | 执行所请求操作的总时间(毫秒),包括读取传入请求和向请求者发送响应的时间。 | 39 |
<server-latency-in-ms> |
duration | 执行所请求操作的总时间(毫秒)。 此值不包括网络滞后时间(读取传入请求和向请求者发送响应的时间)。 | 22 |
<authentication-type> |
字符串 | 指示请求是授权、匿名还是已使用共享访问签名 (SAS) 。 | authenticated |
<requester-account-name> |
字符串 | 如果请求获得授权,则与存储帐户名称相同。 对于匿名和 SAS 请求,此字段将为空。 | myaccount |
<owner-account-name> |
字符串 | 服务所有者的帐户名称。 | myaccount |
<service-type> |
字符串 | 所请求的存储服务:BLOB、表或队列。 | blob |
<request-url> |
字符串 | 请求的完整 URL(用引号引起)。 | "https://myaccount.blob.core.windows.net/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034?timeout=30000" |
<requested-object-key> |
字符串 | 所请求对象的键(用引号引起)。 此字段将始终使用帐户名称,即使已配置自定义域名也是如此。 | "/myaccount/mycontainer/2025c44c-d25e-42bf-8507-7a5ca4faa034" |
<request-id-header> |
guid | 由存储服务分配的请求 ID。 它等效于 x-ms-request-id 标头的值。 |
668a4744-7eb3-4e8f-b8d3-fbfd3829715b |
<operation-count> |
int | 请求的每个记录操作数(使用零索引)。 有些请求需要多个操作(如 Copy Blob),但多数请求仅需要一个操作。 | 0 |
<requester-ip-address> |
字符串 | 请求者的 IP 地址,包括端口号。 | 192.100.0.102:4362 |
<request-version-header> |
字符串 | 发出请求时指定的存储服务版本。 它等效于 x-ms-version 标头的值。 |
2009-09-19 |
<request-header-size> |
long | 请求标头的大小(字节)。 如果请求失败,此值可能为空。 | 280 |
<request-packet-size> |
long | 由存储服务读取的请求数据包的大小(字节)。 如果请求失败,此值可能为空。 | 0 |
<response-header-size> |
long | 响应标头的大小(字节)。 如果请求失败,此值可能为空。 | 216 |
<response-packet-size> |
long | 存储服务写入的响应数据包的大小(以字节为单位)。 如果请求失败,此值可能为空。 | 0 |
<request-content-length> |
long | 发送到存储服务的请求的 Content-Length 标头的值。 如果请求成功,则此值等于 <request-packet-size> 。 如果请求不成功,此值可能不等于 <request-packet-size> ,也可能为空。 |
0 |
<request-md5> |
字符串 | 请求中的 Content-MD5 标头或 x-ms-content-md5 标头的值(用引号引起)。 此字段中指定的 MD5 哈希值表示请求中的内容。 此字段可以为空。 | "788815fd0198be0d275ad329cafd1830" |
<server-md5> |
字符串 | 由存储服务计算的 MD5 哈希值(用引号引起)。 此字段可以为空。 | "3228b3cf1069a5489b298446321f8521" |
<etag-identifier> |
字符串 | 返回的对象的 ETag 标识符,带引号。 | "0x8D101F7E4B662C4" |
<last-modified-time> |
datetime | 所返回对象的上次修改时间 (LMT)(用引号引起)。 对于可以返回多个对象的操作,此字段为空。 | Tuesday, 09-Aug-11 21:13:26 GMT |
<conditions-used> |
字符串 | 以 引号的形式 ConditionName=value 以分号分隔的列表。
ConditionName 可以是以下条件之一:- 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> |
字符串 |
User-Agent 标头麲(ノま号ま舿)愢 |
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" |
<referrer-header> |
字符串 |
Referer 标头麲(ノま号ま舿)愢 |
"http://contoso.com/about.html" |
<client-request-id> |
字符串 | 请―い摚斴鶼 x-ms-client-request-id 标头麲(ノま号ま舿)愢 |
"8/9/2011 9:44:36 PM 45ef1c0f-8c71-4153-bc88-38589f63fbfc" |
版本 1.0 的示例日志条目
获取 Blob
以下示例日志条目适用于匿名 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"
放置 Blob
以下示例日志条目适用于授权的 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"
复制 Blob
以下示例日志条目适用于授权的 CopyBlob 请求。 复制 Blob 操作将记录 3 个操作: CopyBlob、 CopyBlobSource 和 CopyBlobDestination。 请注意,所有三个操作的请求 ID 属性均相同,但每个操作的操作 ID 都是递增的。
服务版本 2012-02-12 及更新
在版本 2012-02-12 及更新版本中, <requested-object-key>
是一个 URL,它替换 /accountname/containername/blobname
了 2012-02-12 之前的版本中使用的格式。
以下每个日志条目的请求 ID 和操作 ID 均采用加粗形式:
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"
2012-02-12 之前的服务版本
以下每个日志条目的请求 ID 和操作 ID 均采用加粗形式:
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"
日志条目格式 2.0
存储分析日志格式版本 2.0 添加了字段,以支持使用 Microsoft Entra ID 提供的 OAuth 2.0 令牌授权的请求的日志记录信息。 有关详细信息,请参阅使用 Microsoft Entra ID 进行身份验证。
每个版本 2.0 日志条目都遵循以下格式:
<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>
版本 2.0 的日志条目字段
下表列出了并定义写入到 2.0 版日志条目的其他字段。 所有版本 1.0 字段都包含在 2.0 版日志条目中。
字段名称 | 字段类型 | 定义 | 示例 |
---|---|---|---|
UserObjectId | 字符串 | 用于身份验证的对象 ID。 可以是任何安全主体,包括用户、托管标识或服务主体。 | 03124200-da00-4aa6-aa09-be77923d7870 |
TenantId | 字符串 | 持有者授权中使用的租户 ID。 | 72f988bf-86f1-41af-91ab-2d7cd011db47 |
ApplicationId | string | 持有者授权中使用的应用程序 ID。 | 2cd20493-fe97-42ef-9ace-ab95b63d82c4 |
资源 ID | 字符串 | 持有者授权中使用的资源 ID。 | https://storage.azure.com https://storagesamples.blob.core.windows.net |
颁发者 | 字符串 | 持有者授权中使用的颁发者。 | https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/ |
UserPrincipalName | 字符串 | 持有者授权中使用的用户主体名称。 | testuser@azure.onmicrosoft.com |
预留 | 字符串 | 保留供将来使用。 值是空字符串。 | N/A |
AuthorizationDetail | 字符串 | 用于授权请求的详细策略信息。 | [{"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"}] |
版本 2.0 的示例日志条目
列出 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"}]"
放置块
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"}]"