parse_user_agent()
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati✅ Azure Monitor✅Microsoft Sentinel
Interpreta una stringa dell'agente utente, che identifica il browser dell'utente e fornisce determinati dettagli di sistema ai server che ospitano i siti Web visitati dall'utente. Il risultato viene restituito come dynamic
.
Sintassi
parse_user_agent(
user-agent-string, cercare)
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
user-agent-string | string |
✔️ | Stringa dell'agente utente da analizzare. |
cerca | stringa o dinamica | ✔️ | Valore da cercare in user-agent-string. Le opzioni possibili sono "browser", "os" o "device". Se è necessaria una sola destinazione di analisi, può essere passato un string parametro. Se sono necessarie due o tre destinazioni, possono essere passate come dynamic matrice. |
Valori restituiti
Oggetto di tipo dynamic
che contiene le informazioni sulle destinazioni di analisi richieste.
Browser: Family, MajorVersion, MinorVersion, Patch
OperatingSystem: Family, MajorVersion, MinorVersion, Patch, PatchMinor
Dispositivo: Famiglia, Marchio, Modello
Avviso
L'implementazione della funzione è basata su controlli regex della stringa di input rispetto a un numero elevato di modelli predefiniti. Pertanto, il tempo previsto e il consumo della CPU sono elevati. Quando la funzione viene usata in una query, assicurarsi che venga eseguita in modo distribuito in più computer. Se le query con questa funzione vengono usate di frequente, è possibile creare in modo preliminare i risultati tramite i criteri di aggiornamento, ma è necessario tenere conto che l'uso di questa funzione all'interno dei criteri di aggiornamento aumenterà la latenza di inserimento.
Esempi
Cercare il parametro come stringa
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")
Il risultato previsto è un oggetto dinamico:
{
"Browser": {
"Family": "AdobeAIR",
"MajorVersion": "2",
"MinorVersion": "5",
"Patch": "1"
}
}
Cercare il parametro come matrice dinamica
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"]))
Il risultato previsto è un oggetto dinamico:
{
"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"
}
}