Les journaux d'accès OSS incluent un ensemble standard de champs. Pour suivre des détails supplémentaires sur les requêtes, configurez des champs de journal personnalisés afin d'enregistrer des en-têtes de requête et des paramètres de requête spécifiques. Les champs de journal personnalisés sont stockés dans le champ user_defined_log_fields.
Informations générales
Les requêtes HTTP sont définies par leurs en-têtes et leurs paramètres de requête. Par défaut, les journaux d'accès OSS ne capturent qu'un sous-ensemble de ces éléments. Pour plus d'informations sur les journaux d'accès OSS, consultez la rubrique Journaux d'accès.
Vous pouvez configurer OSS pour enregistrer des en-têtes de requête et des paramètres de requête supplémentaires, tels que définis dans la norme RFC 2616.
Scénarios
Analyse des proxys : les journaux OSS n'enregistrent pas l'en-tête
x-forwarded-forpar défaut. Configurez un champ de journal personnalisé pour le capturer et analyser les intermédiaires.Catégorisation des paramètres de requête : les journaux OSS n'enregistrent pas les paramètres de requête URL par défaut. Pour journaliser des paramètres spécifiques tels que rrr et eee à partir d'une URL comme
http://bucketname.aliyuncs.com/hu.jpg?yyy=45&eee=88&rrr=huyanbin, configurez des champs de journal personnalisés.
Notes d'utilisation
Spécifiez jusqu'à six en-têtes de requête et paramètres de requête, un par ligne.
Les données journalisées sont stockées au format JSON encodé en Base64 dans le champ
user_defined_log_fields. Le JSON contient trois clés : « truncated » (indiquant si les données ont été tronquées), « headers » (en-têtes de requête) et « querys » (paramètres de requête).Les clés des en-têtes de requête autorisent les traits d'union (-) mais pas les tirets bas (_). Les clés des paramètres de requête autorisent les tirets bas (_).
Les clés des en-têtes de requête doivent contenir uniquement des caractères ASCII imprimables (33–126), à l'exclusion des tirets bas (_) et des deux-points (:).
La taille combinée clé-valeur de tous les champs personnalisés ne peut pas dépasser 1 024 octets. Les données dépassant cette limite sont tronquées. Les clés sont converties en minuscules dans les journaux ; les valeurs conservent leur casse d'origine.
Prérequis
La fonctionnalité de requête de journal en temps réel est activée pour le bucket. Pour plus d'informations, consultez la rubrique Requête de journal en temps réel.
Les requêtes envoyées au bucket incluent les en-têtes de requête ou les paramètres de requête ciblés. Consultez la rubrique Initier une requête.
Méthodes
Utiliser la console OSS
Utiliser ossutil
Opération API associée
Ces méthodes s'appuient sur une API RESTful que vous pouvez appeler directement. Les appels directs à l'API nécessitent le calcul d'une signature dans votre code. Pour plus d'informations, consultez la rubrique PutUserDefinedLogFieldsConfig.
Référence
Analyser les intermédiaires à l'aide de champs de journal personnalisés