0

У меня есть приложение, которое размещено в нескольких регионах в Azure. В последнее время клиенты жалуются на медленную производительность. Мы подозреваем, что проблема находится в одном из регионов Azure, я пытаюсь посмотреть аналитику из AppInsight, и я мог видеть для запросов столбец cloud_RoleInstance. Есть ли способ получить регион из этого столбца или любого другого столбца по умолчанию?Application Insight Request Region

ответ

0

Вы можете использовать столбцы client_CountryOrRegion и client_City в Analytics. Например, выполнив следующий запрос получит Вас количество запросов в регионе:

requests 
| project client_CountryOrRegion, client_City 
| summarize count() by client_CountryOrRegion, client_City 

Обратите внимание, что эти колонки содержат округа и города в регионе, так что вам нужно будет вручную преобразовать его к конкретному область. Вы можете использовать Azure regions page, чтобы конвертировать между городом/страной и центром данных. Например, Бойдтон Вирджиния - Восточная часть США и Сан-Антонио Техас - Южная Центральная Америка.

Надеется, что это помогает,

Асаф

+1

, который предоставит только местонахождение клиента. Если у меня есть AppService, который размещен в восточном, западном и южном центральных районах США, как я могу определить, к чему подключаются клиенты? –

0

По вашему описанию, я предположил, что ваше приложение развернуто на несколько Azure Web Apps, которые принадлежат к определенному центру данных (например, Восточные США, Западные США, Южные и Центральным США и т. Д.). И вы используете Azure Traffic Manager для распространения запроса в ближайший центр обработки данных, чтобы получить самую низкую задержку. Вот мой тест, вы можете обратиться к нему:

Я создал Traffic Manager и добавлены два пункта:

1) Веб-приложение с именем Bruce-Chen-001 который размещается в East Asia

2) Веб-приложение названный Bruce-Chen-003 который размещается в West US

Заходя имя DNS моего менеджера трафика и browsering конкретный Web App непосредственно, я мог бы получить запрос данных от приложения Insights следующим образом:

Как я знаю, столбец называется cloud_RoleInstance указывает идентификатор хоста машины, на которой ваше приложение работает. Вы можете попытаться вручную преобразовать cloud_RoleInstance в конкретный регион в соответствии с соответствующей колонкой url.

+0

Спасибо, Моя проблема в столбцах URL имеет только URL-адрес диспетчера трафика. Ваша вторая строка, когда вы отправляетесь в диспетчер трафика, попадает в RD0000155x, где вы можете сказать, что это поражает Запад-США, я мог разобрать это с вашей первой строки. Есть ли образец, который использует Azure, из которого я могу сказать, что RD0000155x является западным, а RD0000D3X - восточно-азиатским? У вас есть список :) –

+0

Как показано в [article] (https://azure.microsoft.com/en-us/documentation/articles/app-insights-performance-counters/), столбец с именем «cloud_RoleInstance» указывает на идентификатор экземпляра сервера хоста, на котором выполняется ваше приложение. И слишком много экземпляров сервера хостинга, которые используются для размещения приложений в Центре обработки данных. Для обходного пути я предположил, что вам нужно вручную преобразовать «cloud_RoleInstance» в конкретный центр данных в данные запроса. –

+0

Как бы я вручную конвертировал, вы хотите пойти в appservice, выяснить, какой экземпляр размещает службы и отображать его вручную в регионе. Но это показывает только текущие имена экземпляров, как мне преобразовать все экземпляры прошлого.Если я делаю это как я, я получаю 105 записей 'запросы | суммировать count() cloud_RoleInstance' –

Смежные вопросы