diff --git a/modules/almond-spark/src/main/scala/org/apache/spark/sql/almondinternals/NotebookSparkSessionBuilder.scala b/modules/almond-spark/src/main/scala/org/apache/spark/sql/almondinternals/NotebookSparkSessionBuilder.scala index bc93ebd..15b8d56 100644 --- a/modules/almond-spark/src/main/scala/org/apache/spark/sql/almondinternals/NotebookSparkSessionBuilder.scala +++ b/modules/almond-spark/src/main/scala/org/apache/spark/sql/almondinternals/NotebookSparkSessionBuilder.scala @@ -83,7 +83,17 @@ class NotebookSparkSessionBuilder(implicit val session = super.getOrCreate() - for (url <- session.sparkContext.uiWebUrl) + val reverseProxyUrlOpt = session.sparkContext.getConf.getOption("spark.ui.reverseProxyUrl") + .filter { _ => + session.sparkContext.getConf.getOption("spark.ui.reverseProxy").contains("true") + } + val uiUrlOpt = reverseProxyUrlOpt + .map { reverseProxyUrl => + val appId = session.sparkContext.applicationId + s"$reverseProxyUrl/proxy/$appId" + } + .orElse(session.sparkContext.uiWebUrl) + for (url <- uiUrlOpt) html(s"""Spark UI""") session.sparkContext.addSparkListener(