TL;DR;
Кто-нибудь знает, можно ли использовать console.log
в функции Firebase / Google Cloud для записи записей в драйвер стека с помощью свойства jsonPayload
, чтобы мои журналы были доступны для поиска (в настоящее время все, что я передаю в console.log, преобразуется в textPayload
).
У меня есть многомодульный проект с некоторым кодом, работающим в Firebase Cloud Functions, а некоторым - в других средах, таких как Google Compute Engine. Немного упрощая, у меня, по сути, есть «основной» модуль, а затем я развертываю модуль «облачных функций» в облачных функциях, «бэкэнд-сервис» в GCE, которые все зависят от «ядра» и т. Д.
Я использую bunyan для ведения журнала во всем моем «основном» модуле, и при развертывании в GCE регистратор настраивается с использованием «@ google-cloud / logging-bunyan», поэтому мои журналы идут в драйвер стека.
Кроме того: использование этой конфигурации в Google Cloud Functions вызывает проблемы с Error: Endpoint read failed
, которые, я думаю, связаны с тем, что функции не перестают работать и пытаются повторно использовать неработающие соединения, но я не уверен на 100%, какова настоящая причина. em>
Итак, теперь я пытаюсь войти, используя console.log(arg)
, где arg
- это объект, а не строка. Я хочу, чтобы этот объект отображался в драйвере стека под jsonPayload
, но он был преобразован в строку и помещен в поле textPayload
.
Error: Endpoint read failed
, но это, вероятно, займет столько же времени, сколько и следование их документации по использованиюconsole.log
, как описано здесь cloud.google.com/functions/docs/monitoring/logging - person dan.jones   schedule 09.03.2018