【问题标题】:How to line break in a Maximo automation script print statement如何在 Maximo 自动化脚本打印语句中换行
【发布时间】:2019-11-21 21:58:44
【问题描述】:

您好,我正在 Maximo 中编写一个触发 cron 任务的自动化脚本。我在打印语句中插入换行符时遇到问题。我试过 '\n' & 只是在我的打印之间添加一个 print() 。两者都不起作用,我的所有打印都被打包到我的日志文件中的一行中。

【问题讨论】:

  • 您如何查看您的日志文件? \n 通常对我有用,我用 Notepad++ 查看我的日志。也许您需要使用不同的工具查看日志。
  • 我也在用notepad++
  • 我不知道这是否有帮助,但如果我转到Settings > Preferences > New Document,我的Format (Line ending) 将设置为Windows (CR LF)。另外,在Edit 菜单上,我发现了EOL Conversion 子菜单,您可能会觉得它有帮助。

标签: automation maximo


【解决方案1】:

您可以改为在 service 隐式变量上使用提供的 log() 方法来获得相同的结果。每次调用都会在您的日志文件中生成一行。 https://www.ibm.com/support/knowledgecenter/SSLLAM_7.6.0/com.ibm.mbs.doc/autoscript/r_variables_automation_scripts.html

另外,如果您想要更多地控制日志级别,您可以直接从 Logger API 获取一个记录器,它基本上是一个 Log4J 包装器:

from psdi.util.logging import MXLoggerFactory

logger = MXLoggerFactory.getLogger("maximo.integration")
logger.info("Integration logger used from automation script")

然后您可以从 Logging 应用程序控制其日志级别。

【讨论】:

  • log() 方法是否会同时显示在调试和错误日志级别的日志中?
  • @Quinn 日志级别应遵循脚本中定义的日志级别。
【解决方案2】:

使用 log() 方法将获得正确的结果。如果您还想继续使用 print 我发现 \n 只有在 Maximo 自动化脚本(如 '\r\n'

【讨论】:

    猜你喜欢
    • 2015-06-10
    • 1970-01-01
    • 1970-01-01
    • 2020-01-12
    • 2018-08-19
    • 2011-12-30
    • 2018-08-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多