首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我需要从云表日志中抓取日志,并将其加载到s3和s3到数据仓库。

我需要从云表日志中抓取日志,并将其加载到s3和s3到数据仓库。
EN

Stack Overflow用户
提问于 2017-10-09 18:57:39
回答 3查看 4.1K关注 0票数 2

我有几个lambda函数。我需要抓取从所有lambda函数生成的日志,并将其加载到我们的内部数据仓库。我想到了这些解决方案。

  1. 让一个lambda函数订阅我的lambda函数的cloudwatch日志组,并修饰和记录消息并将其推送到s3。
代码语言:javascript
复制
- Pros: Works and simple to implement. 
- Cons: There is no way for me to "replay". Say My exporter failed for some reason. I wouldn't be able to replay this action.

  1. 拥有一个lambda函数,它每10分钟左右运行一次,创建导出任务,从cloudwatch中抓取日志并将它们加载到s3。 导入logGroupName='/aws/lambda/',客户端= boto3.client('logs')响应= client.create_export_task( taskName=‘export’、fromTime=from_time、to=to_time、目的=‘< boto3 _logs>’、destinationPrefix=‘’)响应= client.create_export_task( taskName=‘exportTask’、logGroupName='/aws/lambda/',fromTime=from_time、to=to_time、目的=‘、destinationPrefix=‘ ) 第二个create_export_task在这里失败 调用LimitExceededException操作时出错( CreateExportTask ):超出资源限制。“

我不能创建多个导出任务。有办法解决这个问题吗?

EN

回答 3

Stack Overflow用户

发布于 2020-12-08 06:58:36

来自AWS文档:One active (running or pending) export task at a time, per account. This limit cannot be changed.

U可以使用以下函数检查状态是否已更改为'COMPLETED'

代码语言:javascript
复制
response = client.create_export_task(
            taskName='export_cw_to_s3',
            logGroupName='/ecs/',
            logStreamNamePrefix=org_id,
            fromTime=int((yesterday-unix_start).total_seconds() * 1000),
            to=int((today-unix_start).total_seconds() * 1000),
            destination='test-bucket',
            destinationPrefix=f'random-string/{today.year}/{today.month}/{today.day}/{org_id}')
        taskId = (response['taskId'])
        status = 'RUNNING'
        while status in ['RUNNING','PENDING']:
            response_desc = client.describe_export_tasks(
                taskId=taskId
            )

            status = response_desc['exportTasks'][0]['status']['code']
票数 4
EN

Stack Overflow用户

发布于 2018-01-08 10:37:14

遇到相同的错误消息,原因是在给定的时间,每个帐户只能有一个运行/挂起的导出任务,因此此任务失败。来自AWS文档:One active (running or pending) export task at a time, per account. This limit cannot be changed. cwl.html

票数 1
EN

Stack Overflow用户

发布于 2020-05-22 05:54:27

有时,一个createExport任务会长期处于挂起状态,从而阻止具有相同任务的其他lambda函数运行。您可以看到这个任务并取消它,允许运行其他函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46653233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档