如何解决Try-Except Python Block阻止Jenkins显示任何输出
我有一个python脚本,它是Jenkins作业的一部分,该脚本的目的是经过一个for循环并为每一项完成不同的任务,如果一项失败,则应转到下一项,因此为什么会有一个试写为:
library(shiny)
library(DT)
ui <- fluidPage(
DTOutput("example_table")
)
server <- function(input,output,session) {
new_data <- data.frame(cola = c("fsdfdsgfsdgfdgfdgfdgdhgdgd<br>fgdfgsfsgsfgsfdgfdgdfgfdgsfgfgfdgdd","fsgfdgfdgdfsdfgdfgdhdfgsdf<br>sdfgfgdhdhfghfghfghsdfs"),b=c(1,2))
output$example_table <- DT::renderDT({
datatable(new_data,escape = FALSE)
})
}
shinyApp(ui,server)
此try-except已添加到主要功能中。该脚本有许多显示状态的打印语句,但是,每当添加try-except时,在管道运行时,Jenkins Blue Ocean都不会显示任何内容。有什么我可以强迫打印的照片吗?
解决方法
由于缺少括号,我收集到您正在使用python27?如果不是,python3将在执行方括号时抛出错误。如果这又被这些 bare 异常条款(被认为是不良做法)中的另一个捕获,您将完全错过实际的异常。
continue
不是必需的,这不是我在except
子句中期望的,因为它曾经使回路短路。在打印语句之后,实际上不需要执行任何操作。
try:
# ~some code~
except Exception as e:
print(e)
如果这不起作用,则可以考虑切换到日志记录库。这会将日志记录配置为默认情况下输出到STD OUT。
import logging
logger = logging.getLogger(__name__)
try:
# ~some code~
except Exception as e:
logger.warning(e)
如果这些建议不起作用,您可以安全地假设Jenkins正在以某种方式获取输出?
,tryexcept块应该在for循环语句中。
for i in range(x):
try:
#your code
except Exception as e:
print e
continue
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。