【问题标题】:Sending log from springboot application to cloudwatch in fargate instance将日志从 Spring Boot 应用程序发送到 Fargate 实例中的 CloudWatch
【发布时间】:2020-01-09 12:51:45
【问题描述】:

我们需要在 log4j2.xml 中为 cloudwatch 配置 appender。
我们正在使用 ECS 集群和 Fargate 实例。
用例是我们需要根据业务日志类型将来自同一应用程序的不同日志组中的日志分类。有办法使用多个记录器将日志发送到不同的文件,但我们如何为云手表做同样的事情。
有一些为此编写的库,但我们是否有一些 AWS cloudwatch 日志附加器,可以在 log4j2.xml 中使用。请帮忙

【问题讨论】:

    标签: spring-boot log4j2 amazon-cloudwatch aws-fargate


    【解决方案1】:

    我们默认使用 Spring Boot 日志记录并将输出发送到控制台。这也适用于非 Spring Boot。然后使用 CloudFormation 在TaskDefinitionLogGroups 中配置日志。您可以在控制台中使用 TaskDefinition 执行类似操作,并单独创建 CloudWatch 日志。

    Resources:
      .
      :
      TaskDefinition:
        .
        :
        Properties:
          .
          :
          ContainerDefinitions:
           - Name:
             Image:
             .
             :
             LogConfiguration:
               LogDriver: awslogs
               Options:
                 awslogs-region: !Ref 'AWS::Region'
                 awslogs-group: !Ref LogGroup
                 awslogs-stream-prefix: ecs
    
      LogGroup:
        Type: 'AWS::Logs::LogGroup'
        Properties:
          LogGroupName: !Sub ${ServiceName}
      AccessLogGroup:
        Type: AWS::Logs::LogGroup
        Properties:
          LogGroupName: !Sub ${ServiceName}-api-access-logs
          RetentionInDays: 7
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-03
      • 1970-01-01
      • 2016-11-07
      • 1970-01-01
      • 2020-02-27
      • 2020-01-25
      • 1970-01-01
      相关资源
      最近更新 更多