表記するお名前、SNSアカウント
tagomoris
https://twitter.com/tagomoris
https://github.com/tagomoris
概要
Fluentd v0.14はプラグイン向けの新しい(より整理された)Plugin APIを持っていますが、その一方で旧APIを使用しているプラグインをすべて無効にすることはもちろんできず、新APIの上に互換性を担保するレイヤを用意することで旧APIのプラグインも動作させられるような仕組みを持っています。
しかしFluentdのプラグインは従来から「なんでもできる」(何も整備されていない……)が特徴でもあったため、互換性を維持するということはつまり、なんでもやっている実装を相手にするということでもあります。
このため、実際の互換性レイヤにおいては考えられる限りのメタプログラミングの手腕が発揮されることとなりました。
このトークでは、大きな齟齬のあるAPI間で互換性を維持するためにどのように魔術的な手法がとられたか、どのように想定外な実装のプラグインが降臨して苦しめられたか、黒魔術万歳と言いながら性能を諦められないときに何をどのように妥協せざるをえなかったかについて、実際のコードとcommit履歴を見せながら話します。
要求トーク時間
A/15:40/30min
想定聴講者層
中〜上級者
黒魔術に少しでも親しんだことがあると良い
録画や写真撮影と、その後の公開
OK
日付の希望
両日問題無し
あなたは暴言などをしない常識を持っていて、このトークで人や法人を悲しませたり怒らせたりせず、平たく言ってネット等でダメな方向に炎上するような行動は慎むことを誓えますか?
誓います!
お知らせとなる #1 お知らせスレをSubscribeするなどしてちゃんと読みますか?
Sure!
表記するお名前、SNSアカウント
tagomoris
https://twitter.com/tagomoris
https://github.com/tagomoris
概要
Fluentd v0.14はプラグイン向けの新しい(より整理された)Plugin APIを持っていますが、その一方で旧APIを使用しているプラグインをすべて無効にすることはもちろんできず、新APIの上に互換性を担保するレイヤを用意することで旧APIのプラグインも動作させられるような仕組みを持っています。
しかしFluentdのプラグインは従来から「なんでもできる」(何も整備されていない……)が特徴でもあったため、互換性を維持するということはつまり、なんでもやっている実装を相手にするということでもあります。
このため、実際の互換性レイヤにおいては考えられる限りのメタプログラミングの手腕が発揮されることとなりました。
このトークでは、大きな齟齬のあるAPI間で互換性を維持するためにどのように魔術的な手法がとられたか、どのように想定外な実装のプラグインが降臨して苦しめられたか、黒魔術万歳と言いながら性能を諦められないときに何をどのように妥協せざるをえなかったかについて、実際のコードとcommit履歴を見せながら話します。
要求トーク時間
A/15:40/30min
想定聴講者層
中〜上級者
黒魔術に少しでも親しんだことがあると良い
録画や写真撮影と、その後の公開
OK
日付の希望
両日問題無し
あなたは暴言などをしない常識を持っていて、このトークで人や法人を悲しませたり怒らせたりせず、平たく言ってネット等でダメな方向に炎上するような行動は慎むことを誓えますか?
誓います!
お知らせとなる #1 お知らせスレをSubscribeするなどしてちゃんと読みますか?
Sure!