调试我的spark笔记本时,我想了解更多信息。我找到了一些日志文件:
!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
哪些应用程序会记录到这些文件以及将哪些信息写入这些文件?
答案 0 :(得分:3)
调试笔记本时,kernel-*-*.log
文件是您正在寻找的文件。
按逻辑顺序......
bootstrap-*.log
。每个开始一个文件,时间戳表示发生的时间。包含启动脚本的输出,初始化用户环境,创建内核规范,准备Spark配置等。
bootstrap-*_allday.log
包含当天每个服务开始和停止的记录。
jupyter-*.log
包含Jupyter服务器的输出。完成bootstrap-*.log
的初始化后,将启动Jupyter服务器。创建此文件时的那个。当笔记本内核启动或停止时,以及保存笔记本时,您将看到日志条目。
monitor-*.log
包含从服务启动的监视脚本的输出。监视脚本必须检测Jupyter服务器正在侦听的端口。之后,它会密切关注服务活动,并在服务空闲时间过后关闭服务。
kernel-*-*.log
包含笔记本内核的输出。每个内核都获得一个单独的日志文件,时间戳指示内核何时启动。文件名中的第二个单词表示内核的类型。
spark*-ego.log
包含Spark作业调度的输出。虽然笔记本内核空闲,但监视脚本使用它来检测Spark是否处于活动状态。
logs-*.tgz
包含相应日期的归档日志。几天后它们会自动删除。
答案 1 :(得分:1)
使用最近启用的"环境"在DSX中,日志已移至目录/var/pod/logs/
。您仍会看到当前会话的kernel-*-*.log
和jupyter-*.log
个文件。但是,它们对调试无用。
在Spark as a Service后端,每个内核都有一个Spark驱动程序进程,该进程会记录到kernel-*-*.log
文件。环境功能没有Spark,内核本身不会为日志文件生成输出。