amazon-web-services - 重播发送到 Lambda 的 Cloudwatch 日志
问题描述
我有一个订阅了许多 cloudwatch 日志组的 lambda,用于处理/索引/分析这些日志。
一切正常,但我想用这个 lambda 重播大量旧日志。我试图通过aws logs get-log-events
CLI 获取日志来做到这一点,但由于数据的结构方式,我找不到一种简单的方法来做到这一点。
首先,使用 json 中的编码/gzip blob 调用 lambda,{"awslogs": {"data": "H4sIAAAAAAA ....
我可以轻松管理它,但 blob 本身应该以这种方式构造:
{
"messageType": "DATA_MESSAGE",
"owner": "...",
"logGroup": "/aws/lambda/...",
"logStream": "2019/08/02/[$LATEST]...",
"subscriptionFilters": [
"..."
],
"logEvents": [
{
"id": "34402224585553617062605662326569493632889831387406598144",
"timestamp": 1564703999832,
"message": "..."
},
...
的输出aws logs get-log-events
远不及这个结构。我可以尝试自己重建它,但这会很乏味。并且缺少一些字段(例如。logEvents.id
)
我是否错过了将日志重播到我的 lambda 的其他更简单的方法?
解决方案
推荐阅读
- javascript - 在 React 中渲染后执行一个函数
- mysql - 使用 group_by 将第一个创建记录的标识符添加到 select 语句
- python - 如何解决问题:没有名为“google.protobuf.reflection”的模块
- shell - 在 shell 脚本上选择一个模式之前和之后的一个单词(连字符是模式)
- node.js - const io = require('socket.io') 是表达式不可调用
- json - 解析 json 对象显示未定义
- spring-boot - 如果我的 kafka 消费者组在每次重启后都改变了会发生什么
- amazon-web-services - AWS DynamoDB 到 S3 每小时备份
- sql - oracle:用斜杠格式化数字
- javascript - IE 不支持箭头函数 (=>)