0

我必须在 AWS cloud-watch 中记录我的 java 服务中发生的异常

这是我的示例服务

@GetMapping(value = "/GetUrl")
    public String getURL(String key) throws FileNotFoundException
    {
        try {
            return S3client.getUrl("xxxx", "xxxx.pdf").toString();
        }
        catch (AmazonS3Exception exception){
            if(exception.getStatusCode() == 404){
                throw new FileNotFoundException(key);
            }
            else{
                throw exception;
            }
        }
    }

如果我的 catch 块执行而不是抛出异常,则必须调用类文件以在 AWS cloudwatch 中记录异常

如何实现这个功能?

我的 java 服务将部署在 AWS 实例 docker 容器中

另外,如果有人有更好的想法以其他方式实现此功能,也请提出建议

4

1 回答 1

3

通常,您只需使用标准 Java 日志记录工具记录到本地日志文件,主机上配置的CloudWatch Logs 代理会定期将这些日志消息发送到 CloudWatch Logs。

但是,如果您想直接从应用程序代码将日志发送到 CloudWatch Logs,您可以使用 AWS SDK for Java 中的CloudWatchLogsClient

于 2020-01-05T14:19:47.760 回答