Активировать журналы из рабочих процессов в Stackdriver

Как вы правильно отправляете логи в Stackdriver из Google Workflows?

На основе документации я создал это:

- logStep1:
       call: sys.log
       args:
         text: "Step 2 launched accordingly"
         severity: INFO

Рабочий процесс запускается и завершается, как и ожидалось, но когда я захожу в stackdriver, чтобы найти свою запись в журнале, она не отображается, только проверенные журналы, остальные нигде не найти.

В документах Google указаны определенные шаги для поиска этих журналов, но даже resource.type="workflows.googleapis.com/Workflows" помечен как неверный в фильтре stackdriver.

Я ожидал увидеть свою текстовую полезную нагрузку под синей иконкой (INFO) записи, но, увы, ее там нет.

Я что-то пропустил в моем шаге журнала?

Используемые ресурсы: https://cloud.google.com/workflows/docs/troubleshooting#sending-logs


person JorgeHPM    schedule 09.02.2021    source источник


Ответы (1)


После повторного прочтения документации говорится, что требуются разрешения Log Writer, я думал, что разрешения будут унаследованы от вызывающей стороны, но это не так, один раз приходится создавать конкретную учетную запись службы со всеми необходимыми разрешениями, включая Log Writer. или Log Admin, чтобы иметь возможность отправлять информацию в поток событий Stackdriver.

Итак, для решения этой проблемы проверьте:

  1. У вас есть созданная вручную учетная запись службы, а не та, которая создается автоматически.
  2. У этого SA есть все необходимые API и разрешения для доступа к вашим конечным точкам и возможность записи журнала.
  3. При создании потока необходимо использовать созданный SA (вместо сгенерированного)
  4. Попытайся.

Я проверял это несколько раз, и это работает.

person JorgeHPM    schedule 10.02.2021
comment
Пожалуйста, рассмотрите возможность принятия вашего собственного ответа, чтобы сообщество с той же проблемой могло использовать ваше решение. - person Kevin Quinzel; 24.02.2021