0

我在 Openshift 中设置了一个 cronjob。我可以通过 Web 控制台查看其日志,但我希望在作业完成时收到一封包含作业输出的邮件。我该如何实施呢?

4

2 回答 2

1

你可以添加某事。像“mailx”到您的 cronjob 图像并转发输出。

在以下示例中,“mailgateway.default.svc”是到集群外部邮件网关的服务路由:

<output_producing_command> | mailx -E -v -s "Subject" -S smtp=smtp://mailgateway.default.svc:25 -S from="foo.bar@baz.com (Foo Bar)" abc.def@ghi.com 2>&1

-E 如果传出消息的第一个或唯一一个消息部分不包含任何文本,则不要发送它,而是静默丢弃它,在程序启动时有效地设置 skipemptybody 变量。这对于从 cron(8) 启动的脚本发送消息很有用。

于 2019-04-09T15:15:53.207 回答
1

没有用于此类报告的内置工具。您将需要实现自己的 cronjob 包装器,通过电子邮件将结果发送给您。

Kubernetes 并非设计为功能齐全的调度作业运行器,cron 作业只是后来添加的 API 扩展之一,它仍处于测试阶段。

于 2019-04-08T16:03:06.227 回答