SlideShare a Scribd company logo
FluentdとGrowthForecastの導入
FUNTERACTIVE OPEN MEETING VOL.06
FUNTERACTIVE OPEN MEETING VOL.06 
Yuji Tsukaguchi
ファンタラクティブ株式会社
COO, Web Designer
無料写真素材サイト ぱくたそ
Enginner
@regret_raym
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdとは?
・Rubyで書かれたログ収集基盤ソフトウェア
・ログ等のデータをJSON形式に変換する
・input / output / bufferの3つの構成
・プラグインアーキテクチャなので拡張性が高く、プラグ
インも200以上配布されている
http://www.fluentd.org/
FUNTERACTIVE OPEN MEETING VOL.06 
Architecture
http://www.fluentd.org/architecture
FUNTERACTIVE OPEN MEETING VOL.06 
Architecture
■ input
データを取り出す
!
■ output
データを整形して保存する
!
■ buffer
データを管理する
プラグインで構成
http://www.fluentd.org/architecture
FUNTERACTIVE OPEN MEETING VOL.06 
ファイル
Architecture
http://knowledge.sakura.ad.jp/tech/1336/
Fluentd
アプリ
syslog
・
・
・
in_tall
in_forward
in_syslog
out_forward
out_mongo
out_file
inputプラグイン outputプラグイン
別ホスト
MongoDB
ファイル
FUNTERACTIVE OPEN MEETING VOL.06 
代表的なinputプラグイン
プラグイン名 説明
in_forward
TCP/IPを使ってイベントを受け取る。主にほかのfluentdや
各言語向けのロギングモジュールからイベントを受け取るの
に使われる
in_http
HTTPのPOSTリクエスト経由でイベントを受け取る
in_tail
テキストファイルを監視し、そこに書き込まれたテキストを
イベントとして受け取る
in_exec
指定された外部プログラムを実行し、その出力をイベントと
して受け取る。指定されたプログラムは永続的、もしくは指
定された時間間隔で定期的に実行される
in_syslog
UDPのsyslogプロトコル経由でイベントを受け取る
in_scribe
Facebookが開発したログ収集サービス「Scribe」のプロト
コル経由でイベントを受け取る
FUNTERACTIVE OPEN MEETING VOL.06 
代表的なoutputプラグイン
プラグイン名 説明
out_copy 1つ以上の出力先にログを転送する
out_null なにも出力しない
out_roundrobin
指定した1つ以上の出力先にラウンドロビンアルゴリズムを使って
ログを転送する
out_stdout
標準出力にログを出力する
out_exec_filter
引数としてログを与えて外部プログラムを実行し、その入力をイベ
ントとして受け取る
out_forward ほかのfluentdにネットワーク経由でログを転送する
out_mongo MongoDBにログを記録する
out_mongo_replset MongoDBにログを記録する
out_exec 引数としてログを与えて外部プログラムを実行する
out_file 指定したファイルにログを記録する
out_s3 Amazon S3ストレージにログを記録する
out_webhdfsQ
HDFS(Hadoop Distributed File System)にログを記録する
FUNTERACTIVE OPEN MEETING VOL.06 
構成
GrouthForcast
GrothForecastサーバ
fluent-agent-lite
Fluentdサーバ
fluent-plugin-
growthforecast
fluent-plugin-parser
Fluentd
その他
Apache
Apacheサーバ
FUNTERACTIVE OPEN MEETING VOL.06 
Apache
FUNTERACTIVE OPEN MEETING VOL.06 
Apacheサーバの構成
サーバ ■構成例
・IP: 192.168.33.50
・CentOS 6.5
・Apache
・fluend-agent-lite
fluent-agent-lite
Apache
FUNTERACTIVE OPEN MEETING VOL.06 
Apache ログフォーマット変更
# 変更前
LogFormat "%h %l %u %t "%r" %>s %b "%
{Referer}i" "%{User-Agent}i"" combined
!
# 変更後
LogFormat "%h %l %u %t "%r" %>s %b "%
{Referer}i" "%{User-Agent}i" %D" combined
ログにレスポンスタイムを出力するように変更
FUNTERACTIVE OPEN MEETING VOL.06 
fluent-agent-liteインストール
$ sudo wget --no-check-certificate https://
github.com/tagomoris/fluent-agent-lite/archive/
master.tar.gz
$ sudo tar -xzvf master.tar.gz
$ cd fluent-agent-lite-master/
$ sh bin/install.sh
fluent-agent-liteは「ログの転送のみ」に特化した軽量なFluentdクライアント
FUNTERACTIVE OPEN MEETING VOL.06 
fluent-agent-liteの設定
$ sudo vi /etc/fluent-agent-lite.conf
TAG_PREFIX="apache"
LOGS=$(cat <<"EOF"
access /var/log/httpd/access_log
EOF
)
PRIMARY_SERVER=“192.168.33.51:24224"
$ sudo /etc/init.d/fluent-agent-lite start
PRIMARY_SERVERでFluentdサーバのアドレスを、LOGSでFluentdサーバ
に転送させたいログを指定
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentd
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdサーバの構成
収集サーバ
fluent-plugin-
growthforecast
fluent-plugin-parser
Fluentd
その他
■構成例
・IP: 192.168.33.51
・CentOS 6.5
・Fluentd( td-agent )
・Fluentdプラグイン
FUNTERACTIVE OPEN MEETING VOL.06 
インストール
・DMGインストーラでFluentdをインストールする (Mac OS X)
・RPMパッケージからFluentdをインストールする (Redhat
Linux)
・DebパッケージからFluentdをインストールする (Ubuntu/
Debian Linux)
・Ruby GemでFluentdをインストールする
・ChefでFluentdをインストールする
・Fluentdをソースコードからインストールする
FUNTERACTIVE OPEN MEETING VOL.06 
インストール
# td-agent (fluentdの安定版配布パッケージ)
$ curl -L http://toolbelt.treasuredata.com/sh/install-redhat.sh | sh
# root権限で実行に変更
$ sudo vi /etc/sysconfig/td-agent
DAEMON_ARGS="--user root"
TD_AGENT_ARGS="/usr/sbin/td-agent --group root --log /var/log/td-agent/td-agent.log”
!
# 起動
$ sudo /etc/init.d/td-agent start
$ sudo chkconfig td-agent on
!
# 動いているかテスト
$ curl -X POST -d 'json={"json":"message"}' http://localhost:8888/debug.test
$ sudo cat /var/log/td-agent/td-agent.log
FUNTERACTIVE OPEN MEETING VOL.06 
プラグインのインストール
# Growthforecastプラグインのインストール例
sudo /usr/lib64/fluent/ruby/bin/fluent-gem
install fluent-plugin-growthforecast
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdの設定
sourceディレクティブはイベントの受信方法の指定
!
<source>
type <使用するプラグイン>
<設定項目1> <設定値1>
<設定項目2> <設定値2>
:
:
</source>
/etc/td-agent/td-agent.conf
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdの設定
例
<source>
type tail ←in_tailプラグインを指定
path /var/log/httpd/access_log ←アクセスログのパスを指定
tag apache.access ←ログに付けるタグを指定
pos_file /var/log/td-agent/httpd-access_log.pos
format apache ←パースするためにログの書式を指定
</source>
!
※formatはApacheのログフォーマットに合わせる必要があるため、変更した場合は正規表現で記述する
※その場合、time_formatも指定する
/etc/td-agent/td-agent.conf
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdの設定
matchディレクティブは、受信したイベント処理
!
<match <条件文>>
type <使用するプラグイン>
<設定項目1> <設定値1>
<設定項目2> <設定値2>
:
:
</match>
/etc/td-agent/td-agent.conf
FUNTERACTIVE OPEN MEETING VOL.06 
Fluentdの設定
例
<match apache.access> ←対象とするタグを指定
type file ←out_fileプラグインを指定
path /var/log/td-agent/httpd/access.log ←出力先ファイルを指定
time_slice_format %Y%m%d ←ファイル名に含める日時情報を指定
time_slice_wait 10m ←ログ記録を継続する時間を指定
compress gzip ←ログをgzip形式で圧縮
</match>
/etc/td-agent/td-agent.conf
FUNTERACTIVE OPEN MEETING VOL.06 
実際には
・Apacheサーバから受け取ったログをパースして、「fluent-plugin-
growthforecast」プラグインを使用して、GrothForecastに送信する
!
・ログに必要がないものがあれば、「fluent-plugin-rewrite」プラグ
インで削除したり、レスポンスタイムの単位を変換する「fluent-
plugin-forest」などを使用してFluentdから生成するデータを最適化
する
FUNTERACTIVE OPEN MEETING VOL.06 
GrowthForecast
FUNTERACTIVE OPEN MEETING VOL.06 
収集サーバの構成
グラフサーバ ■構成例
・IP: 192.168.33.53
・CentOS 6.5
・GrothForecast
GrouthForcast
FUNTERACTIVE OPEN MEETING VOL.06 
GrowthForecastとは?
・Webサーバとして起動し、データをWeb API経由でグ
ラフ化できるツール
・Fluentdと組み合わせて、サーバリソースの負荷確認な
どにお手軽で便利
FUNTERACTIVE OPEN MEETING VOL.06 
インストール
# 関係モジュールをインストール & グラフ文字化け対策
$ sudo yum groupinstall "Development Tools"
$ sudo yum install pkgconfig glib2-devel gettext libxml2-devel pango-
devel cairo-devel
$ sudo yum install -y ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts
ipa-pmincho-fonts
!
# GrowthForecast用のユーザー作成
$ sudo useradd growthforecast
$ sudo passwd growthforecast
$ su frowthforecast
FUNTERACTIVE OPEN MEETING VOL.06 
インストール
# perlbrewをインストール
$ curl -kL http://install.perlbrew.pl | bash
$ cd
$ echo '[[ -s "$HOME/perl5/perlbrew/etc/bashrc" ]] && source "$HOME/
perl5/perlbrew/etc/bashrc"' >> .bash_profile
$ source $HOME/perl5/perlbrew/etc/bashrc
# Perlのバージョンを確認、偶数番号をインストール
$ perlbrew available
$ perlbrew install perl-5.20.1
$ perlbrew switch perl-5.20.1
$ perl -v
$ perlbrew install-cpanm
FUNTERACTIVE OPEN MEETING VOL.06 
インストール
# GrowthForecastをインストール
$ git clone https://github.com/kazeburo/GrowthForecast.git
$ cd GrowthForecast
$ cpanm --installdeps .
$ exit
!
# GrowthForecastの起動スクリプト作成
$ cd && wget -nd -O - https://github.com/hiro-su/gf-sample/archive/master.tar.gz|tar zxvf -
$ cd gf-sample-master
$ sudo cp -rp growthforecast /etc/init.d
$ sudo chmod +x /etc/init.d/growthforecast
$ sudo mkdir /var/run/growthforecast
$ sudo mkdir /var/log/growthforecast
$ sudo /etc/init.d/growthforecast start
FUNTERACTIVE OPEN MEETING VOL.06 
GrowthForecast API
http://growthforecast/api/service_name/
section_name/graph_name
curl -F number=10 http://localhost:5125/api/
192.168.33.53/apache/response_time
FUNTERACTIVE OPEN MEETING VOL.06 
GrowthForecastの実行例
FUNTERACTIVE OPEN MEETING VOL.06 
ご清聴ありがとうございました

More Related Content

What's hot

曖昧 RPM 講座
曖昧 RPM 講座曖昧 RPM 講座
曖昧 RPM 講座
Tetsuya Morimoto
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
cosmo0920
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1kenjis
 
php and sapi and zendengine2 and...
php and sapi and zendengine2 and...php and sapi and zendengine2 and...
php and sapi and zendengine2 and...do_aki
 
Fluentdへようこそ
FluentdへようこそFluentdへようこそ
Fluentdへようこそ
Manabu Shinsaka
 
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェアEmacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
Masaharu IWAI
 
PECL を数えてみた
PECL を数えてみたPECL を数えてみた
PECL を数えてみた
y-uti
 
signal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何かsignal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何か
do_aki
 
Cakephp勉強会@tokyo #4
Cakephp勉強会@tokyo #4Cakephp勉強会@tokyo #4
Cakephp勉強会@tokyo #4
ichikaway
 
PECL operator で演算子オーバーロード
PECL operator で演算子オーバーロードPECL operator で演算子オーバーロード
PECL operator で演算子オーバーロード
y-uti
 
PHP 8 で Web 以外の世界の扉を叩く
PHP 8 で Web 以外の世界の扉を叩くPHP 8 で Web 以外の世界の扉を叩く
PHP 8 で Web 以外の世界の扉を叩く
shinjiigarashi
 
家に帰るまでが遠足です
家に帰るまでが遠足です家に帰るまでが遠足です
家に帰るまでが遠足ですCryolite
 
PHPとシグナル、その裏側
PHPとシグナル、その裏側PHPとシグナル、その裏側
PHPとシグナル、その裏側
do_aki
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみたOPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
 
超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール
Shin Tanigawa
 
R を起動するその前に
R を起動するその前にR を起動するその前に
R を起動するその前にKosei ABE
 

What's hot (16)

曖昧 RPM 講座
曖昧 RPM 講座曖昧 RPM 講座
曖昧 RPM 講座
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 
php and sapi and zendengine2 and...
php and sapi and zendengine2 and...php and sapi and zendengine2 and...
php and sapi and zendengine2 and...
 
Fluentdへようこそ
FluentdへようこそFluentdへようこそ
Fluentdへようこそ
 
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェアEmacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
Emacsでの翻訳 - Emacsで訳す、gettextで国際化されたソフトウェア
 
PECL を数えてみた
PECL を数えてみたPECL を数えてみた
PECL を数えてみた
 
signal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何かsignal の話 或いは Zend Signals とは何か
signal の話 或いは Zend Signals とは何か
 
Cakephp勉強会@tokyo #4
Cakephp勉強会@tokyo #4Cakephp勉強会@tokyo #4
Cakephp勉強会@tokyo #4
 
PECL operator で演算子オーバーロード
PECL operator で演算子オーバーロードPECL operator で演算子オーバーロード
PECL operator で演算子オーバーロード
 
PHP 8 で Web 以外の世界の扉を叩く
PHP 8 で Web 以外の世界の扉を叩くPHP 8 で Web 以外の世界の扉を叩く
PHP 8 で Web 以外の世界の扉を叩く
 
家に帰るまでが遠足です
家に帰るまでが遠足です家に帰るまでが遠足です
家に帰るまでが遠足です
 
PHPとシグナル、その裏側
PHPとシグナル、その裏側PHPとシグナル、その裏側
PHPとシグナル、その裏側
 
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみたOPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
 
超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール超簡単! PythonをWindows Serverにインストール
超簡単! PythonをWindows Serverにインストール
 
R を起動するその前に
R を起動するその前にR を起動するその前に
R を起動するその前に
 

Viewers also liked

SlackにHubotを設定して対話する
SlackにHubotを設定して対話するSlackにHubotを設定して対話する
SlackにHubotを設定して対話する
regret raym
 
CreateJSを使ったアニメーション表現の基礎
CreateJSを使ったアニメーション表現の基礎CreateJSを使ったアニメーション表現の基礎
CreateJSを使ったアニメーション表現の基礎
regret raym
 
React入門-JSONを取得して表示する
React入門-JSONを取得して表示するReact入門-JSONを取得して表示する
React入門-JSONを取得して表示する
regret raym
 
MT東京 ぱくたそ/PAKUTASO
MT東京 ぱくたそ/PAKUTASOMT東京 ぱくたそ/PAKUTASO
MT東京 ぱくたそ/PAKUTASO
regret raym
 
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
regret raym
 
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
Yuki Morohoshi
 
Media Art II openFrameworks 複数のシーンの管理・切替え
Media Art II openFrameworks 複数のシーンの管理・切替えMedia Art II openFrameworks 複数のシーンの管理・切替え
Media Art II openFrameworks 複数のシーンの管理・切替えAtsushi Tadokoro
 
イマドキWebメディアの制作手法
イマドキWebメディアの制作手法イマドキWebメディアの制作手法
イマドキWebメディアの制作手法
Keisuke Imura
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
Sadayuki Furuhashi
 
Lingkaran
LingkaranLingkaran
Qb's.duncan.calendar 2012 falcon football
Qb's.duncan.calendar 2012 falcon footballQb's.duncan.calendar 2012 falcon football
Qb's.duncan.calendar 2012 falcon football
Groves_mrduncan
 
Workshop Indesit - Scenario 2
Workshop Indesit - Scenario 2Workshop Indesit - Scenario 2
Workshop Indesit - Scenario 2chiarart6
 
Hi
HiHi
Ansel adams
Ansel adamsAnsel adams
Ansel adams
danialucatero
 
E化學習趨勢:趴趴走
E化學習趨勢:趴趴走E化學習趨勢:趴趴走
E化學習趨勢:趴趴走justdancer99
 
Cooping with nerves
Cooping with nervesCooping with nerves
Cooping with nerves
denisevdmeer1992
 
ομιλια για χρηση ουσιων
ομιλια για χρηση ουσιωνομιλια για χρηση ουσιων
ομιλια για χρηση ουσιωνYolanda Komianou
 
Grandparents in paintings
 Grandparents in paintings Grandparents in paintings
Grandparents in paintings
Makala (D)
 
Document Archiving with OM Plus
Document Archiving with OM PlusDocument Archiving with OM Plus
Document Archiving with OM Plus
Plus Technologies
 
South Carolina-Liam and William
South Carolina-Liam and WilliamSouth Carolina-Liam and William
South Carolina-Liam and William
klei8103
 

Viewers also liked (20)

SlackにHubotを設定して対話する
SlackにHubotを設定して対話するSlackにHubotを設定して対話する
SlackにHubotを設定して対話する
 
CreateJSを使ったアニメーション表現の基礎
CreateJSを使ったアニメーション表現の基礎CreateJSを使ったアニメーション表現の基礎
CreateJSを使ったアニメーション表現の基礎
 
React入門-JSONを取得して表示する
React入門-JSONを取得して表示するReact入門-JSONを取得して表示する
React入門-JSONを取得して表示する
 
MT東京 ぱくたそ/PAKUTASO
MT東京 ぱくたそ/PAKUTASOMT東京 ぱくたそ/PAKUTASO
MT東京 ぱくたそ/PAKUTASO
 
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
1年間で100万PV増やしたコンテンツ運用と最適化|写真素材サイトぱくたそ
 
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
SITW24 fluentdとダッシュボードを使った ビジュアルなシステム管理
 
Media Art II openFrameworks 複数のシーンの管理・切替え
Media Art II openFrameworks 複数のシーンの管理・切替えMedia Art II openFrameworks 複数のシーンの管理・切替え
Media Art II openFrameworks 複数のシーンの管理・切替え
 
イマドキWebメディアの制作手法
イマドキWebメディアの制作手法イマドキWebメディアの制作手法
イマドキWebメディアの制作手法
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
 
Lingkaran
LingkaranLingkaran
Lingkaran
 
Qb's.duncan.calendar 2012 falcon football
Qb's.duncan.calendar 2012 falcon footballQb's.duncan.calendar 2012 falcon football
Qb's.duncan.calendar 2012 falcon football
 
Workshop Indesit - Scenario 2
Workshop Indesit - Scenario 2Workshop Indesit - Scenario 2
Workshop Indesit - Scenario 2
 
Hi
HiHi
Hi
 
Ansel adams
Ansel adamsAnsel adams
Ansel adams
 
E化學習趨勢:趴趴走
E化學習趨勢:趴趴走E化學習趨勢:趴趴走
E化學習趨勢:趴趴走
 
Cooping with nerves
Cooping with nervesCooping with nerves
Cooping with nerves
 
ομιλια για χρηση ουσιων
ομιλια για χρηση ουσιωνομιλια για χρηση ουσιων
ομιλια για χρηση ουσιων
 
Grandparents in paintings
 Grandparents in paintings Grandparents in paintings
Grandparents in paintings
 
Document Archiving with OM Plus
Document Archiving with OM PlusDocument Archiving with OM Plus
Document Archiving with OM Plus
 
South Carolina-Liam and William
South Carolina-Liam and WilliamSouth Carolina-Liam and William
South Carolina-Liam and William
 

Similar to FluentdとGrothForecastをインストールする

Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料
学 松崎
 
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
Daisuke Ikeda
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler
OSSラボ株式会社
 
Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Taku Unno
 
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話id774
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
ThinReports
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
Seiya Mizuno
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop Daisuke Sugai
 
perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)
NTT DATA OSS Professional Services
 
Fluentd meetup #2
Fluentd meetup #2Fluentd meetup #2
Fluentd meetup #2
Tomohiro Ikeda
 
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like databaseオフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
yoshikawa_t
 
Prometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidePrometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slide
cosmo0920
 
Flumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システムFlumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システム
Satoshi Iijima
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!Shinpei Ohtani
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)Akio Katayama
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-publicAmazon Web Services Japan
 
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
NTT DATA Technology & Innovation
 
FIWARE Real-Time Media Stream processing using Kurento
FIWARE Real-Time Media Stream processing using KurentoFIWARE Real-Time Media Stream processing using Kurento
FIWARE Real-Time Media Stream processing using Kurento
fisuda
 

Similar to FluentdとGrothForecastをインストールする (20)

Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料
 
社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~ 社内向けTech Talk資料~Fluentdの基本紹介~
社内向けTech Talk資料~Fluentdの基本紹介~
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler
 
Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4
 
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
 
Apache Module
Apache ModuleApache Module
Apache Module
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop
 
perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)
 
Fluentd meetup #2
Fluentd meetup #2Fluentd meetup #2
Fluentd meetup #2
 
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like databaseオフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
 
Prometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidePrometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slide
 
Flumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システムFlumeを活用したAmebaにおける大規模ログ収集システム
Flumeを活用したAmebaにおける大規模ログ収集システム
 
Fluentd casual
Fluentd casualFluentd casual
Fluentd casual
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
 
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
 
FIWARE Real-Time Media Stream processing using Kurento
FIWARE Real-Time Media Stream processing using KurentoFIWARE Real-Time Media Stream processing using Kurento
FIWARE Real-Time Media Stream processing using Kurento
 

More from regret raym

Chefで作る開発環境
Chefで作る開発環境Chefで作る開発環境
Chefで作る開発環境
regret raym
 
Dockerの導入
Dockerの導入Dockerの導入
Dockerの導入
regret raym
 
Jenkinsの導入 vol.02 Bitbucketと連携する
Jenkinsの導入 vol.02 Bitbucketと連携するJenkinsの導入 vol.02 Bitbucketと連携する
Jenkinsの導入 vol.02 Bitbucketと連携するregret raym
 
Jenkinsの導入 Vol.01
Jenkinsの導入 Vol.01Jenkinsの導入 Vol.01
Jenkinsの導入 Vol.01
regret raym
 
今から始めるPhotoshopによるWeb制作-初期設定編
今から始めるPhotoshopによるWeb制作-初期設定編今から始めるPhotoshopによるWeb制作-初期設定編
今から始めるPhotoshopによるWeb制作-初期設定編
regret raym
 
Web制作のアレコレ
Web制作のアレコレWeb制作のアレコレ
Web制作のアレコレregret raym
 
WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法
regret raym
 
WordCamp Tokyo2012 handson Portfolio
WordCamp Tokyo2012 handson PortfolioWordCamp Tokyo2012 handson Portfolio
WordCamp Tokyo2012 handson Portfolio
regret raym
 
WordCamp Tokyo2012 Session
WordCamp Tokyo2012 SessionWordCamp Tokyo2012 Session
WordCamp Tokyo2012 Session
regret raym
 
Movable typeでモバイルギャラリーサイト
Movable typeでモバイルギャラリーサイトMovable typeでモバイルギャラリーサイト
Movable typeでモバイルギャラリーサイトregret raym
 
Css拡張言語のコトハジメ
Css拡張言語のコトハジメCss拡張言語のコトハジメ
Css拡張言語のコトハジメregret raym
 

More from regret raym (13)

Chefで作る開発環境
Chefで作る開発環境Chefで作る開発環境
Chefで作る開発環境
 
Dockerの導入
Dockerの導入Dockerの導入
Dockerの導入
 
Jenkinsの導入 vol.02 Bitbucketと連携する
Jenkinsの導入 vol.02 Bitbucketと連携するJenkinsの導入 vol.02 Bitbucketと連携する
Jenkinsの導入 vol.02 Bitbucketと連携する
 
Jenkinsの導入 Vol.01
Jenkinsの導入 Vol.01Jenkinsの導入 Vol.01
Jenkinsの導入 Vol.01
 
今から始めるPhotoshopによるWeb制作-初期設定編
今から始めるPhotoshopによるWeb制作-初期設定編今から始めるPhotoshopによるWeb制作-初期設定編
今から始めるPhotoshopによるWeb制作-初期設定編
 
Web制作のアレコレ
Web制作のアレコレWeb制作のアレコレ
Web制作のアレコレ
 
Yurufuwa007
Yurufuwa007Yurufuwa007
Yurufuwa007
 
WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法
 
WordCamp Tokyo2012 handson Portfolio
WordCamp Tokyo2012 handson PortfolioWordCamp Tokyo2012 handson Portfolio
WordCamp Tokyo2012 handson Portfolio
 
WordCamp Tokyo2012 Session
WordCamp Tokyo2012 SessionWordCamp Tokyo2012 Session
WordCamp Tokyo2012 Session
 
Movable typeでモバイルギャラリーサイト
Movable typeでモバイルギャラリーサイトMovable typeでモバイルギャラリーサイト
Movable typeでモバイルギャラリーサイト
 
Css拡張言語のコトハジメ
Css拡張言語のコトハジメCss拡張言語のコトハジメ
Css拡張言語のコトハジメ
 
Wp html5
Wp html5Wp html5
Wp html5
 

FluentdとGrothForecastをインストールする

  • 2. FUNTERACTIVE OPEN MEETING VOL.06  Yuji Tsukaguchi ファンタラクティブ株式会社 COO, Web Designer 無料写真素材サイト ぱくたそ Enginner @regret_raym
  • 3. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdとは? ・Rubyで書かれたログ収集基盤ソフトウェア ・ログ等のデータをJSON形式に変換する ・input / output / bufferの3つの構成 ・プラグインアーキテクチャなので拡張性が高く、プラグ インも200以上配布されている http://www.fluentd.org/
  • 4. FUNTERACTIVE OPEN MEETING VOL.06  Architecture http://www.fluentd.org/architecture
  • 5. FUNTERACTIVE OPEN MEETING VOL.06  Architecture ■ input データを取り出す ! ■ output データを整形して保存する ! ■ buffer データを管理する プラグインで構成 http://www.fluentd.org/architecture
  • 6. FUNTERACTIVE OPEN MEETING VOL.06  ファイル Architecture http://knowledge.sakura.ad.jp/tech/1336/ Fluentd アプリ syslog ・ ・ ・ in_tall in_forward in_syslog out_forward out_mongo out_file inputプラグイン outputプラグイン 別ホスト MongoDB ファイル
  • 7. FUNTERACTIVE OPEN MEETING VOL.06  代表的なinputプラグイン プラグイン名 説明 in_forward TCP/IPを使ってイベントを受け取る。主にほかのfluentdや 各言語向けのロギングモジュールからイベントを受け取るの に使われる in_http HTTPのPOSTリクエスト経由でイベントを受け取る in_tail テキストファイルを監視し、そこに書き込まれたテキストを イベントとして受け取る in_exec 指定された外部プログラムを実行し、その出力をイベントと して受け取る。指定されたプログラムは永続的、もしくは指 定された時間間隔で定期的に実行される in_syslog UDPのsyslogプロトコル経由でイベントを受け取る in_scribe Facebookが開発したログ収集サービス「Scribe」のプロト コル経由でイベントを受け取る
  • 8. FUNTERACTIVE OPEN MEETING VOL.06  代表的なoutputプラグイン プラグイン名 説明 out_copy 1つ以上の出力先にログを転送する out_null なにも出力しない out_roundrobin 指定した1つ以上の出力先にラウンドロビンアルゴリズムを使って ログを転送する out_stdout 標準出力にログを出力する out_exec_filter 引数としてログを与えて外部プログラムを実行し、その入力をイベ ントとして受け取る out_forward ほかのfluentdにネットワーク経由でログを転送する out_mongo MongoDBにログを記録する out_mongo_replset MongoDBにログを記録する out_exec 引数としてログを与えて外部プログラムを実行する out_file 指定したファイルにログを記録する out_s3 Amazon S3ストレージにログを記録する out_webhdfsQ HDFS(Hadoop Distributed File System)にログを記録する
  • 9. FUNTERACTIVE OPEN MEETING VOL.06  構成 GrouthForcast GrothForecastサーバ fluent-agent-lite Fluentdサーバ fluent-plugin- growthforecast fluent-plugin-parser Fluentd その他 Apache Apacheサーバ
  • 10. FUNTERACTIVE OPEN MEETING VOL.06  Apache
  • 11. FUNTERACTIVE OPEN MEETING VOL.06  Apacheサーバの構成 サーバ ■構成例 ・IP: 192.168.33.50 ・CentOS 6.5 ・Apache ・fluend-agent-lite fluent-agent-lite Apache
  • 12. FUNTERACTIVE OPEN MEETING VOL.06  Apache ログフォーマット変更 # 変更前 LogFormat "%h %l %u %t "%r" %>s %b "% {Referer}i" "%{User-Agent}i"" combined ! # 変更後 LogFormat "%h %l %u %t "%r" %>s %b "% {Referer}i" "%{User-Agent}i" %D" combined ログにレスポンスタイムを出力するように変更
  • 13. FUNTERACTIVE OPEN MEETING VOL.06  fluent-agent-liteインストール $ sudo wget --no-check-certificate https:// github.com/tagomoris/fluent-agent-lite/archive/ master.tar.gz $ sudo tar -xzvf master.tar.gz $ cd fluent-agent-lite-master/ $ sh bin/install.sh fluent-agent-liteは「ログの転送のみ」に特化した軽量なFluentdクライアント
  • 14. FUNTERACTIVE OPEN MEETING VOL.06  fluent-agent-liteの設定 $ sudo vi /etc/fluent-agent-lite.conf TAG_PREFIX="apache" LOGS=$(cat <<"EOF" access /var/log/httpd/access_log EOF ) PRIMARY_SERVER=“192.168.33.51:24224" $ sudo /etc/init.d/fluent-agent-lite start PRIMARY_SERVERでFluentdサーバのアドレスを、LOGSでFluentdサーバ に転送させたいログを指定
  • 15. FUNTERACTIVE OPEN MEETING VOL.06  Fluentd
  • 16. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdサーバの構成 収集サーバ fluent-plugin- growthforecast fluent-plugin-parser Fluentd その他 ■構成例 ・IP: 192.168.33.51 ・CentOS 6.5 ・Fluentd( td-agent ) ・Fluentdプラグイン
  • 17. FUNTERACTIVE OPEN MEETING VOL.06  インストール ・DMGインストーラでFluentdをインストールする (Mac OS X) ・RPMパッケージからFluentdをインストールする (Redhat Linux) ・DebパッケージからFluentdをインストールする (Ubuntu/ Debian Linux) ・Ruby GemでFluentdをインストールする ・ChefでFluentdをインストールする ・Fluentdをソースコードからインストールする
  • 18. FUNTERACTIVE OPEN MEETING VOL.06  インストール # td-agent (fluentdの安定版配布パッケージ) $ curl -L http://toolbelt.treasuredata.com/sh/install-redhat.sh | sh # root権限で実行に変更 $ sudo vi /etc/sysconfig/td-agent DAEMON_ARGS="--user root" TD_AGENT_ARGS="/usr/sbin/td-agent --group root --log /var/log/td-agent/td-agent.log” ! # 起動 $ sudo /etc/init.d/td-agent start $ sudo chkconfig td-agent on ! # 動いているかテスト $ curl -X POST -d 'json={"json":"message"}' http://localhost:8888/debug.test $ sudo cat /var/log/td-agent/td-agent.log
  • 19. FUNTERACTIVE OPEN MEETING VOL.06  プラグインのインストール # Growthforecastプラグインのインストール例 sudo /usr/lib64/fluent/ruby/bin/fluent-gem install fluent-plugin-growthforecast
  • 20. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdの設定 sourceディレクティブはイベントの受信方法の指定 ! <source> type <使用するプラグイン> <設定項目1> <設定値1> <設定項目2> <設定値2> : : </source> /etc/td-agent/td-agent.conf
  • 21. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdの設定 例 <source> type tail ←in_tailプラグインを指定 path /var/log/httpd/access_log ←アクセスログのパスを指定 tag apache.access ←ログに付けるタグを指定 pos_file /var/log/td-agent/httpd-access_log.pos format apache ←パースするためにログの書式を指定 </source> ! ※formatはApacheのログフォーマットに合わせる必要があるため、変更した場合は正規表現で記述する ※その場合、time_formatも指定する /etc/td-agent/td-agent.conf
  • 22. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdの設定 matchディレクティブは、受信したイベント処理 ! <match <条件文>> type <使用するプラグイン> <設定項目1> <設定値1> <設定項目2> <設定値2> : : </match> /etc/td-agent/td-agent.conf
  • 23. FUNTERACTIVE OPEN MEETING VOL.06  Fluentdの設定 例 <match apache.access> ←対象とするタグを指定 type file ←out_fileプラグインを指定 path /var/log/td-agent/httpd/access.log ←出力先ファイルを指定 time_slice_format %Y%m%d ←ファイル名に含める日時情報を指定 time_slice_wait 10m ←ログ記録を継続する時間を指定 compress gzip ←ログをgzip形式で圧縮 </match> /etc/td-agent/td-agent.conf
  • 24. FUNTERACTIVE OPEN MEETING VOL.06  実際には ・Apacheサーバから受け取ったログをパースして、「fluent-plugin- growthforecast」プラグインを使用して、GrothForecastに送信する ! ・ログに必要がないものがあれば、「fluent-plugin-rewrite」プラグ インで削除したり、レスポンスタイムの単位を変換する「fluent- plugin-forest」などを使用してFluentdから生成するデータを最適化 する
  • 25. FUNTERACTIVE OPEN MEETING VOL.06  GrowthForecast
  • 26. FUNTERACTIVE OPEN MEETING VOL.06  収集サーバの構成 グラフサーバ ■構成例 ・IP: 192.168.33.53 ・CentOS 6.5 ・GrothForecast GrouthForcast
  • 27. FUNTERACTIVE OPEN MEETING VOL.06  GrowthForecastとは? ・Webサーバとして起動し、データをWeb API経由でグ ラフ化できるツール ・Fluentdと組み合わせて、サーバリソースの負荷確認な どにお手軽で便利
  • 28. FUNTERACTIVE OPEN MEETING VOL.06  インストール # 関係モジュールをインストール & グラフ文字化け対策 $ sudo yum groupinstall "Development Tools" $ sudo yum install pkgconfig glib2-devel gettext libxml2-devel pango- devel cairo-devel $ sudo yum install -y ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts ipa-pmincho-fonts ! # GrowthForecast用のユーザー作成 $ sudo useradd growthforecast $ sudo passwd growthforecast $ su frowthforecast
  • 29. FUNTERACTIVE OPEN MEETING VOL.06  インストール # perlbrewをインストール $ curl -kL http://install.perlbrew.pl | bash $ cd $ echo '[[ -s "$HOME/perl5/perlbrew/etc/bashrc" ]] && source "$HOME/ perl5/perlbrew/etc/bashrc"' >> .bash_profile $ source $HOME/perl5/perlbrew/etc/bashrc # Perlのバージョンを確認、偶数番号をインストール $ perlbrew available $ perlbrew install perl-5.20.1 $ perlbrew switch perl-5.20.1 $ perl -v $ perlbrew install-cpanm
  • 30. FUNTERACTIVE OPEN MEETING VOL.06  インストール # GrowthForecastをインストール $ git clone https://github.com/kazeburo/GrowthForecast.git $ cd GrowthForecast $ cpanm --installdeps . $ exit ! # GrowthForecastの起動スクリプト作成 $ cd && wget -nd -O - https://github.com/hiro-su/gf-sample/archive/master.tar.gz|tar zxvf - $ cd gf-sample-master $ sudo cp -rp growthforecast /etc/init.d $ sudo chmod +x /etc/init.d/growthforecast $ sudo mkdir /var/run/growthforecast $ sudo mkdir /var/log/growthforecast $ sudo /etc/init.d/growthforecast start
  • 31. FUNTERACTIVE OPEN MEETING VOL.06  GrowthForecast API http://growthforecast/api/service_name/ section_name/graph_name curl -F number=10 http://localhost:5125/api/ 192.168.33.53/apache/response_time
  • 32. FUNTERACTIVE OPEN MEETING VOL.06  GrowthForecastの実行例
  • 33. FUNTERACTIVE OPEN MEETING VOL.06  ご清聴ありがとうございました