我在哪里可以导出AWS Cloudwatch日志(用于Loggly)?

时间:2014-09-24 17:06:09

标签: logging amazon-web-services amazon-s3 amazon-cloudwatch loggly

我知道他们正在某处存放它们。也许是DynamoDB或S3存储桶?

我想将Cloudwatch用作我的EC2实例的日志存档,并进行设置,以便将它们传递给Loggly进行查看/排序等。

我知道Loggly最近发布了一种从S3存储桶中获取日志的方法(https://www.loggly.com/docs/s3-logs/),但我似乎无法在AWS端找到这些日志的来源。

到目前为止,我的想法是:

  • 也许我可以设置一个度量标准/警报来将所有传入的日志传递给Loggly?
  • 我可以访问AWS存储这些Cloudwatch日志的位置吗?
  • 在某个地方设置一个cron,将Cloudwatch日志反弹到S3存储桶,并从那里开始?
  • 在cron中使用Cloudwatch API调用直接获取日志并通过HTTP帖子等发送给Loggly。

4 个答案:

答案 0 :(得分:2)

我通过设置触发Lambda函数的日志组的订阅来完成此操作。该函数转换日志数据并将其作为.log文件写入S3,或将记录发送到Kinesis Firehose进行收集,然后作为存档发送到S3。

如果您尝试执行类似操作,可以结帐full writeupLambda Function

答案 1 :(得分:0)

似乎Loggly不支持类似的服务。

根据Loggly Log File Monitoring Options,您有以下选择:

    • 使用cronjob设置新实例,以将日志从S3同步到本地磁盘。
    • 设置rsyslog服务并将此日志文件发送给Loggly。
  1. curl -X POST -T FILE.TXT https://logs-01.loggly.com/bulk/TOKEN/tag/file_upload

  2. 问候。

答案 2 :(得分:0)

此API可让您将数据导出到S3,但是请注意它的历史数据不是实时的......最多几个小时的数据将无法导出,因此对于每日摘录最有用: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/S3Export.html

对于实时投放,您需要使用订阅API: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/Subscriptions.html

答案 3 :(得分:0)

自从问了这个问题以来,Loggly添加了对Cloudwatch Logs的支持。它使用Lambda函数,可能类似于上面@Michael的解决方案。

https://www.loggly.com/docs/cloudwatch-logs/