Есть ли способ в StackDriver запланировать что-то похожее на задачу или задание cron, которое продолжает автоматически экспортировать журналы в хранилище Google Cloud через фиксированный интервал времени?
Stackdriver поддерживает экспорт данных журнала через sinks
. Нет расписания, которое вы можете установить, так как все происходит автоматически. По сути, данные экспортируются as soon as possible
, и вы не можете контролировать количество, экспортируемое в каждом приемнике, или задержку между экспортами. Я никогда не считал, что это проблема. Ведение журнала по замыслу не должно использоваться в качестве системы реального времени. Самый близкий вариант - погрузиться в PubSub, который имеет задержку в пару секунд (исходя из моего опыта).
Есть два метода экспорта данных из Stackdriver:
- Создайте экспортный сток. Поддерживаемые места назначения: BigQuery, Cloud Storage и PubSub. Записи журнала будут автоматически записаны в место назначения. Затем вы можете использовать инструменты для обработки экспортированных записей. Это рекомендуемый метод.
- Напишите свой собственный код на Python, Java и т. Д., Чтобы читать записи журнала и делать с ними то, что вы хотите. Планирование зависит от вас. Этот метод является ручным и требует вашего управления расписанием и пунктом назначения.
Что происходит с записями журнала, размер которых превышает 100 КБ. Я предполагаю, что они усекаются. Верно ли мое предположение? Если да, есть ли способ экспортировать / просмотреть полную (не усеченную) запись журнала?
Записи, превышающие максимальный размер записи, не могут быть записаны в Stackdriver. Вызов API, который пытается создать запись, завершится ошибкой с сообщением об ошибке, аналогичным (сообщение об ошибке Python):
400 Log entry with size 113.7K exceeds maximum size of 110.0K
Это означает, что слишком большие записи будут отброшены, если у писателя нет логики для обработки этого случая.
person
John Hanley
schedule
09.03.2019