Os logs de acesso do OSS incluem um conjunto padrão de campos. Para rastrear detalhes adicionais da requisição, configure campos de log personalizados que registrem cabeçalhos de requisição e parâmetros de consulta específicos. O campo user_defined_log_fields armazena esses campos personalizados.
Informações básicas
Cabeçalhos e parâmetros de consulta definem as requisições HTTP. Por padrão, os logs de acesso do OSS capturam apenas um subconjunto desses elementos. Para obter mais informações sobre os logs de acesso do OSS, consulte Logs de acesso.
Configure o OSS para registrar cabeçalhos de requisição e parâmetros de consulta adicionais conforme definido na RFC 2616.
Cenários
Análise de proxy: os logs do OSS não registram o cabeçalho
x-forwarded-forpor padrão. Configure um campo de log personalizado para capturá-lo e analisar intermediários.Categorização de parâmetros de consulta: os logs do OSS não registram parâmetros de consulta de URL por padrão. Para registrar parâmetros específicos, como rrr e eee, em uma URL como
http://bucketname.aliyuncs.com/hu.jpg?yyy=45&eee=88&rrr=huyanbin, configure campos de log personalizados.
Observações de uso
Especifique até seis cabeçalhos de requisição e parâmetros de consulta, um por linha.
O campo
user_defined_log_fieldsarmazena os dados registrados como JSON codificado em Base64. Esse JSON contém três chaves: "truncated" (indica se houve truncamento dos dados), "headers" (cabeçalhos de requisição) e "querys" (parâmetros de consulta).Chaves de cabeçalho de requisição aceitam hifens (-), mas não underscores (_). Chaves de parâmetro de consulta aceitam underscores (_).
Chaves de cabeçalho de requisição devem conter apenas caracteres ASCII imprimíveis (33–126), exceto underscores (_) e dois pontos (:).
O tamanho combinado de chave e valor de todos os campos personalizados não pode exceder 1.024 bytes. Dados acima desse limite são truncados. Os logs convertem as chaves para minúsculas; os valores mantêm a formatação original de maiúsculas e minúsculas.
Pré-requisitos
A consulta de log em tempo real está ativada para o bucket. Para mais informações, consulte Consulta de log em tempo real.
As requisições enviadas ao bucket incluem os cabeçalhos ou parâmetros de consulta desejados. Consulte Iniciar uma requisição.
Métodos
Usar o console do OSS
Usar ossutil
Operação de API relacionada
Esses métodos baseiam-se em uma API RESTful que você pode chamar diretamente. Chamadas diretas à API exigem cálculo de assinatura no código. Para mais informações, consulte PutUserDefinedLogFieldsConfig.
Referência
Analisar intermediários com base em campos de log personalizados