Запланированные экспорты (и импорт) хранилищ данных могут быть длительными операциями, поэтому они поддерживают асинхронное выполнение и мониторинг хода выполнения .
В основном, когда вызапустите операцию, вы получите идентификатор операции:
Например, при запуске экспорта служба облачного хранилища данных создает длительную операцию для отслеживания состояния экспорта.Вот вывод из начала экспорта:
{
"name": "projects/[YOUR_PROJECT_ID]/operations/ASAyMDAwOTEzBxp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKKhI",
"metadata": {
"@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata",
"common": {
"startTime": "2017-05-25T23:54:39.583780Z",
"operationType": "EXPORT_ENTITIES"
},
"progressEntities": {},
"progressBytes": {},
"entityFilter": {
"namespaceIds": [
""
]
},
"outputUrlPrefix": "gs://[YOUR_BUCKET_NAME]"
}
}
Значением поля имени является идентификатор длительной операции.
Затем можно использовать операциюИдентификатор с projects.operations.get
в операции API администратора для получения времени его завершения и URL-адреса результата:
В этом примере выходных данных показана недавно выполненная операция экспорта.Операции доступны в течение нескольких дней после завершения:
{
"operations": [
{
"name": "projects/[YOUR_PROJECT_ID]/operations/ASAyMDAwOTEzBxp0bHVhZmVkBxJsYXJ0bmVjc3Utc2Jvai1uaW1kYRQKKhI",
"metadata": {
"@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesMetadata",
"common": {
"startTime": "2017-12-05T23:01:39.583780Z",
"endTime": "2017-12-05T23:54:58.474750Z",
"operationType": "EXPORT_ENTITIES"
},
"progressEntities": {
"workCompleted": "21933027",
"workEstimated": "21898182"
},
"progressBytes": {
"workCompleted": "12421451292",
"workEstimated": "9759724245"
},
"entityFilter": {
"namespaceIds": [
""
]
},
"outputUrlPrefix": "gs://[YOUR_BUCKET_NAME]"
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.datastore.admin.v1.ExportEntitiesResponse",
"outputUrl": "gs://[YOUR_BUCKET_NAME]/2017-05-25T23:54:39_76544/2017-05-25T23:54:39_76544.overall_export_metadata"
}
}
]
}
Я не совсем уверен, как бы вы различали только невыполненные задания, хотя я представляю, что в * 1028 будет что-то другое* поле.