linux - 如何在 AWS Lambda 中使用 cURL 和邮件

标签 linux amazon-web-services curl lambda aws-lambda

我运行一台 Linux 机器,每小时执行 50 多个以下格式的 cron 作业:

00 00 * * * /usr/bin/curl http://domain.com/page.php/reports | mail -s "domain.com report cron successful execution" email@otherdomain.com

上面的cron:

  1. curl命令的输出发送到管道
  2. 使用主题行“domain.com report cron successful execution”
  3. 将输出发送到email@otherdomain.com

我如何设置这些 cron 以与 AWS Lambda 一起使用,因为我不希望单独的服务器只用于这些 cron 作业。

如果可能的话,我可以设置 AWS SES 来处理它。

最佳答案

要安排 CRON,您应该使用 CloudWatch Events。您可以设置将触发 CloudWatch 事件的 CRON 表达式。这个事件可以反过来trigger a Lambda function .

您的 Lambda 函数可以使用 oh so great requests 进行 HTTP 调用包裹。 Lambda 部署说明 here .你也可以使用不太好用的urllib2如果您不想将 requests 与您的 Lambda 函数打包在一起,则可以将模块作为 requests 的替代方案。

至于发送电子邮件,AWS SES 将是最简单的途径。您也可以使用 email模块,尽管我从未在 Lambda 函数的上下文中使用过它。

关于linux - 如何在 AWS Lambda 中使用 cURL 和邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42022939/

相关文章:

Android AWS S3 SDK TransferUtility 在服务中不工作

c - libcurl 简单 vs 多接口(interface)

php - 我在带有 PHP 7 的 Ubuntu 16 上安装了 cURL,但我仍然调用未定义的函数 curl_init()

java - Elasticsearch 1.5 没有queryapi的curl删除

c - Linux 上的时区转换 C API,有人知道吗?

Linux 命令行 rm/*

c# - Elasticsearch:WAITING长时间运行的请求完成

c - inotify 是否同步排队事件?

linux - 补丁文件和差异文件之间的区别

amazon-web-services - 如何通过 id 获取最新的共享 AWS RDS 快照?