Partager via


parse_user_agent()

S’applique à : ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Interprète une chaîne d’agent utilisateur, qui identifie le navigateur de l’utilisateur et fournit certains détails système aux serveurs hébergeant les sites web visités par l’utilisateur. Le résultat est retourné en tant que dynamic.

Syntaxe

parse_user_agent(user-agent-string, look-for)

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
user-agent-string string ✔️ Chaîne de l’agent utilisateur à analyser.
rechercher chaîne ou dynamique ✔️ Valeur à rechercher dans user-agent-string. Les options possibles sont « browser », « os » ou « device ». Si une seule cible d’analyse est requise, elle peut être passée à un string paramètre. Si deux ou trois cibles sont requises, elles peuvent être passées en tant que dynamic tableau.

Retours

Objet de type dynamic qui contient les informations sur les cibles d’analyse demandées.

Navigateur : Famille, MajorVersion, MinorVersion, Patch

OperatingSystem : Famille, MajorVersion, MinorVersion, Patch, PatchMinor

Appareil : famille, marque, modèle

Avertissement

L’implémentation de la fonction est basée sur des vérifications régulières de la chaîne d’entrée par rapport à un grand nombre de modèles prédéfinis. Par conséquent, le temps attendu et la consommation du processeur est élevée. Lorsque la fonction est utilisée dans une requête, assurez-vous qu’elle s’exécute de manière distribuée sur plusieurs machines. Si les requêtes avec cette fonction sont fréquemment utilisées, vous pouvez précréer les résultats via la stratégie de mise à jour, mais vous devez prendre en compte que l’utilisation de cette fonction à l’intérieur de la stratégie de mise à jour augmente la latence d’ingestion.

Exemples

Rechercher un paramètre sous forme de chaîne

print useragent = "Mozilla/5.0 (Windows; U; en-US) AppleWebKit/531.9 (KHTML, like Gecko) AdobeAIR/2.5.1"
| extend x = parse_user_agent(useragent, "browser") 

Le résultat attendu est un objet dynamique :

{
  "Browser": {
    "Family": "AdobeAIR",
    "MajorVersion": "2",
    "MinorVersion": "5",
    "Patch": "1"
  }
}

Rechercher un paramètre en tant que tableau dynamique

print useragent = "Mozilla/5.0 (SymbianOS/9.2; U; Series60/3.1 NokiaN81-3/10.0.032 Profile/MIDP-2.0 Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/4"
| extend x = parse_user_agent(useragent, dynamic(["browser","os","device"])) 

Le résultat attendu est un objet dynamique :

{
  "Browser": {
    "Family": "Nokia OSS Browser",
    "MajorVersion": "3",
    "MinorVersion": "1",
    "Patch": ""
  },
  "OperatingSystem": {
    "Family": "Symbian OS",
    "MajorVersion": "9",
    "MinorVersion": "2",
    "Patch": "",
    "PatchMinor": ""
  },
  "Device": {
    "Family": "Nokia N81",
    "Brand": "Nokia",
    "Model": "N81-3"
  }
}