Udostępnij za pośrednictwem


parse_user_agent()

Dotyczy: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Interpretuje ciąg agenta użytkownika, który identyfikuje przeglądarkę użytkownika i udostępnia pewne szczegóły systemu serwerom hostująca witryny internetowe odwiedzane przez użytkownika. Wynik jest zwracany jako dynamic.

Składnia

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

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
user-agent-string string ✔️ Ciąg user-agent do przeanalizowana.
wyszukiwanie ciąg lub dynamiczny ✔️ Wartość do wyszukania w ciągu user-agent-string. Możliwe opcje to "browser", "os" lub "device". Jeśli wymagany jest tylko jeden element docelowy analizy, można przekazać string parametr . Jeśli wymagane są dwa lub trzy obiekty docelowe, można je przekazać jako tablicę dynamic .

Zwraca

Obiekt typu dynamic zawierający informacje o żądanych obiektach docelowych analizowania.

Przeglądarka: Rodzina, MajorVersion, MinorVersion, Patch

OperatingSystem: Family, MajorVersion, MinorVersion, Patch, PatchMinor

Urządzenie: rodzina, marka, model

Ostrzeżenie

Implementacja funkcji jest oparta na sprawdzaniu wyrażeń regularnych ciągu wejściowego względem ogromnej liczby wstępnie zdefiniowanych wzorców. W związku z tym oczekiwany czas i użycie procesora CPU jest wysokie. Gdy funkcja jest używana w zapytaniu, upewnij się, że jest ona uruchamiana w sposób rozproszony na wielu maszynach. Jeśli zapytania z tą funkcją są często używane, możesz wstępnie utworzyć wyniki za pośrednictwem zasad aktualizacji, ale należy wziąć pod uwagę, że użycie tej funkcji w zasadach aktualizacji zwiększy opóźnienie pozyskiwania.

Przykłady

Wyszukaj parametr jako ciąg

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") 

Oczekiwany wynik jest obiektem dynamicznym:

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

Wyszukaj parametr jako tablicę dynamiczną

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"])) 

Oczekiwany wynik jest obiektem dynamicznym:

{
  "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"
  }
}