Azure Storage analytics logging (Registo de análise do Armazenamento do Azure)

A Análise de Armazenamento regista informações detalhadas sobre os pedidos com êxito e com falha feitos a um serviço de armazenamento. Estas informações podem ser utilizadas para monitorizar os pedidos individuais e diagnosticar problemas num serviço de armazenamento. Os pedidos são registados numa base de melhor esforço. Isto significa que a maioria dos pedidos resultará num registo, mas a conclusão e a linha cronológica dos registos de Análise de Armazenamento não são garantidas.

Nota

Recomendamos que utilize os registos de Armazenamento do Azure no Azure Monitor em vez de Análise de Armazenamento registos. Para saber mais, consulte qualquer um dos seguintes artigos:

O registo da Análise de Armazenamento não está ativado, por predefinição, na conta de armazenamento. Pode ativá-lo no portal do Azure ou com o PowerShell ou a CLI do Azure. Para obter orientações passo a passo, veja Ativar e gerir registos de Análise de Armazenamento do Azure (clássico).

Também pode ativar Análise de Armazenamento registos programaticamente através da API REST ou da biblioteca de cliente. Utilize as operações Obter Propriedades do Serviço Blob, Obter Propriedades do Serviço de Fila e Obter Propriedades do Serviço de Tabela para ativar Análise de Armazenamento para cada serviço. Para ver um exemplo que permite Análise de Armazenamento registos com o .NET, veja Ativar registos

As entradas de registo são criadas apenas se existirem pedidos feitos no ponto final de serviço. Por exemplo, se uma conta de armazenamento tiver atividade no ponto final do Blob, mas não nos pontos finais de Tabela ou Fila, apenas serão criados registos relativos ao serviço Blob.

Nota

Atualmente, o registo da Análise de Armazenamento está disponível apenas para os serviços Blobs, Fila e Tabela. Análise de Armazenamento registo também está disponível para contas BlockBlobStorage de desempenho premium. No entanto, não está disponível para contas para fins gerais v2 com desempenho premium.

Pedidos registados no registo

Registar pedidos autenticados

São registados os seguintes tipos de pedidos autenticados:

Registar pedidos anónimos

São registados os seguintes tipos de pedidos anónimos:

Nota

Análise de Armazenamento regista todas as chamadas internas para o plano de dados. As chamadas do Fornecedor de Recursos de Armazenamento do Azure também são registadas. Para identificar estes pedidos, procure a cadeia <sk=system-1> de consulta no URL do pedido.

Como os registos são armazenados

Todos os registos são armazenados em blobs de blocos num contentor com o nome $logs, que é criado automaticamente quando Análise de Armazenamento está ativado para uma conta de armazenamento. O $logs contentor está localizado no espaço de nomes de blobs da conta de armazenamento, por exemplo: http://<accountname>.blob.core.windows.net/$logs. Este contentor não pode ser eliminado depois de Análise de Armazenamento ter sido ativado, embora os respetivos conteúdos possam ser eliminados. Se utilizar a ferramenta de navegação no armazenamento para navegar diretamente para o contentor, verá todos os blobs que contêm os seus dados de registo.

Nota

O $logs contentor não é apresentado quando é executada uma operação de listagem de contentores, como a operação Contentores de Lista. Tem de ser acedido diretamente. Por exemplo, pode utilizar a operação Blobs de Lista para aceder aos blobs no $logs contentor.

À medida que os pedidos são registados, Análise de Armazenamento carregará os resultados intermédios como blocos. Periodicamente, Análise de Armazenamento consolidará estes blocos e os disponibilizará como um blob. Os dados de registo podem demorar até uma hora a aparecer nos blobs no contentor de $logs porque a frequência com que o serviço de armazenamento limpa os escritores de registos. Podem existir registos duplicados para registos criados na mesma hora. Pode determinar se um registo é duplicado ao verificar o Número de Operação e RequestId.

Se tiver um grande volume de dados de registo com vários ficheiros para cada hora, pode utilizar os metadados do blob para determinar os dados que o registo contém ao examinar os campos de metadados do blob. Isto também é útil porque, por vezes, pode haver um atraso enquanto os dados são escritos nos ficheiros de registo: os metadados do blob dão uma indicação mais precisa do conteúdo do blob do que o nome do blob.

A maioria das ferramentas de navegação de armazenamento permite-lhe ver os metadados dos blobs; também pode ler estas informações com o PowerShell ou programaticamente. O fragmento do PowerShell seguinte é um exemplo de filtragem da lista de blobs de registo por nome para especificar uma hora e, por metadados, para identificar apenas os registos que contêm operações de escrita .

Get-AzStorageBlob -Container '$logs' |  
Where-Object {  
    $_.Name -match 'blob/2014/05/21/05' -and   
    $_.ICloudBlob.Metadata.LogType -match 'write'  
} |  
ForEach-Object {  
    "{0}  {1}  {2}  {3}" -f $_.Name,   
    $_.ICloudBlob.Metadata.StartTime,   
    $_.ICloudBlob.Metadata.EndTime,   
    $_.ICloudBlob.Metadata.LogType  
}  

Para obter informações sobre como listar blobs programaticamente, veja Enumerar Recursos de Blobs e Definição e Obter Propriedades e Metadados para Recursos de Blobs.

Convenções de nomenclatura de registos

Cada registo será escrito no seguinte formato:

<service-name>/YYYY/MM/DD/hhmm/<counter>.log

A tabela seguinte descreve cada atributo no nome do registo:

Atributo Descrição
<service-name> O nome do serviço de armazenamento. Por exemplo: blob, tableou queue
YYYY O ano de quatro dígitos do registo. Por exemplo: 2011
MM O mês de dois dígitos do registo. Por exemplo: 07
DD O dia de dois dígitos para o registo. Por exemplo: 31
hh A hora de dois dígitos que indica a hora de início dos registos, no formato UTC de 24 horas. Por exemplo: 18
mm O número de dois dígitos que indica o minuto de início dos registos. Nota: Este valor não é suportado na versão atual do Análise de Armazenamento e o respetivo valor será 00sempre .
<counter> Um contador baseado em zero com seis dígitos que indica o número de blobs de registo gerados para o serviço de armazenamento num período de tempo de uma hora. Este contador começa em 000000. Por exemplo: 000001

Segue-se um nome de registo de exemplo completo que combina os exemplos acima:

blob/2011/07/31/1800/000001.log

Segue-se um URI de exemplo que pode ser utilizado para aceder ao registo acima:

https://<accountname>.blob.core.windows.net/$logs/blob/2011/07/31/1800/000001.log

Quando um pedido de armazenamento é registado, o nome de registo resultante está correlacionado com a hora em que a operação pedida foi concluída. Por exemplo, se um pedido GetBlob tiver sido concluído às 18:30 em 31/07/2011, o registo será escrito com o seguinte prefixo: blob/2011/07/31/1800/

Registar metadados

Todos os blobs de registo são armazenados com metadados que podem ser utilizados para identificar os dados de registo que o blob contém. A tabela seguinte descreve cada atributo de metadados:

Atributo Descrição
LogType Descreve se o registo contém informações relacionadas com operações de leitura, escrita ou eliminação. Este valor pode incluir um tipo ou uma combinação dos três, separados por vírgulas.

Exemplo 1: write

Exemplo 2: read,write

Exemplo 3: read,write,delete
StartTime A hora mais antiga de uma entrada no registo, sob a forma de YYYY-MM-DDThh:mm:ssZ. Por exemplo: 2011-07-31T18:21:46Z
EndTime A hora mais recente de uma entrada no registo, sob a forma de YYYY-MM-DDThh:mm:ssZ. Por exemplo: 2011-07-31T18:22:09Z
LogVersion A versão do formato de registo.

A lista seguinte apresenta metadados de exemplo completos com os exemplos acima:

  • LogType=write
  • StartTime=2011-07-31T18:21:46Z
  • EndTime=2011-07-31T18:22:09Z
  • LogVersion=1.0

Entradas de registo

As secções seguintes mostram uma entrada de registo de exemplo para cada serviço de Armazenamento do Azure suportado.

Entrada de registo de exemplo para o Armazenamento de Blobs

2.0;2022-01-03T20:34:54.4617505Z;PutBlob;SASSuccess;201;7;7;sas;;logsamples;blob;https://logsamples.blob.core.windows.net/container1/1.txt?se=2022-02-02T20:34:54Z&amp;sig=XXXXX&amp;sp=rwl&amp;sr=c&amp;sv=2020-04-08&amp;timeout=901;"/logsamples/container1/1.txt";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53371;2019-12-12;654;13;337;0;13;"xxxxxxxxxxxxxxxxxxxxx==";"xxxxxxxxxxxxxxxxxxxxx==";"&quot;0x8D9CEF88004E296&quot;";Monday, 03-Jan-22 20:34:54 GMT;;"Microsoft Azure Storage Explorer, 1.20.1, win32, azcopy-node, 2.0.0, win32, AzCopy/10.11.0 Azure-Storage/0.13 (go1.15; Windows_NT)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Entrada de registo de exemplo para o Armazenamento de Blobs (Data Lake Storage Gen2 ativado)

2.0;2022-01-04T22:50:56.0000775Z;RenamePathFile;Success;201;49;49;authenticated;logsamples;logsamples;blob;"https://logsamples.dfs.core.windows.net/my-container/myfileorig.png?mode=legacy";"/logsamples/my-container/myfilerenamed.png";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;73.157.16.8;2020-04-08;591;0;224;0;0;;;;Friday, 11-Jun-21 17:58:15 GMT;;"Microsoft Azure Storage Explorer, 1.19.1, win32 azsdk-js-storagedatalake/12.3.1 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Entrada de registo de exemplo para o Armazenamento de Filas

2.0;2022-01-03T20:35:04.6097590Z;PeekMessages;Success;200;5;5;authenticated;logsamples;logsamples;queue;https://logsamples.queue.core.windows.net/queue1/messages?numofmessages=32&amp;peekonly=true&amp;timeout=30;"/logsamples/queue1";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53385;2020-04-08;536;0;232;62;0;;;;;;"Microsoft Azure Storage Explorer, 1.20.1, win32 azsdk-js-storagequeue/12.3.1 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx";;;;;;;;

Entrada de registo de exemplo para o Armazenamento de Tabelas

1.0;2022-01-03T20:35:13.0719766Z;CreateTable;Success;204;30;30;authenticated;logsamples;logsamples;table;https://logsamples.table.core.windows.net/Tables;"/logsamples/Table1";xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx;0;71.197.193.44:53389;2018-03-28;601;22;339;0;22;;;;;;"Microsoft Azure Storage Explorer, 1.20.1, win32, Azure-Storage/2.10.3 (NODE-VERSION v12.16.3; Windows_NT 10.0.22000)";;"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"

Passos seguintes