在Python中,如果使用logging模块,可以将其配置为将日志写入stdout/控制台、文件等。
问题是,您可能希望监视日志而不阻止其他事情的执行。你想看到他们成长,而你却在经营其他事情。
在Linux中,您通常打开另一个控制台并使用# tail -f file.log并观察它的增长,即使在混合中添加其他工具时也是如此。
在科拉布。这可不容易。
我将在这里抛出一些想法,这样就可以找到问题,并且可以添加更好的答案。
你可以:
ngrok的netcat连接,并从本地计算机使用netcat (nc)读取管道tail -f file.log。检查。
问:您最喜欢的读取Colab内部和/或外部日志的方法是什么?
发布于 2022-02-10 12:30:50
在Colab中打开ssh,并像以前一样做
tail -f file.log。
这个选项非常舒适,因为您可以调整本地控制台窗口的大小,并将其移动到Colab之外。
多亏了一些人,现在真的很容易到达那里。
在手机上运行这个。代码来自here。
# Install colab_ssh
!pip install colab_ssh --upgrade
from colab_ssh import launch_ssh
launch_ssh('YOUR_NGROK_AUTH_TOKEN', 'SOME_PASSWORD')这将输出类似于( 2022-02-10)的内容。
Collecting colab_ssh
Downloading colab_ssh-0.3.27-py3-none-any.whl (26 kB)
Installing collected packages: colab-ssh
Successfully installed colab-ssh-0.3.27
Warning: Due to some issues with ngrok on Google Colab, reported in the issue https://github.com/WassimBenzarti/colab-ssh/issues/45,
we highly recommend that update your code by following this documentation https://github.com/WassimBenzarti/colab-ssh#getting-started
Successfully running X.tcp.ngrok.io:12345
[Optional] You can also connect with VSCode SSH Remote extension using this configuration:
Host google_colab_ssh
HostName X.tcp.ngrok.io
User root
Port 12345现在,在您的本地计算机(或任何您想要的地方)上,打开一个控制台并键入。
ssh -p 12345 root@X.tcp.ngrok.io
在那之后,你在科拉布,你可以做。
tail -f /content/file.log
看着它生长。

在一些不活动之后,连接可能会关闭。
由于主机更改频繁,使用RSA密钥避免输入密码似乎不是一个好的解决方案。
所以您可能想要安装sshpass
# sudo apt-get install sshpass因此,在断开连接后,您可以简单地重用连接的命令。
# sshpass -p <PASSWORD> ssh -p <PORT> root@X.tcp.ngrok.iohttps://stackoverflow.com/questions/71064915
复制相似问题