感谢您的提问!
看起来您正在正确记录跟踪,但您的 logName 表明您没有使用 stdout 或 stderr。如果您将其中之一用于您的日志,它们将正确关联,如下所示:
StackDriver 日志截图
可以看到 logName 以 stdout 结尾。标准输出或标准错误将相关。您可以按照教程中的此处所示创建它:
# Build structured log messages as an object.
global_log_fields = {}
# Add log correlation to nest all log messages
# beneath request log in Log Viewer.
trace_header = request.headers.get('X-Cloud-Trace-Context')
if trace_header and PROJECT:
trace = trace_header.split('/')
global_log_fields['logging.googleapis.com/trace'] = (
f"projects/{PROJECT}/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))
编辑:
要过滤掉标准输出并仅在堆栈驱动程序 UI 中看到请求日志,您可以从过滤器中取消选择标准输出。 日志过滤器
有关使用 python 客户端 API 的示例,请参阅本文和附加的示例 Flask 应用程序。 在 Google Stackdriver 中组合相关的日志行