我正在使用我的Google App Engine(GAE)应用程序写入日志,但我无法找到它存储的位置。我在Stackoverflow上阅读了很多帖子,但没有一个帖子表明在哪里可以找到它。我正在使用Gradle和IntelliJ在IntelliJ中运行我的应用程序。
答案 0 :(得分:1)
日志不存储在纯文本文件中,它们存储为SQLite数据库。来自Local Development Server Options:
--logs_path=...
默认情况下,存储本地开发服务器的日志 仅记忆。运行本地开发时指定此选项 服务器将日志存储到文件中,这使日志可用 跨服务器重启。您必须指定目录路径和名称 到SQLite数据库文件。使用。创建SQLite数据库文件 如果文件尚不存在,则指定名称。例如:
--logs_path=/home/logs/boglogs.db
不确定内存存储,但我可以看到我的devserver写入默认的db文件,即使没有明确设置此选项(在Linux上,在PyCharm驱动的devserver的PID上使用lsof
):
$ lsof -p 22811 | grep -i log
python2.7 22811 username 4ur REG 8,3 1648899072 1705871 /tmp/appengine.<app_name>.username/logs.db
python2.7 22811 username 24u REG 8,3 3608 1712816 /tmp/appengine.<app_name>.username/logs.db-journal
$ file /tmp/appengine.<app_name>.username/logs.db
/tmp/appengine.<app_name>.username/logs.db: SQLite 3.x database
注意:以上是针对Python devserver的,Java有点不同,但在Linux上,可以使用相同的方法来识别保存日志的默认文件的位置和类型。 --generated_dir
选项可能是用于覆盖默认位置的选项。来自Command-Line Arguments:
--generated_dir=...
设置创建生成文件的目录。