2017-05-10 23 views
0

クーパーネットを使用してアプリケーションドッカー画像を展開しています。ドッカーからクラウドウォッチへアプリケーションログを送信する方法

アプリケーションログを取得してクラウドウォッチにプッシュすることができます。

アプリケーションログは、マイクロサービスが構築された言語に応じてlog4jまたはlog4jsを使用して生成されます。

これを行う正しい方法は何ですか?

+0

@ jerstenこれは、EC2インスタンスで実行されているドッカーインスタンスではなく、EC2インスタンスで行う方法について説明しています。 – user1676688

+0

@ jerstenそれを行う方法に関するドキュメントはありますか?また、IAMポリシーはどうですか?ドッカーに固有の何かがIAMポリシーのために必要となるか? – user1676688

答えて

1

Cloudwatchエージェントをインストールしたコンテナを作成します。 to do this you will need a DockerfileAmazon even has docs specifically for this

ベースコンテナがDebianかRHELベースのどちらかであることを確認する必要があります(Amazonのドキュメントではエージェントとのこの種のディストリビューションのみをサポートしているようです)。

curl https://s3.amazonaws.com//aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O 

だから、あなたは、コンテナを構築する時には、上記を実行する必要があります。例えば、Debianのベースのシステムではとインストールされたエージェントを持つことになります。

インストールの詳細はhereです。

あなたはIAMポリシーの懸念について言及しました。 Amazons example policy is below;コンテナにアクセスできることを確認する必要があります。

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "logs:CreateLogGroup", 
       "logs:CreateLogStream", 
       "logs:PutLogEvents", 
       "logs:DescribeLogStreams" 
      ], 
      "Resource": [ 
       "arn:aws:logs:*:*:*" 
      ] 
     }, 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:GetObject" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::myawsbucket/*" 
      ] 
     } 
    ] 
} 

GitHub has done this alreadyの誰か:

FROM ubuntu:latest 
MAINTAINER Ryuta Otaki <[email protected]>, Sergey Zhukov <[email protected]> 
... 
RUN apt-get install -q -y python python-pip wget 
RUN cd/; wget https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py 

私は非常にあなたが彼らのリードに従ってください示唆。 Ubuntuを使い、ドキュメントに従ってください。車輪を再発明しないでください。

0

この質問はHow to Send Kubernetes Logs to AWS CloudWatch?と似ています。 Kubernetesは、ドッカーサポートのようなカスタムログドライバをサポートしていません。 fluentdを使ってログをクラウドウォッチに送ることができます。

関連する問題