#python #google-cloud-logging #google-cloud-iot
#python #google-cloud-logging #google-cloud-iot
Вопрос:
Я использую клиент ведения журнала Google на python, чтобы получить некоторый журнал из моей основной службы Google IoT.
Вот код, который я использую:
client = self.create_client()
log_filter: str = self.set_filter(device_id, timestamp)
for _ in client.list_entries(filter_=log_filter, page_size=1):
return False
return True
Фильтр, который я использую, выглядит следующим образом:
resource.type: cloudiot_device И jsonPayload.EventType: DISCONNECT И resource.labels.device_num_id:my_device_num_id И timestamp>=»down_limit» И timestamp<=»up_limit»
По сути, я пытаюсь получить событие отключения из журнала, если я нашел соответствующую запись, тогда я останавливаю запуск.
Таким образом, код работает, но почему-то мой журнал, похоже, исчезает.
Я создал модульный тест и задал идентификатор устройства и временную метку, вчера мне удалось найти соответствующую запись в журнале, но сегодня она больше не существует..
Есть идеи, откуда это может быть?
Ответ №1:
Журналы аудита доступа к данным [1] хранятся 30 дней [2].
Аналогичные журналы для дат, более поздних, чем месяц, по-прежнему отображаются в вашем журнале stackdriver.
Как предлагается в документации, если вы хотите более длительного хранения, рекомендуется экспортировать записи журнала аудита, как и любые другие записи журнала ведения журнала, и хранить их столько, сколько вы пожелаете. Вы можете просмотреть эту ссылку [3] для получения дополнительной информации.
[1]https://cloud.google.com/logging/docs/audit#data-access
[2] https://cloud.google.com/logging/docs/audit#audit_log_retention