Мониторинг задержки на стороне сервера для операций в контейнере или учетной записи Azure Cosmos DB
Область применения: Nosql Mongodb Кассандра Гремлин Таблица
Azure Monitor для Azure Cosmos DB предоставляет представление метрик для мониторинга учетной записи и создания панелей мониторинга. Эта функция не требует явного включения или настройки каких-либо параметров — данные метрик Azure Cosmos DB собираются по умолчанию. Метрика задержки на стороне сервера для прямого подключения и метрика задержки на стороне сервера для шлюза используются для просмотра серверной задержки операции в двух разных режимах подключения. Используйте метрику задержки на стороне сервера для шлюза, если операция запроса выполняется в режиме подключения через шлюз. Используйте метрику задержки на стороне сервера для прямого подключения, если операция запроса выполняется в режиме прямого подключения. Azure Cosmos DB обеспечивает SLA менее 10 мс для точечных операций чтения и записи с прямым подключением. Для операций чтения и записи точек соглашения об уровне обслуживания вычисляются, как описано в документе соглашения об уровне обслуживания. Дополнительные сведения о режимах подключения см. в статье Режимы подключения.
В таблице ниже указано, какой API поддерживает метрики задержки на стороне сервера для прямого подключения и подключения через шлюз:
API | Задержка на стороне сервера при прямом подключении | Задержка на стороне сервера при подключении через шлюз |
---|---|---|
SQL | ✓ | ✓ |
MongoDB | ✓ | |
Cassandra | ✓ | |
Gremlin | ✓ | |
Таблица | ✓ | ✓ |
Метрики задержки на стороне сервера имеет смысл отслеживать, если наблюдается необычно высокая задержка для точечных операций, таких как:
- операции GET или SET с ключом секции и идентификатором;
- операции чтения и записи;
- запросы.
Узнать размер возвращаемых данных можно в журнале диагностики. Если вы видите постоянную высокую задержку операций запроса, проверьте в журнале диагностики, не наблюдается ли рост использования пропускной способности или ЕЗ/с. Задержка на стороне сервера отражает время обработки в серверной инфраструктуре перед возвратом данных клиенту. Важно ознакомиться с этой метрикой, чтобы исключить любые проблемы с задержкой серверной части.
Просмотр метрик задержки на стороне сервера
Войдите на портал Azure.
На панели навигации слева выберите пункт Монитор, а затем выберите Метрики.
В области Метрики щелкните >Выбрать ресурс> и выберите требуемые подписку и группу ресурсов. Для типа ресурса выберите учетные записи Azure Cosmos DB, выберите одну из существующих учетных записей Azure Cosmos DB и нажмите кнопку "Применить".
Затем выберите метрику Server Side Latency Gateway (Задержка на стороне сервера при подключении через шлюз) в списке доступных метрик, если операция выполнялась в режиме подключения через шлюз. Выберите метрику Server Side Latency Direct (Задержка на стороне сервера при прямом подключении), если операция выполнялась в режиме прямого подключения. Подробные сведения о всех доступных метриках в списке см. в статье с перечнем метрик по категориям. В этом примере мы выберем метрику Server Side Latency Gateway (Задержка на стороне сервера при прямом подключении) и Среднее в качестве значения агрегата. Помимо этих сведений, можно также выбрать диапазон времени и степень детализации времени для метрик. Вы можете просмотреть метрики максимум за последние 30 дней. После применения фильтра отображается диаграмма на его основе. Задержка на стороне сервера отображается в режиме подключения шлюза в течение 5 минут в течение выбранного периода.
Фильтры задержки на стороне сервера
Можно также фильтровать метрики и отображаемую диаграмму по определенным значениям параметров CollectionName, DatabaseName, OperationType, Region и PublicAPIType.
Чтобы отфильтровать метрики, выберите команду Добавить фильтр, а затем выберите требуемое свойство, например PublicAPIType, и значение, например Sql. Выберите команду Применить разделение для OperationType. Затем на графике отобразится задержка на стороне сервера для различных операций в режиме подключения через шлюз за выбранный период. Операции, выполняемые с помощью хранимой процедуры, не регистрируются в журнале, поэтому они недоступны с помощью метрики OperationType.
Метрики Server Side Latency Gateway (Задержка на стороне сервера при подключении через шлюз) для каждой операции отображаются, как показано на следующем изображении:
Метрики также можно группировать с помощью параметра Применить разделение.
Примечание.
Запросы, поступающие в Azure Cosmos DB, не всегда предназначены для контейнера. Например, можно создать базу данных внутри глобально распределенной учетной записи, и запрос по-прежнему будет записан для метрики задержки на стороне сервера. Запрос записывается, так как требуется время для создания ресурса базы данных, но он не предназначен для контейнера. Если вы видите, что значение CollectionName
метрики равно <empty>
, это означает, что целевой объект не является контейнером, а другим ресурсом в Azure Cosmos DB.
В качестве обходного решения можно заранее отфильтровать метрики в определенном контейнере (CollectionName), чтобы исключить запросы, которые не относятся к контейнеру, который является предметом запроса.
Следующие шаги
- Мониторинг данных Azure Cosmos DB с помощью параметров диагностики в Azure.
- Аудит операций уровня управления Azure Cosmos DB