我制作了一个名为“ logger”的装饰器,并使用它在控制台上显示日志。
在我的python 2.7中,一切正常,但在我的python 3.7代码中,它不会在 GCP日志查看器中打印任何日志。 (我的代码已部署在GCP标准环境中)
我尝试设置此代码,但是它不起作用。
logging.getLogger().setLevel(logging.INFO)
这是我简单的记录器装饰器
def logger(func):
def wrapper(*args, **kwargs):
logging.info('INSIDE %s PARAMETERS: %s', func.__name__, args)
res = func(*args, **kwargs)
logging.info('OUTSIDE %s OUTPUT: %s', func.__name__, res)
return res
return wrapper
即使简单的logging.info
语句也不起作用。
我已经尝试了所有日志记录功能,但是在GCP日志查看器中没有打印任何内容。
logging.info("Text info")
logging.debug("Text debug")
logging.warning("Text warning")
logging.error("Text error")
logging.critical("Text critical")
这是日志查看器
答案 0 :(得分:0)
我将以下应用程序部署到App Engine:
在FROM golang:1.10.1-alpine3.7 AS build
RUN apk add --no-cache git
RUN go get github.com/golang/dep/cmd/dep
WORKDIR /go/src/<path_to_workdir>
RUN dep ensure -vendor-only
WORKDIR /cmd/data-server
ENV SRC_DIR=/go/src/<path_to_src_dir>
ADD . $SRC_DIR
RUN cd $SRC_DIR; go build -o data; cp data /cmd/data-server
ENTRYPOINT ["./data", "--scheme http"]
中:
运行时:python37
在app.yaml
中:
requirements.txt
在Flask==1.0.2
中:
main.py
在请求后查看应用程序的Stackdriver日志时,看到了预期的from flask import Flask
import logging
logging.getLogger().setLevel(logging.INFO)
app = Flask(__name__)
@app.route('/')
def hello():
logging.info("Text info")
logging.debug("Text debug")
logging.warning("Text warning")
logging.error("Text error")
logging.critical("Text critical")
return 'Hello World!'
,INFO
,WARNING
和ERROR
日志消息。
您是否可能正在其他地方寻找日志?在App Engine控制台中,您可以转到
服务> [您的服务]> 诊断> 工具> 日志
查找您的服务日志。