首页 > 解决方案 > 如何在特殊环境中运行 aws logconfiguration 或 logGroup

问题描述

我有三个环境“dev”,“int”,“prod”。但现在我只想让“dev”和“int”使用 logStream,你如何设置它。我在logGroup、loStream、logConfiguration中没有找到“启用”的设置属性。并且在 logConfiguration 中也无法使用 Condition。那么,如何解决这个问题。

Resources:

  LogGroup:
    Type: AWS::Logs::LogGroup
    Properties:
      LogGroupName: logGroup
      RetentionInDays: 7

  LogStream:
    Type: AWS::Logs::LogStream
    Properties:
      LogGroupName: !Ref LogGroup
      LogStreamName: log-stream

  ECSTaskDefinition:
    Type: AWS::ECS::TaskDefinition
    Properties:
      Family: family
      NetworkMode: awsvpc
      TaskRoleArn: ECSTaskRole
      ExecutionRoleArn: ECSExecutionRole
      Cpu: !FindInMap [ EnvMap, Ref: Environment, TaskCpu ]
      Memory: !FindInMap [ EnvMap, Ref: Environment, TaskMemory ]
      Volumes:
        - Name: "logs"
      RequiresCompatibilities:
        - "FARGATE"
      ContainerDefinitions:
        - Name: MySercvice
          Image: Image
          MountPoints:
            - SourceVolume: "logs"
              ContainerPath: "/var/logs/"
          Environment:
            - Name: "SPRING_PROFILES_ACTIVE"
              Value: !FindInMap [ EnvMap, Ref: Environment, SpringActiveProfile ]
          PortMappings:
            - ContainerPort: 440
              HostPort: 440
          Secrets:
            - Name: "REDENTIAL_PASSWORD"
              ValueFrom: !ImportValue test-credential-arn
          LogConfiguration:
            LogDriver: awslogs
            Options:
              awslogs-region: !Ref "AWS::Region"
              awslogs-group: !Ref LogGroup
              awslogs-stream-prefix: testPrefix

标签: amazon-ecs

解决方案


推荐阅读