日志未写入文件

时间:2018-08-18 10:58:50

标签: python flask

我想将日志写入文件。文件正在创建,但是什么也没有写入文件。 我的代码是:

app = Flask(__name__)
formatter = logging.Formatter("[%(asctime)s] {%(pathname)s:%(lineno)d} %(levelname)s - %(message)s")

handler = RotatingFileHandler('/var/log/httpd/myfile.log', maxBytes=100000, backupCount=10)
handler.setLevel(logging.INFO)
handler.setFormatter(formatter)
logger = logging.getLogger("__init__")
logger.setLevel(logging.INFO)
logger.addHandler(handler)

@app.route('/api/urlname', methods=['GET'])
def api_url():
    logger.info("----- REST API is called -----")
    ....
    .....


if __name__ == '__main__':
   app.run()

调用 / api / urlname 时,代码正在执行并获得结果,但看不到任何登录文件。 我已授予 myfile.log 的完全许可,例如:sudo chmod -R 777 myfile.log。

您能告诉我我做错了什么,为什么日志没有写入文件中?

1 个答案:

答案 0 :(得分:3)

您应该将setLevel(logging.info)都更改为setLevel(logging.INFO),因为logging.info是一个函数,而logging.INFO是一个整数(在本例中为20),代表信息的日志记录级别记录。