保存"事件的最佳方式" AWS上的数据

时间:2016-08-11 13:32:14

标签: amazon-web-services

我在AWS上运行了一个应用程序,我需要保存每个"事件"在一个文件中。 一个"事件"例如,当用户登录到应用程序时。当发生这种情况时,我需要将此信息保存在文件中(可能需要保存时间戳和会话ID)

我希望有很多活动(每月一百万的订单),我想知道最好的方法是什么。

我想在S3上写,但我想我无法附加到现有文件。

另一种选择是重定向"事件"标准输出,但不是最聪明的解决方案。

有什么想法吗?此外,这需要在python中完成。

2 个答案:

答案 0 :(得分:0)

有很多选项,您的选择将取决于以下因素:

  • 这些事件的规模。
  • 您愿意承担的费用。
  • 你打算如何消费它们。

选项:

  • 将每个事件记录到Kinesis Firehose流中,然后根据您的配置将数据转储到S3或Redshift中。
  • 设置Elasticsearch群集。将所有事件记录在磁盘上的文件中,并使用Logstash将这些事件异步推送到集群中。
  • 创建一个DynamoDB表,并在每行记录一个事件。

答案 1 :(得分:0)

使用CloudWatch Logs,您可以export the logs to S3。您可以使用CloudWatch Logs agent将应用程序日志文件发送到CloudWatch。