Где найти журнал доступа для доступа к мастекейв в Azure Cosmos DB

Не могли бы вы помочь мне понять, где я могу найти журналы всех действий с использованием главного ключа для доступа к CosmosDB / DocumentDB azure.

Предыстория: все, что я могу найти в журналах, - это идентификатор пользователя, который обратился к документу db на лазурном. У нас также есть сценарий на Python с использованием Pydocumentdb, который использует мастер-ключ для доступа к данным из Azure Cosmos DB. Но в логах этого не видно.

Спасибо


person Praful Mattoo    schedule 06.10.2017    source источник
comment
Привет, есть обновления?   -  person Jay Gong    schedule 10.10.2017
comment
Привет, меня тошнило, ответ подтверждаю до пятницы.   -  person Praful Mattoo    schedule 11.10.2017
comment
Конечно! Любая проблема, пожалуйста, дайте мне знать.Спасибо   -  person Jay Gong    schedule 11.10.2017


Ответы (1)


Diagnostic logging в Azure Cosmos DB позволяет отслеживать, как и когда осуществляется доступ к вашим базам данных.

Щелкните Diagnostic logs на левой панели навигации, а затем щелкните Turn on diagnostics в своей базе данных лазурного космоса.

введите описание изображения здесь

Вы можете хранить файлы журналов в azure account, транслировать в eventhub или отправлять в azure analytics

введите описание изображения здесь

Журналы становятся доступными в вашей учетной записи two hours с момента выполнения операции Azure Cosmos DB. Вам решать управлять своими журналами в своей учетной записи хранения.

Отдельные большие двоичные объекты хранятся в виде текста в формате JSON больших двоичных объектов.

{
    "records":
    [
        {
           "time": "Fri, 23 Jun 2017 19:29:50.266 GMT",
           "resourceId": "contosocosmosdb",
           "category": "DataPlaneRequests",
           "operationName": "Query",
           "resourceType": "Database",
           "properties": {"activityId": "05fcf607-6f64-48fe-81a5-f13ac13dd1eb",`
           "userAgent": "documentdb-dotnet-sdk/1.12.0 Host/64-bit MicrosoftWindowsNT/6.2.9200.0 AzureSearchIndexer/1.0.0",`
           "resourceType": "Database","statusCode": "200","documentResourceId": "",`
           "clientIpAddress": "13.92.241.0","requestCharge": "2.260","collectionRid": "",`
           "duration": "9250","requestLength": "72","responseLength": "209", "resourceTokenUserRid": ""}
        }
    ]
}

Дополнительные сведения см. здесь.

Обновить ответ:

По моим наблюдениям, журналы в Azure Cosmos DB не различают запросы с использованием Master key или Resource Token.

Однако я хотел бы предложить вам обходной путь.

Вы знаете, что Python Document DB SDK на самом деле является REST API.

Таким образом, вы можете отправлять свои HTTP-запросы на сервер Azure через reverse proxy, например Nginx.

Вы можете определить метод доступа по формату URL-адреса запроса и зарегистрировать его на уровне reverse proxy.

Надеюсь, это поможет тебе.

person Jay Gong    schedule 09.10.2017
comment
Привет, Джей, я включил ведение журнала диагностики. Я вижу две папки в учетной записи хранения под журналами «Журналы операций» и «Журналы запросов Dataplane». У меня вопрос: где и как найти журналы запросов для БД документов, которые были запрошены с использованием главного ключа для DocumentDB. Я могу найти журналы доступа пользователей, но не журналы доступа Masterkey. - person Praful Mattoo; 16.10.2017
comment
@PrafulMattoo Привет, Praful. Пожалуйста, посмотрите мой ответ на обновление. - person Jay Gong; 16.10.2017
comment
Это помогает Большое спасибо. Я приму ответ. Хорошего дня :) - person Praful Mattoo; 16.10.2017