Azure Hdinsight 上的“500 内部服务器错误”Apache notebook Zeppelin
"500 Internal Server Error" Apache notebook Zeppelin on Azure Hdinsight
我正在尝试在 Azure HDInsight 中编写一个 spark 应用程序(在 scala 中)以使用正则表达式从日志行中提取信息。
正则表达式是这样的:
val patt1="""(?:(\w+) (\w+) (\d+) (\d+):(\d+):(\S+) (\w+) \[([^]]+)\] \((.*)\) - \[(\w+)\](?:\[(\w+)\])?\[(\w+)\]\[(\w+)\]\[\w+\]\[([^]]+)\](?:.*\[(.+)\]}))""".r
模式是正确的,因为如果我使用 Jupyter notebook,或者在 eclipse 中本地工作,一切正常,我能够从日志中提取数据。
问题是当我尝试使用 Zeppelin notebook 而不是 Jupyter 将 patt1 写成字符串(没有 .r)时给我这个奇怪的错误:
500 Internal Server Error
我之前也尝试导入 scala.util.matching.Regex 来构建正则表达式,但错误是一样的。我认为三重引号或齐柏林飞艇不允许的格式有些东西,但我不明白是什么。任何人都可以帮助我吗?我想使用 Zeppelin 而不是 Jupyter,因为我认为可以更好地可视化 sparksql 查询。
但是如果我尝试将一个简单的模式写成 patt= """abc.*""".r
就没有错误。
编辑:我尝试了几次在 Zeppelin 中编写正则表达式,似乎问题在于将组捕获为 (\d) (\w) 等。Zeppelin scala interpret(Livy) 不接受它们。
但相同的正则表达式在 jupyter 中完美运行。
我是 scala 的新手,也许我很想念一些东西 ease.Please 帮助我
已解决:我刚刚将所有 \
替换为 \
并且效果很好。
似乎 Livy interpeter 在 scala 正则表达式中不接受单个 \
但接受 \
然后转换为 \
.
我正在尝试在 Azure HDInsight 中编写一个 spark 应用程序(在 scala 中)以使用正则表达式从日志行中提取信息。 正则表达式是这样的:
val patt1="""(?:(\w+) (\w+) (\d+) (\d+):(\d+):(\S+) (\w+) \[([^]]+)\] \((.*)\) - \[(\w+)\](?:\[(\w+)\])?\[(\w+)\]\[(\w+)\]\[\w+\]\[([^]]+)\](?:.*\[(.+)\]}))""".r
模式是正确的,因为如果我使用 Jupyter notebook,或者在 eclipse 中本地工作,一切正常,我能够从日志中提取数据。
问题是当我尝试使用 Zeppelin notebook 而不是 Jupyter 将 patt1 写成字符串(没有 .r)时给我这个奇怪的错误:
500 Internal Server Error
我之前也尝试导入 scala.util.matching.Regex 来构建正则表达式,但错误是一样的。我认为三重引号或齐柏林飞艇不允许的格式有些东西,但我不明白是什么。任何人都可以帮助我吗?我想使用 Zeppelin 而不是 Jupyter,因为我认为可以更好地可视化 sparksql 查询。
但是如果我尝试将一个简单的模式写成 patt= """abc.*""".r
就没有错误。
编辑:我尝试了几次在 Zeppelin 中编写正则表达式,似乎问题在于将组捕获为 (\d) (\w) 等。Zeppelin scala interpret(Livy) 不接受它们。 但相同的正则表达式在 jupyter 中完美运行。 我是 scala 的新手,也许我很想念一些东西 ease.Please 帮助我
已解决:我刚刚将所有 \
替换为 \
并且效果很好。
似乎 Livy interpeter 在 scala 正则表达式中不接受单个 \
但接受 \
然后转换为 \
.