首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >诊断FiftyOne应用程序日志或其他工具的崩溃

诊断FiftyOne应用程序日志或其他工具的崩溃
EN

Stack Overflow用户
提问于 2021-09-01 20:45:56
回答 1查看 265关注 0票数 2

我们需要使一个FiftyOne实例通过一个web浏览器对多个用户可用。我们需要启动一个进程并让它运行,甚至在我们从启动应用程序进程的会话中注销之后。

我使用以下命令启动该进程。我在码头集装箱里执行这个。容器通过AWS EC2在Ubuntu主机上运行。

代码语言:javascript
复制
$ nohup fiftyone app launch --remote > fiftyone.log 2>&1 &

如果我从终端启动此命令,它将启动允许web浏览器与FiftyOne应用程序连接的进程。这些内容在我注销后仍然存在。

然而,这些进程有时会变得不可用。例如,在运行了20多个小时后,FiftyOne在日志文件~/.fiftyone/var/lib/mongo/log/mongo.log中崩溃了如下。

(由cat ~/.fiftyone/var/lib/mongo/log/mongo.log | jq '{msg,t}'制作)

代码语言:javascript
复制
{
  "msg": "CMD fsync",
  "t": {
    "$date": "2021-09-01T15:04:24.152+00:00"
  }
}
{
  "msg": "Received signal",
  "t": {
    "$date": "2021-09-01T15:04:24.181+00:00"
  }
}
{
  "msg": "Signal was sent by kill(2)",
  "t": {
    "$date": "2021-09-01T15:04:24.181+00:00"
  }

我怎样才能得到更多关于为什么坠毁的信息?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-02 18:51:45

FiftyOne的开源版本主要是为个人用户设计的。多用户协作的最佳体验是FiftyOne团队。你可以在这里注册:https://voxel51.com/#teams-form

关于此错误的(特别是)

在后端,调用fiftyone app launch --remote实际上运行以下Python命令:

代码语言:javascript
复制
session = fo.launch_app(remote=True)
session.wait()

对于远程会话,session.wait()调用将阻塞直到有东西连接到它,然后继续阻塞直到所有已连接的选项卡关闭。

在刷新选项卡时,会内置一个超时来处理这种情况,这样会话就不会立即关闭。在某些情况下,我们注意到刷新所需的时间比超时时间长,并且会话提前关闭。这件事正在调查中。

下一个版本提供了一个会导致wait无限期阻塞的参数。您将能够调用fiftyone app launch --remote --wait 0

同时,我建议编写和调用一个小脚本(launch_app.py)来永久阻止它,直到它退出为止。

代码语言:javascript
复制
import fiftyone as fo

session = fo.launch_app(remote=True)

# Indefinite blocking
while True:
    pass
代码语言:javascript
复制
python launch_app.py
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69020388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档