[我想在部署期间脚本失败时从我的Amazon EC2实例中获取CodeDeploy日志,然后在BitBucket管道中显示日志。
我该怎么做?是否有任何API可用于从CodeDeploy提取日志?
我不确定BitBucket,但是在AWS上,您可以使用CloudWatch Logs代理[1]将日志从CodeDeploy代理推送到CloudWatch Logs。一旦进入CloudWatch Logs,您将创建一个指标过滤器,以在日志条目[2]中出现某些特定文本时发出警报。
CodeDeploy代理日志文件的位置是:
LINUX *** /opt/codedeploy-agent/deployment-root/deployment-group-ID/deployment-ID/logs/scripts.log *** /var/log/aws/codedeploy-agent/codedeploy-agent.log *** /tmp/codedeploy-agent.update.log WINDOWS *** C:\ProgramData\Amazon\CodeDeploy\log\codedeploy-agent-log.txt *** C:\ProgramData\Amazon\CodeDeploy\deployment-group-ID\deployment-ID\logs\scripts.log *** C:\ProgramData\Amazon\CodeDeployUpdater\log\codedeploy-agent.updater.log
参考:
[1]快速入门:启用运行Windows Server 2016的Amazon EC2实例,以使用CloudWatch Logs代理将日志发送到CloudWatch Logs-https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/QuickStartWindows2016.html
[2] https://theithollow.com/2017/12/11/use-amazon-cloudwatch-logs-metric-filters-send-alerts/