Azure Log Analytics анализирует данные WAF (строковые данные в целом) - PullRequest
1 голос
/ 21 мая 2019

Попытка проанализировать приведенную ниже строку из журналов Azure WAF.

Matched Data: \x22:\x22SURVEY_0001\x22,\x22e found within REQUEST_COOKIES:cspSurvey: {\x22surveyId\x22:\x22SURVEY_0001\x22,\x22exit\x22:1}

Я хочу вернуть имя файла cookie, которое следует после REQUEST_COOKIES: и значение файла cookie, которое следует за именем файла cookie (в данном примере cspSurvey)

Я попробовал этот уродливый код,но индекс массива имени файла cookie не всегда одинаков.

| extend cookie_value  = split(details_data_s, ' ')[-1]
| extend cookie = split(split(details_data_s, ' ')[-2],':')[1]

Ниже приведен мой полный запрос

AzureDiagnostics
| where ResourceType == "APPLICATIONGATEWAYS"
| where OperationName == "ApplicationGatewayFirewall"
| where details_data_s contains "cookie"
| extend cookie_value  = split(details_data_s, ' ')[-1]
| extend cookie = split(split(details_data_s, ' ')[-2],':')[1]
| project clientIp_s, requestUri_s, ruleGroup_s, details_data_s, cookie, cookie_value

1 Ответ

0 голосов
/ 21 мая 2019

вы можете попробовать использовать оператор parse: https://docs.microsoft.com/en-us/azure/kusto/query/parseoperator

print value = 'Matched Data: \x22:\x22SURVEY_0001\x22,\x22e found within REQUEST_COOKIES:cspSurvey: {\x22surveyId\x22:\x22SURVEY_0001\x22,\x22exit\x22:1}'
| parse value with * "REQUEST_COOKIES:" cookie_name ": " cookie_value:dynamic
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...