Мониторинг данных Azure Cosmos DB с помощью параметров диагностики в Azure

Область применения: Nosql Mongodb Кассандра Гремлин Таблица

Параметры диагностики в Azure используются для сбора журналов ресурсов. Ресурсы выдают журналы ресурсов Azure и предоставляют широкие, частые данные об операции этого ресурса. Эти журналы записываются для каждого запроса, и они также называются "журналами плоскости данных". Некоторые примеры операций плоскости данных включают удаление, вставку и чтение. Содержимое этих журналов зависит от типа ресурса.

Метрики платформы и журналы действий собираются автоматически, но для сбора журналов ресурсов или их отправки за пределы Azure Monitor необходимо создать параметр диагностики. Вы можете включить параметр диагностики для учетных записей Azure Cosmos DB и отправлять журналы ресурсов в следующие источники:

  • Рабочие области Log Analytics
    • Данные, отправленные в Log Analytics, можно записывать в таблицы диагностики Azure (устарело) или таблицы для конкретных ресурсов (предварительная версия).
  • концентратор событий;
  • Учетная запись хранения

Примечание.

Мы рекомендуем создать параметр диагностики в режиме конкретного ресурса (для всех API, кроме API для таблицы), следуя нашим инструкциям по созданию параметра диагностика через REST API. Этот вариант обеспечивает дополнительную оптимизацию затрат и улучшенное представление для обработки данных.

Необходимые компоненты

Создание параметров диагностики

Здесь мы рассмотрим процесс создания параметров диагностики для вашей учетной записи.

  1. Войдите на портал Azure.

  2. Перейдите к своей учетной записи Azure Cosmos DB. Откройте область параметров диагностики в разделе "Мониторинг" и выберите параметр "Добавить параметр диагностики".

    Sreenshot of the diagnostics selection page.

    Важно!

    Может появиться запрос "Включить полнотекстовый запрос [...] для более подробного ведения журнала", если функция полнотекстового запроса не включена в вашей учетной записи. Это предупреждение можно игнорировать, если вы не хотите включить эту функцию. Дополнительные сведения см. в разделе "Включение полнотекстового запроса".

  3. На панели Параметры диагностики заполните форму, выбрав нужные категории. Ниже приведен список категорий журналов.

    Категория API Определение Ключевые свойства
    DataPlaneRequests Рекомендуется для API для NoSQL Записывает внутренние запросы в виде операций плоскости данных, которые выполняются для создания, обновления, удаления или извлечения данных в учетной записи. Requestcharge, , statusCodeclientIPaddress, partitionIDresourceTokenPermissionIdresourceTokenPermissionMode
    MongoRequests API для MongoDB Регистрирует запросы, инициированные пользователем, из внешнего интерфейса для обслуживания запросов к Azure Cosmos DB для MongoDB. Если вы включите эту категорию, обязательно отключите категорию DataPlaneRequests. Requestcharge, , opCoderetryCountpiiCommandText
    CassandraRequests API для Apache Cassandra Регистрирует запросы, инициированные пользователем, из внешнего интерфейса для обслуживания запросов в Azure Cosmos DB для Cassandra. operationName, , requestChargepiiCommandText
    GremlinRequests API для Apache Gremlin Регистрирует запросы, инициированные пользователем, из внешнего интерфейса для обслуживания запросов в Azure Cosmos DB для Gremlin. operationName, , requestChargepiiCommandTextretriedDueToRateLimiting
    QueryRuntimeStatistics API для NoSQL Эта таблица содержит сведения о операциях запроса, выполняемых для учетной записи API для NoSQL. По умолчанию текст запроса и его параметры скрываются, чтобы избежать ведения журнала данных persona l с полным текстовым ведением журнала запросов, доступных по запросу. databasename, , partitionkeyrangeidquerytext
    PartitionKeyStatistics Все API Записывает в журнал статистику ключей логических разделов, представляя предполагаемый размер хранилища (в КБ) для ключей секций. Эта таблица полезна для устранении неполадок, связанных с неравномерным распределением данных в хранилище. Этот журнал PartitionKeyStatistics создается только в том случае, если заданы следующие условия: 1. По крайней мере 1 % документов в физической секции имеют одинаковый ключ логической секции. 2. Из всех ключей в физической секции журнал PartitionKeyStatistics записывает первые три ключа с наибольшим размером хранилища. Если предыдущие условия не выполнены, данные статистики ключа секции недоступны. Это нормально, если указанные выше условия не соответствуют вашей учетной записи, что обычно означает, что у вас нет логического хранилища секций. Примечание. Предполагаемый размер ключей секции вычисляется с помощью подхода выборки, который предполагает, что документы в физической секции примерно одинаковы. Если размеры документа не одинаковы в физической секции, предполагаемый размер ключа секции может быть не точным. subscriptionId, , regionNamepartitionKeysizeKB
    PartitionKeyRUConsumption API для NoSQL или API для Apache Gremlin Записывает в журнал агрегированное количество потребленных ЕЗ/с для ключей секций. Эта таблица полезна для устранения неполадок, связанных с "горячими" секциями. В настоящее время Azure Cosmos DB сообщает ключи секций для учетных записей API для Учетных записей NoSQL, а также для операций чтения и записи, запросов и хранимых процедур. subscriptionId, , regionNamepartitionKey, requestChargepartitionKeyRangeId
    ControlPlaneRequests Все API Журналы сведений об операциях плоскости управления, включая создание учетной записи, добавление или удаление региона, обновление параметров реплика и т. д. operationName, , httpstatusCodehttpMethodregion
    TableApiRequests API для таблицы Регистрирует запросы, инициированные пользователем, из внешнего интерфейса для обслуживания запросов в Azure Cosmos DB для таблицы. operationName, , requestChargepiiCommandText
  4. После выбора сведений о категориях отправьте свои журналы в желаемое место назначения. Если вы отправляете журналы в рабочую область Log Analytics, обязательно выберите в качестве целевой таблицы таблицу для конкретных ресурсов.

    Screenshot of the option to enable resource-specific diagnostics.

Включение полнотекстовых запросов для журналов

Примечание.

Включение этой функции может привести к дополнительным затратам на ведение журнала. Сведения о ценах см. на странице цен на Azure Monitor. Рекомендуется отключить эту функцию после устранения неполадок.

Azure Cosmos DB поддерживает расширенные функции ведения журнала для подробного устранения неполадок. Включив полнотекстовый запрос, вы можете просмотреть деобфускированный запрос для всех запросов в учетной записи Azure Cosmos DB. Вы также предоставляете разрешение azure Cosmos DB для доступа к этим данным и их поверхности в журналах.

  1. Чтобы включить эту функцию, перейдите на Features страницу в учетной записи Azure Cosmos DB.

    Screenshot of the navigation process to the Features page.

  2. Выберите Enable. Этот параметр применяется в течение нескольких минут. Все только что приеманные журналы имеют полный текст или текст PIICommand для каждого запроса.

    Screenshot of the full-text feature being enabled.

Запрос данных

Чтобы узнать, как запрашивать эти новые функции, см. следующие сведения:

Следующие шаги