fluentdでfluent-plugin-mongo使おうとしたらちょっとはまった
rubyなれてる人ならはまらないんだろうけど、fluentdでfluent-plugin-mongoを入れてつかおうかなぁと思って
gem intall fluent-plugin-mongo
して、fluentdを再起動したら下記のように言われるわけです。
**Notice: C extension not loaded. This is required for optimum MongoDB Ruby driver performance. You can install the extension as follows: gem install bson_ext If you continue to receive this message after installing, make sure that the bson_ext gem is in your load path and that the bson_ext and mongo gems are of the same version.
当然
gem install bson_ext
こうするじゃないですか。
でも再起動すると全く同じことを言われる。
あ、よく読んでなかった。mongoとbson_ext同じバージョンいれればいいのか。
っておもって
gem install mongo -v=1.8.1 gem install bson_ext -v=1.8.1
ってしたんですが、相変わらず出続ける。。。。
gem list
すると
bson_ext (1.6.4 1.8.1) mongo(1.6.4 1.8.1)
となってるから問題ないよなぁとか思ってて頭ひねってたんですが、ひょっとしたらと思って
gem uninstall bson_ext -v=x.x.x gem uninstall mongo -v=x.x.x
とバージョン一個だけに絞ったらうまくロードされました。
このへんの仕組みあとでちゃんと追っとこう。。。orz