13
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

FluentdAdvent Calendar 2014

Day 5

Fluentd に bundle された in_dummy プラグイン

Last updated at Posted at 2014-12-04

Fluentd に in_dummy プラグインが bundle されたので紹介します。v0.10.58 および v0.12 以降に同梱されています。

これは、タゴ・モリスという人が以前作った fluent-plugin-dammydata-producer プラグインを元に Fluentd 本体に移植したもので、Fluentd プロセス内でメッセージを生成して、動作確認をするのにご利用いただけます。

今までの fluent-cat を用いた動作確認

以前なら、Fluentd にテストデータを流して動作確認するには

<source>
  type forward>
</source>

<match raw.**>
  type stdout
</match>

のように conf を記述して、

$ fluentd -c fluent.conf

として fluentd を起動した後、

$ echo '{"message":"foo"}' |  fluent-cat -h localhost raw.foo

のように fluent-cat コマンドでデータを流して確認していたと思います。

in_dummy プラグインを用いた動作確認

in_dummy プラグインを用いて、例えば conf を次のように記述すると、

<source>
  type dummy
  tag raw.foo
  dummy {"message":"foo"}
</source>

<match raw.**>
  type stdout
</match>
$ fluentd -c fluent.conf
2014-12-05 00:08:12 +0900 raw.foo: {"message":"foo"}
2014-12-05 00:08:13 +0900 raw.foo: {"message":"foo"}
2014-12-05 00:08:14 +0900 raw.foo: {"message":"foo"}

fluentd を起動しただけでデータが流れるようになります。fluent-cat を叩く必要がなくて便利ですね!

fluent-cat を叩かなくてもよいという点に加えて、conf 中に入力データのサンプルを一緒に書けるようになった点も影響が大きいかと思っています。

これにより入力データを明確に記述できるようになりましたし、自作プラグインの README に使い方を書く場合や、MLで質問に答える場合に役立ちそうです。

ユーザとして試す場合も、in_dummy プラグインで入力データも示されていれば、コピペするだけで動くので簡単ですね!

in_dummy プラグインのオプション

in_dummy プラグインのオプションは以下のようになります。

  • tag

    • 必須。タグを指定します。
  • rate

    • メッセージを生成する頻度(messages / sec)を指定します。デフォルトは 1 (1秒に1メッセージ)です。
  • dummy

    • 生成するダミーデータを JSON Hash 形式、または JSON Hash の Array 形式で複数メッセージを指定します。デフォルトは {"message":"foo"} です。
  • auto_increment_key

    • 自動インクリメント機能を使用するメッセージのkeyを指定します。メッセージが生成される度に値が1増えます。

dummer とのポジション的な違い

in_dummy プラグインは Fluentd の同一プロセス内でメッセージを生成するため Fluentd の性能検証をするのには向かないでしょう。データを生成するプロセス(ベンチマーククライアント)は別プロセスにしたいものです。

別プロセスを立ち上げて性能検証をするためには、類似のツールとして拙作の dummer というツールがあるのでそちらを利用すると良いでしょう。

まとめ

in_dummy プラグインが bundle されました。動作確認、conf のサンプルを書く際に是非、お使いください。

13
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?