我按照这个指南https://firebase.google.com/docs/hosting/cloud-run来设置cloud run docker。 然后我尝试按照这个指南执行一个简单的日志。正在尝试将结构化日志写入标准输出 这是我的代码:
trace_header = request.headers.get('X-Cloud-Trace-Context')
if trace_header:
trace = trace_header.split('/')
global_log_fields['logging.googleapis.com/trace'] = "projects/sp-64d90/traces/" + trace[0]
# Complete a structured log entry.
entry = dict(severity='NOTICE',
message='This is the default display field.',
# Log viewer accesses 'component' as jsonPayload.component'.
component='arbitrary-property',
**global_log_fields)
print(json.dumps(entry))
我无法在云日志查看器中看到此日志。每次我调用docker时都会看到HTTPGET日志。 我遗漏了什么吗?我是新手,想知道如果我创建的docker完全按照指南中的步骤(https://firebase.google.com/docs/hosting/cloud-run)创建,那么记录信息和查看信息的简单方法是什么
谢谢
#对于Python/Java
使用“GoogleCloudLogging”模块是将容器日志推送到Stackdriver日志的最简单方法。配置GoogleCloud日志记录以使用python的默认日志记录模块
现在您应该在Cloud Run Revision下的Stackdriver日志中看到此日志
我遇到了完全相同的问题。我确实发现,刷新stdout会导致日志出现,否则它不会出现。看起来像是云中的一只虫子
Output with flushing
将Google云平台日志集成到Python代码中的一个简单方法是从
logging.StreamHandler
创建一个子类。通过这种方式,日志记录级别也将与谷歌云日志记录级别相匹配,使您能够根据严重性进行过滤。此解决方案也适用于云运行容器您还可以将此处理程序添加到任何现有记录器配置中,而无需更改当前日志代码
配置和使用处理程序的方法可以是:
相关问题 更多 >
编程相关推荐