先日、PostgreSQLで発生した変更をfluentdに送る方法としてLogical Decodingが使えないかなと思い、fluentdのINPUTプラグインを作ってみたのでそれの使い方をまとめておきます。 このプラグインを使うと、PostgreSQLのLogical Decoding機能(WALをデコードしてどこかに転送する機能)を使って、PostgreSQL上で起こった全ての変更をfluentd上に流すことができます。 SQL経由でDB上の情報を取ってくるのとは異なり、Logical DecodingではPostgreSQLが出力したトランザクションログ(WAL)から変更情報を取ってくるので、他の処理への影響を少なく抑えることができます(トリガを仕掛けたりもいりません)。また、Logical Decoding側もプラグイン形式なっているので、好きな形式に変更結果を表すことができるの