Edwin-wu / alb-log-parser

use AWS Lambda to parse the log file of application load balancer
MIT License
2 stars 1 forks source link

BUG 获取 ES_ENDPOINT 返回None #2

Open Allen-yan opened 3 years ago

Allen-yan commented 3 years ago

ES_ENDPOINT=$(aws es describe-elasticsearch-domain --domain-name $ES_DOMAIN_NAME --query "DomainStatus.Endpoint" --output text) 我看了下返回的是这样的结构 "Endpoints": { "vpc": "vpc-gk-elb-es-6oh6puqo4xysheqxfxgeotfjwi.ap-northeast-2.es.amazonaws.com" },

所以拿到的是None

Edwin-wu commented 3 years ago

我在readme部分有说明,这个sample的 bash 脚本是针对公开访问的 ES 而不是放在 VPC 内的 ES 集群设计的,所以这个步骤会有所区别。另外,你的ES是建在首尔的,我的这个脚本是针对中国两个 region 的。所以如果你有兴趣,可以手工配置整个过程,Lambda 代码在国内和海外都通用的。

Allen-yan commented 3 years ago

我已经自己稍微修改了脚本,过程都跑通了,不过ES 里面还是没有日志。主要是看不到运行过程,及日志不知道啊错在哪里,有没有什么debug 手段

Edwin-wu commented 3 years ago

建议你可以看一下 S3 存储桶是否已经配置好了触发Lambda的参数,debug主要是在Lambda的界面点选Cloudwatch监控,进入Cloudwatch logs去看 Lambda 的运行日志

yueminspb commented 3 years ago

改为 ES_ENDPOINT=$(aws es describe-elasticsearch-domain --domain-name $ES_DOMAIN_NAME --query "DomainStatus.Endpoints" --output text)

Endpoint 改为 Endpoints 就可以了