Дублирующиеся записи журнала, ведение журнала в облаке Google на stackdriver в функции облака Google с использованием python - PullRequest
0 голосов
/ 04 августа 2020

Я пытаюсь прикрепить обработчик ведения журнала к регистратору Python root в моей облачной функции. Я использую приведенный ниже код:

    import logging
    import os
    import google.cloud.logging
    from google.cloud.logging.handlers import CloudLoggingHandler, setup_logging
    
    logLabels = {'ServerName' : os.uname().nodename}
    logging_client = google.cloud.logging.Client()
    handler = CloudLoggingHandler(logging_client,name='my-test-cf',labels=logLabels)
    logging.getLogger().setLevel(logging.INFO)
    setup_logging(handler, excluded_loggers=('google.cloud', 'google.auth', 'google_auth_httplib2'))
    logging.info(f"Starting Execution of My Test CF")

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

  1. информация -> Начало выполнения моего теста CF
  2. ошибка -> Начало выполнения моего теста CF

Любые предложения будут большим подспорьем. Спасибо. введите описание изображения здесь

1 Ответ

0 голосов
/ 04 августа 2020

Сначала вам нужно настроить ведение журнала для отправки всех запросов журнала в Cloud Logging, подключив обработчик Cloud Logging к Python Root регистратору.

import google.cloud.logging
client = google.cloud.logging.Client()
client.get_default_handler()
client.setup_logging()

После подключения обработчика любой журналы (по умолчанию INFO), которые создаются в вашем приложении, будут отправлены в журнал.

import logging
logging.info(f"Starting Execution of My Test CF")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...