DataPlaneRequests partitionID в журналах CosmosDB c всегда кажется пустым - PullRequest
0 голосов
/ 28 января 2020

Я включил диагностику c регистрация учетной записи Космос (интерфейс SQL). Диагностические данные журнала c отправляются в учетную запись хранилища - и я вижу, что каждые 5 минут создается новый BLOB-объект DataPlaneRequests. Пока все хорошо.

Я выполняю запросы CRUD для коллекции в учетной записи Cosmos. Я вижу записи в журналах DataPlaneRequest, которые выглядят следующим образом ('*' используется для защиты невинных) ...

{"time": "2020-01-28T03: 04: 59.2606375Z "," resourceId ":" /SUBSCRIPTIONS/****/RESOURCEGROUPS/****/PROVIDERS/MICROSOFT.DOCUMENTDB/DATABASEACCOUNTS/********** "," category ":" DataPlaneRequests ", "operationName": "Query", "properties": {"activityId": "38f497ee-7e37-435f-8b4a-a2f0d8d65d12", "requestResourceType": "DocumentFeed", "requestResourceId": "/ dbs / **** / colls / **** / docs "," collectionRid ":" "," databaseRid ":" "," statusCode ":" 200 "," duration ":" 4.588500 "," userAgent ":" Windows / 10.0.14393 documentdb-netcore-sdk / 2.8.1 "," clientIpAddress ":" 52. . . *** "," requestCharge ":" 4.160000 "," requestLength ":" 278 "," responseLength ":" 5727 "," resourceTokenUserRid ":" "," region ":" West US 2 "," partitionId ":" "}}

Каждая запись в DataPlaneRequests Журнал имеет пустое значение свойства partitionId. (Значение свойства operationName в журнале равно «Создать» или «Запрос»).

Поэтому мой вопрос - почему это свойство пустое?

Вот документация для DataPlaneRequests


То, что я на самом деле пытаюсь выполнить sh, - это получить информацию о нагрузке, размещаемой на физических разделах коллекции. например, я хотел бы знать, что в течение последних 10 минут операции 10k Create выполнялись в физическом разделе «1», а операции 55k выполнялись в физическом разделе «3». Это позволит мне лучше понять, почему происходит дросселирование коллекции и т. Д. c.

1 Ответ

0 голосов
/ 18 февраля 2020

При подключении к Космосу доступны два режима подключения: Шлюз и Прямой. Оказывается, что только прямой режим, заставляет partitionId быть включенным в журналы. (Если вы читаете о том, как эти два режима работают (по-разному), то это имеет смысл).

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

Там - это идентификатор физического раздела, доступный в журналах - но он также ограниченного использования - так как он отслеживается только для 3 самых больших (логических) значений PartitionKey каждого физического раздела, только если значение ключа содержит> = 1 ГБ документов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...