我正在测试在 Ubuntu Web 服务器上的 Docker 容器中运行 python 脚本。我正在尝试查找 Python Logger 模块生成的日志文件。下面是我的 Python 脚本
import time
import logging
def main():
logging.basicConfig(filename="error.log", level=logging.DEBUG)
start_time = time.time()
logging.debug("Program starts running at %d", start_time)
i = 0
while i < 1000:
print(i)
i += 1
while_time = time.time() - start_time
logging.debug("Program ends running at %d", while_time)
start_time = time.time()
logging.debug("Program starts running at %d", start_time)
for x in range(0, 100):
print(x)
if_time = time.time() - start_time
print('While took - %s Seconds' % while_time )
print('If took - %s Seconds' % if_time )
logging.debug("Program ends running at %d", start_time)
main()
Run Code Online (Sandbox Code Playgroud)
我搜索发现Docker文件在/var/lib/docker/container/{con_id}/{con_id}.log
这个日志文件中生成json格式的日志文件只包含stdout,我找不到Python生成的日志文件。有什么办法可以检索文件。
Zei*_*zar 10
您指定的文件'error.log'中的命令logging.basicConfig(filename="error.log", level=logging.DEBUG)用于logger把你登录到。该文件位于您的容器内,由于容器是无状态的,您必须将日志文件挂载到本地计算机的某个位置,以便在关闭容器电源后进行访问。您可以阅读本文以获取更多信息。
顺便说一句,如果你想在日志文件已经启动时访问它,你可以使用execdocker 的选项通过容器创建一个交互式 shell 并找到日志:
docker exec -it ${container_name}
Run Code Online (Sandbox Code Playgroud)
本文档将有助于exec命令行选项。
| 归档时间: |
|
| 查看次数: |
14922 次 |
| 最近记录: |