Предоставление resource
аргумента для CloudLoggingHandler
класса не работает, то есть он не может войти в систему stackdriver
.Если я прокомментирую resource
, он работает нормально.Я также попробовал простой скрипт на Python, который не работает в Django, он тоже работал нормально.
Это мои настройки обработчика Django LOGGING:
'handlers': {
'stderr': {
'class': 'google.cloud.logging.handlers.CloudLoggingHandler',
'name': "name",
'resource': Resource(
type="container",
labels={
...
},
),
'client': google.cloud.logging.Client()
},
},
Нет resource
, нет проблем:
'handlers': {
'stderr': {
'class': 'google.cloud.logging.handlers.CloudLoggingHandler',
'name': "name",
'client': google.cloud.logging.Client()
},
},
Также работает простой скрипт:
import logging
import google.cloud.logging # Don't conflict with standard logging
from google.cloud.logging.handlers import CloudLoggingHandler, setup_logging
from google.cloud.logging.resource import Resource
client = google.cloud.logging.Client()
logging.getLogger().setLevel(logging.INFO) # defaults to WARN
res = Resource(
type="container",
labels={
...
},
)
handler = CloudLoggingHandler(client, name='name', resource=res)
setup_logging(handler)
logging.error('logging!')
Я использую google-cloud-logging
версия 1.10.0
.Может кто-нибудь дать несколько советов по отладке stackdriver
logging?