Мне нужно, чтобы мой код знал, когда он получил все объекты изначально, т. е. мне нужно, чтобы он имел полный снимок перед завершением инициализации и сообщением о готовности. И затем мне нужно, чтобы он транслировал изменения по мере их возникновения.
Я могу как получить снимок, так и передать изменения, но я не могу понять, как передавать в потоковом режиме только те изменения, которые произошли после моментального снимка.
Я пытался использовать ресурсVersion, сохраняя числовую максимальную версию ресурса, а затем передавая ее в часы:
Код: Выделить всё
# self._resource_version holds the int maximum resourceVersion from previous requests
kwargs = {} if self._resource_version is None else {"resource_version": self.resource_version}
w = watch.Watch()
async for event in w.stream(api.list_custom_object_for_all_namespaces, self._group, self._version, self._kind, **kwargs):
...
Код: Выделить всё
kubernetes_asyncio.client.exceptions.ApiException: (410)
Reason: Expired: too old resource version: 13661954 (14468401)
Как я могу отслеживать изменения, которые происходят после исходного снимка, не передавая также все из исходного снимка?
Подробнее: https://stackoverflow.com/questions/799 ... am-changes
Мобильная версия