Как заставить журналы GCP отображаться в CloudRun?

# #google-cloud-platform #google-cloud-run #google-cloud-logging

Вопрос:

Я вижу инструкции по адресу https://www.npmjs.com/package/@google-cloud/logging чтобы начать ведение журнала, но я, кажется, не вижу журналов https://console.cloud.google.com/run/detail/<location>/<service>/logs?project=<project> для CloudRun, и я не уверен, где они находятся (я вызвал их с quickstart('my-project', 'my-log') помощью .

Ответ №1:

Чтобы найти журналы журналов из учебника, используйте проводник журналов https://console.cloud.google.com/logs/query с запросом logName="projects/<project>/logs/<log_name>" , поэтому в вашем случае, logName="projects/my-project/logs/my-log" когда вы редактируете запрос, вы можете найти его в раскрывающемся списке ниже log name .

Чтобы войти в CloudRun систему, вам нужно указать следующее в метаданных:

 {
   ...,
   resource: { 
      type: 'cloud_run_revision', 
      labels: { service_name: 'my-service', location: 'us-east1' } },
}
 

Вы можете использовать этот пример функции для тестирования:

 const log = async (text, name) => {
   const gcpLogger = new Logging({ projectId: 'smodin-dev' })

   const logSet = gcpLogger.log(name)
   const metadata = {
      severity: 'INFO',
      resource: { 
         type: 'cloud_run_revision', 
         labels: { service_name: 'my-service', location: 'us-east1' } 
      },
   }
   const entry = logSet.entry(metadata, text)
   await logSet.write(entry)
}
 

PS: Если есть другой рекомендуемый метод, я весь внимание