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

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

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

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

Q&A

解決済

1回答

6154閲覧

fluentdで改行コードが入っている場合に、jsonのparse処理に失敗する

ToshihumiAnan

総合スコア12

Fluentd

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

0グッド

0クリップ

投稿2017/12/24 08:05

編集2017/12/24 12:38

解決したい課題

fluentdで下記のjsonをparseしたいのですが、エラーとなってしまいます。いくつかテストしてみたのですが、\nが入っている場合に、エラーとなってしまうようです。何か、解決できる良い方法はありますでしょうか?

{"log":"10.140.0.4 - - [06/Dec/2017:04:57:52 +0000] \"POST /wp-admin/admin-ajax.php HTTP/1.1\" 200 583 \"http://35.194.167.209/wp-admin/plugins.php\" \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36\"\n","stream":"stdout"}

version

  • fluentd-0.14.25

エラー内容

2017-12-24 07:58:45 +0000 [warn]: #0 pattern not match: "{\"log\":\"10.140.0.4 - - [06/Dec/2017:04:57:52 +0000] \\"POST /wp-admin/admin-ajax.php HTTP/1.1\\" 200 583 \\"http://35.194.167.209/wp-admin/plugins.php\\" \\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36\\"" 2017-12-24 07:58:45 +0000 [warn]: #0 pattern not match: "\",\"stream\":\"stdout\"}"

成功するパターン(\nを除外)

2017-12-24 08:01:55.231837641 +0000 test.access_log: {"log":"10.140.0.4 - - [06/Dec/2017:04:57:52 +0000] \"POST /wp-admin/admin-ajax.php HTTP/1.1\" 200 583 \"http://35.194.167.209/wp-admin/plugins.php\" \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36\"","stream":"stdout"}

config内容

fluent.conf

<match fluent.**> type null </match> @include /etc/fluent/config.d/*.conf
  • config.d/input.conf
<source> @type tail format json time_key time path /var/tmp/test-*.log pos_file /var/log/test.log.pos tag test.access_log read_from_head true </source>
  • config.d/output.conf
<match test.*> @type stdout </match>

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

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

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

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

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

guest

回答1

0

自己解決

そもそものログが異常だったため、そちらを修正しました。ただ、別途文字列を除去するようなpluginがあるといいなーと思いました。

投稿2017/12/24 13:35

ToshihumiAnan

総合スコア12

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問