繁体   English   中英

我可以让Rundeck读取远程节点上的日志文件作为作业输出吗?

[英]Can I make Rundeck read a log file on the remote node as job output?

我正在使用Rundeck通过SSH执行程序运行远程作业。 我运行的一些作业记录到主机上的特定文件,而不是STDOUT,我没有能力更改它。

是否有任何方法可以告诉Rundeck在编写这些文件(使用tail -f类的东西)时读取这些文件,并将那里出现的内容视为作业输出?

添加tail -f本身作为一个步骤是行不通的,因为它永远不会终止。

如果需要,可以使用“hacky”解决方案(比如为复制和读取日志添加额外的工作步骤),但理想情况下我希望它更整洁。 所以如果你能给我一些指导如何构建一个插件,将文件名作为参数并从那里读取输出,那就更好了。

如果您只想在STDOUT上读取和打印文件,那么只需使用此内联脚本作为工作流程中的附加步骤。

#!/usr/bin/python
import os,sys
file_name=sys.argv[1]
if os.path.isfile(file_name):
    with open(file_name) as file:
        for line in file:
            print line
else:
    print 'file doesnt exists'

将文件名作为参数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM