Записи исчезли из ведения журнала Google после использования облачного клиента ведения журнала Google

#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

[3] https://cloud.google.com/logging/docs/export