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

时间:2017-01-03 08:06:37

标签: rundeck

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

有没有办法告诉Rundeck在写入这些文件时使用tail -f之类的内容来读取这些文件,并将那里出现的内容视为作业输出?

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

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

1 个答案:

答案 0 :(得分:1)

如果您只想在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'

将文件名作为参数