3

在调试我的 spark notebook 时,我想了解更多信息。我找到了一些日志文件:

!ls $HOME/notebook/logs/

这些文件是:

bootstrap-nnnnnnnn_nnnnnn.log
jupyter-nnnnnnnn_nnnnnn.log   
kernel-pyspark-nnnnnnnn_nnnnnn.log
kernel-scala-nnnnnnnn_nnnnnn.log
logs-nnnnnnnn.tgz
monitor-nnnnnnnn_nnnnnn.log
spark160master-ego.log

哪些应用程序会记录到这些文件中,哪些信息会写入这些文件中的每一个?

4

2 回答 2

3

调试笔记本时,这些kernel-*-*.log文件就是您要查找的文件。

按逻辑顺序...

  1. bootstrap-*.log在服务启动时写入。每次开始一个文件,时间戳表示发生的时间。包含初始化用户环境、创建内核规范、准备 Spark 配置等的启动脚本的输出。

  2. bootstrap-*_allday.log对当天的每个服务启动和停止都有记录。

  3. jupyter-*.log包含来自 Jupyter 服务器的输出。初始化bootstrap-*.log完成后,将启动 Jupyter 服务器。这就是创建此文件的时间。您将在笔记本内核启动或停止以及笔记本保存时看到日志条目。

  4. monitor-*.log包含随服务启动的监视脚本的输出。监控脚本必须检测 Jupyter 服务器正在侦听的端口。之后,它会密切关注服务活动,并在服务空闲时间过长时关闭服务。

  5. kernel-*-*.log包含笔记本内核的输出。每个内核都有一个单独的日志文件,时间戳指示内核何时启动。文件名中的第二个单词表示内核的类型。

  6. spark*-ego.log包含 Spark 作业调度的输出。监控脚本使用它来检测 Spark 是否处于活动状态,尽管笔记本内核处于空闲状态。

  7. logs-*.tgz包含相应日期的归档日志。几天后它们将被自动删除。

于 2016-07-06T06:11:05.817 回答
1

借助 DSX 中最近启用的“环境”功能,日志已移至目录/var/pod/logs/。您仍将看到当前会话的kernel-*-*.logjupyter-*.log文件。但是,它们对调试没有用。

在 Spark as a Service 后端中,每个内核都有一个 Spark 驱动程序进程,该进程记录到kernel-*-*.log文件中。环境功能没有 Spark,内核本身不会为日志文件生成输出。

于 2018-02-16T13:52:17.703 回答