だらだらと思いついたこととか書くブログ

エンジニア的なネタとか備忘録とかを書いていく予定

fluentdでメールログをなんちゃらかんちゃら[追記あり]

・fluentdで maillog を読み込んで MongoDB に投入
http://d.hatena.ne.jp/sfujiwara/20120326/1332760934

↑の記事を参考に前から気になっていたfluentdとmongodbを連携してメールログを管理したいとおもって挑戦
yumを利用できるようにtd-agnetを使用して設定を

http://pastebin.com/XL8WLauH
参考サイトは↑

でも、なんかうまくいかない・・
とりあえず↓を参考にまずapacheの設定からやってみるか
http://dsp74118.blogspot.jp/2012/09/fluentdmongodbapacherails.html

手が止まってしまっていたここに再挑戦

色々調べてみた結果、maillogの日付表示とが現在のtd-agent.confの設定とマッチしていないことが判明・・
ググって発見した記事を参考にrsyslogの日付表示のフォーマットを変更して挑戦してみたところあっさり成功

ただrsyslogの設定はもどしたいので、fluentdのin_tailのあたりを中心にもうちょと勉強して次回に臨みたいところ

キュー管理について

キューが詰まって配信がうまくいかない・・ということがあったので、調査しつつ色々お勉強

・キューの遷移(ざっくり・・)
sendmailコマンド→maildrop→incoming→active

○各種設定項目について
http://www.postfix-jp.info/trans-2.2/jhtml/postconf.5.html


○チューニングの参考
http://hdmr.org/d/?e=18

・defferdについて
※参照サイト:http://d.hatena.ne.jp/ma8loose/20080529/1212069772

最初再送に失敗したら、defferedキューに入って、queue_run_delay(※デフォルト:1000s)ごとにdefferedキューがキューをスキャン。
スキャンしたときにキューにあるメールの時間がminimal_backoff_timeをこえてたら再送
再送失敗してしまったら、今度はdefferedキュースキャンしたとき、minimal_backoff_timeの倍の時間後に再送開始。
再送失敗してしまったら、今度はdefferedキューをスキャンしたとき、minimal_backoff_timeの倍の倍の時間後に再送開始。
再送失敗してしm(ry(※倍々ゲームの繰りかえし)
って感じでmaximal_backoff_timeをこえるまで繰り返し。
こえた後はmaximal_backoff_timeの間隔で再送。


ひとまずdefferdの再送間隔を変えてみるだけでもだいぶ変わるのでは?ということでTry

perl、CPAN、CGI

CGIを動かそうとしたらうまく行かず
まずは↓を参考にapacheの設定
http://www.cross-clover.cc/2011/08/%E3%81%95%E3%81%8F%E3%82%89%E3%81%AEvps-web%E3%82%B5%E3%83%BC%E3%83%90%EF%BC%88apache%EF%BC%89%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

その後、実行を試みるが、、

XML::LibXMLがうまく入らない模様・・
なので↓を実行!
CPAN
CPAN入ってない場合(Can’t locate CPAN.pm in @INC エラー)
yum install perl-CPAN

YAMLも入ってない('YAML' not installed)
CPANで「install YAML

が、うまくいかんよ。。

色々調べた結果、足り無いパッケージがあるようなので、↓でインストール
yum install libxml2-devel

再度CPANから
install XML::LibXML
やっといけたよ

というか「***-devel」ってパケージに結構悩まされるな・・
以前もgccがないとかでこのへんで困った気が。。



valgrind

valgrindを入れてみたことはあるけど、別ディレクトリへのインストールなど詳しいことがわからなかったので、ググってtry

■インストール
http://www10.atwiki.jp/zipang_sky/pages/115.html

■サンプルスクリプト
http://www.ninxit.com/blog/2009/04/26/valgrind-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F/

メモリ管理周りをいじるときに活用できるようにしたいー

PerlのCPANモジュールについて

ちょっとPerlに触れることがあったので、CPAN関連で備忘録を

■モジュールがインストールされているかどうかを確認する方法
find `perl -e 'print "@INC"'` -name '*.pm' -print | grep SMTP

■モジュールのドキュメントを見る方法
perldoc Net::SMTP

■モジュールのソースを見る方法
perldoc -m Net::SMTP

しかしperldocって便利〜
もっと色々使いながら覚えたいー

node.js + mongodb

node.js + mongodbを入れてみたのでメモ

?node.jsのインストール
http://kshigeru.blogspot.jp/2011/10/nodejs-forever.html

?mongodb
http://cross.hvn.to/?p=1642

ひとまずubuntu上で動かしてみたけど、環境や構成を理解するのにひと苦労・・
なんてこったい(泣)

なんとか動かすことに成功

サンプルの参考にした記事
http://blog.fukaoi.org/2012/02/01/node-video-upload

それよりも・・ちょいと大きな失敗をしたのでOS入れなおし
http://support.sakura.ad.jp/manual/vps/mainte/osinstall.html