在 S3 事件模式下抓取不是 运行

Crawl is not running in S3 event mode

当 运行 一个指向 S3 的 AWS Glue 爬虫时,CloudWatch 中的第二个日志条目总是:

Crawl is not running in S3 event mode

什么是 S3 事件模式?

这个名字听起来像是让 S3 在每个对象上传到前缀后调用 Glue 进行部分爬网的某种方式。但据我所知,这样的功能并不存在。那么这个日志条目指的是什么?

我在 Glue documentation was event based triggers for Glue jobs 中找到的最接近的东西,但 Glue Jobs 与 Glue Crawlers 不同。

重现步骤

  1. 创建胶水爬虫。选择任何配置。将其指向具有任何数据集(即使是空数据集)的任何 S3 存储桶中的任何位置
  2. 运行 爬虫。抓取失败成功无所谓
  3. 打开该爬网的日志
  4. 查看第二个日志条目
2021-07-01T20:04:39.882+10:00
[6588c8ba-57e2-46e3-94b4-1bc4dfc5957d] BENCHMARK : Running Start Crawl for Crawler my-crawler
2021-07-01T20:04:40.200+10:00
[6588c8ba-57e2-46e3-94b4-1bc4dfc5957d] INFO : Crawl is not running in S3 event mode

我遇到了同样的问题,我在这篇文章中找到了解决方案https://www.linkedin.com/pulse/my-top-5-gotchas-working-aws-glue-tanveer-uddin/

简而言之,解决方案是在我的存储桶名称之前添加 aws-glue-。因此,例如,试图让爬虫通过名为 test-bucket 的存储桶是行不通的,但如果我将名称更改为 aws-glue-test-bucket 则可以工作。

AWS Support 给了我答案。

S3 事件模式是 AWS 内部可用的功能。正如我所怀疑的那样,这意味着 S3 会为每个文件上传触发爬虫爬网。但是目前public没有这个功能。