質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

Fluentd

Fluentdは、オープンソースのログ収集ツールです。ログの収集方法、ログの記録先などのログデータ処理を柔軟にカスタマイズでき、インプットおよびアウトプットが全てプラグインとして実装されています。

Q&A

1回答

3049閲覧

FluentdでnginxのログをS3に保存したい(Docker compose環境)

shogo555

総合スコア6

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

Fluentd

Fluentdは、オープンソースのログ収集ツールです。ログの収集方法、ログの記録先などのログデータ処理を柔軟にカスタマイズでき、インプットおよびアウトプットが全てプラグインとして実装されています。

0グッド

1クリップ

投稿2019/09/12 03:44

閲覧いただきありがとうございます。
タイトルにある通りです。

現状、設定の不備か、何等かの理由でS3にログがアップロードされません。
私自身、Fluentdを使用するのが今回初めてで、
fluent.confの設定が間違っている可能性が高いです。。

簡単に環境をご説明させていただきますと以下の構成となります。
・nginxコンテナとFluentdコンテナをDocker composeで立ち上げる
・ローカルにバインドマウントしたnginxのaccess.logをFluentd経由でS3にアップロード

マウントしているローカルのaccess.logにはログが出力されていることを確認しています。

ディレクトリ構成は以下の通りです。

┬ fluentd │  ├ config │  │  └ fluent.conf (3) │  └ Dockerfile (2) ├ nginx │  ├ config │  │  └ nginx.conf │  ├ html │  │  └ index.html │  ├ log │  │  ├ s3 │  │  ├ access.log │  │  ├ access.log.pos │  │  └ error.log │  └ Dockerfile └ docker-compose.yml (1)

以下、関連のありそうなファイルを記載させていただいております。
(上記ディレクトリに項番があるもの)
おかしな点ございましたらご指摘いただけると幸いです。

(1)~/docker-compose.yml

version: "3.3" services: nginx: build: ./nginx volumes: - ./nginx/config/nginx.conf:/etc/nginx/nginx.conf - ./nginx/log:/var/log/nginx - ./nginx/html:/usr/share/nginx/html ports: - 8090:80 links: - fluentd fluentd: build: ./fluentd volumes: - ./fluentd/config:/fluentd/etc - ./nginx/log:/var/log/nginx ports: - "24224:24224"

(2)~/fluentd/Dockerfile

FROM fluent/fluentd:v1.3.2-1.0 RUN gem install fluent-plugin-elasticsearch fluent-plugin-s3 fluent-plugin-secure-foward

(3)~/fluentd/config/fluent.conf

<source> @type tail format nginx path /var/log/nginx/access.log tag nginx pos_file /var/log/nginx/access.log.pos </source> <match nginx> @type s3 aws_key_id XXXX aws_sec_key XXXX s3_bucket XXXX s3_region ap-northeast-1 path logs/ s3_object_key_format %{path}%{time_slice}_%{index}.%{file_extension} <buffer tag,time> @type file path /var/log/nginx/s3 timekey 3600 timekey_wait 10m timekey 60 timekey_wait 60 chunk_limit_size 256m </buffer> </match>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shogo555

2019/09/12 09:05

リンクを提示していただき、ありがとうございます。 私の勘違いならご指摘いただきたいのですが、fluent/fluentdのイメージにはエラーログが出力されるディレクトリ、ファイルが存在しないように見受けられます。 https://hub.docker.com/r/fluent/fluentd/dockerfile ローカルのコンテナ内のディレクトリも確認しましたが、提示いただいたリンクに記載のログが出力されるはずのファイルが見当たりませんでした。。
guest

回答1

0

解決しておりませんが、原因を絞り、再度質問させていただきました。
以下がその質問となります。
お知恵をお貸しくだされば幸いです。
https://teratail.com/questions/212179

投稿2019/09/16 10:04

shogo555

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問