Первый параметр строки запроса не проанализирован

#azure-application-insights #azure-data-explorer #kql

#azure-application-insights #azure-data-explorer #kql

Вопрос:

Мой запрос должен извлечь параметр строки запроса из URL-адреса в столбце данных. К сожалению, в Kusto появляется ошибка, поскольку базовый URL-адрес считается частью имени первого параметра, как указано в этом примере:

 datatable (MyUrl:string)
[
"http://foo/?p1=baramp;p2=baz",
"http://foo/?p1=baramp;p2=quuz",
"http://roo/?p1=bizamp;p2=fizz"
]
| project parse_urlquery(MyUrl)["Query Parameters"]["http://foo/?p1"], parse_urlquery(MyUrl)["Query Parameters"]["p1"], parse_urlquery(MyUrl)["Query Parameters"]["p2"]
  

Вывод Kusto

Как я могу надежно извлечь p1 (обратите внимание, он не обязательно первый в фактическом URL).

Ответ №1:

возможно, вы намеревались использовать parse_url() и нет parse_urlquery() ?

 datatable (MyUrl:string)
[
"http://foo/?p1=baramp;p2=baz",
"http://foo/?p1=baramp;p2=quuz",
"http://roo/?p1=bizamp;p2=fizz"
]
| project parse_url(MyUrl)["Query Parameters"]
  
 Query Parameters
----------------
{
  "p1": "bar",
  "p2": "baz"
}
----------------
{
  "p1": "bar",
  "p2": "quuz"
}
----------------
{
  "p1": "biz",
  "p2": "fizz"
}
  

Комментарии:

1. Действительно 🙂 Спасибо за быстрый ответ.