Fluentd勉強会 (導入編 TreasureData活用)
Upcoming SlideShare
Loading in...5
×
 

Fluentd勉強会 (導入編 TreasureData活用)

on

  • 2,721 views

Ipros Techmeetup

Ipros Techmeetup
fluentdの外部向け勉強会で使った資料

主にTreasureDataの使い方について記述

Statistics

Views

Total Views
2,721
Slideshare-icon Views on SlideShare
1,179
Embed Views
1,542

Actions

Likes
5
Downloads
13
Comments
0

13 Embeds 1,542

http://ipros-creators.tumblr.com 972
http://sstd-bigdata.blogspot.jp 509
http://assets.txmblr.com 25
http://sstd-bigdata.blogspot.com 10
https://assets.txmblr.com 8
https://twitter.com 6
http://cloud.feedly.com 3
http://www.google.co.jp 2
http://newsblur.com 2
http://app.imcreator.com 2
http://sstd-bigdata.blogspot.co.uk 1
http://sstd-bigdata.blogspot.kr 1
http://feedly.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Fluentd勉強会 (導入編 TreasureData活用) Fluentd勉強会 (導入編 TreasureData活用) Presentation Transcript

    • fluentd 勉強会 at ipros 導入編 TreasureData活用 株式会社イプロス カイゼンチームリーダー 竹内孝志
    • 自己紹介 竹内 孝志(たけうち たかし) 1985年12月18日生まれ Sierで3年間金融系システムの保守・運用 現在はイプロスにWEBエンジニアとして勤務 主な業務はイプロスサイトの改善と機能拡張 アジャイル開発を極めるため修行中 Railsでサービスを作ろうと目論んでる 趣味はオンラインゲーム 土日祝日自宅警備
    • 導入編の目的 fluentd, td-agentを使ったことがない人 が・・・ td-agentとTreasureDataを使って ・ログの収集ができるようになる ・データの集計ができるようになる
    • アジェンダ ・fluentd、td-agent、TreasureData概要 ・td-agent、TreasureData使い方 ・イプロスでのTreasureData活用例 ・デモ(GoogleDriveと連携)
    • アジェンダ ・fluentd、td-agent、TreasureData概要 ・td-agent、TreasureData使い方 ・イプロスでのTreasureData活用例 ・デモ(GoogleDriveと連携)
    • fluentd,td-agent概要 fluentdはログを収集し格納するためのログ収 集基盤ソフトウェア。 td-agentはTreasureDataが公開している fluentdの安定版。 これを使えばテキストベースで書きだされて いるログを構造化された形で処理ができ、運 用時にログファイルをgrepして確認をしなく て済む。
    • TreasureData概要 TreasureDataとはトレジャーデータが提供す るクラウドデータウェアハウスサービスのこ とをいう。 正式名称『Treasure Data Cloud Data Warehousing Service』。 クラウドストレージ上の任意のデータに対す るアクセス,および大規模な集計ジョブを走 らせることが可能。
    • TreasureData構成図 TreasureData データウェアハウ ス APサーバー 管理画面 td-agent 安定版パッケー ジ fluentd データを送信する デー タ デー タ デー タ ログ ログ ログ
    • TreasureDataの機能 td-agentから 管理ツール クエリー発行 ◯ ◯ スケジュール設定 ◯ ◯ ジョブの履歴 ◯ ◯ データ投入 ◯ × ユーザー管理 × ◯
    • 題材として TreasureDataを選んだ理由 ・td-agentと連携しやすい ・ストレージが利用可能 ・管理画面の機能が豊富 ・無料で試せる fluentdの初心者向けのサービス
    • アジェンダ ・fluentd、td-agent、TreasureData概要 ・td-agent、TreasureData使い方 ・イプロスでのTreasureData活用例 ・デモ(GoogleDriveと連携)
    • td-agent及び TreasureDataの使い方 ・クライアントからTreasureDataへ接続 ・td-agentを使ってログを送信 ・TreasureDataを使った小技
    • クライアントから TreasureDataへ接続 ローカルマシン (Mac or Windows) TreasureData Toolbelt データを操作
    • クライアントから TreasureDataへ接続 ・Toolbeltインストール ・TreasureDataへ接続 ・TreasureDataのオブジェクトを操作
    • Toolbeltインストール 公式ページから環境にあったインストーラーを取得し実行する。 http://toolbelt.treasure-data.com/
    • TreasureDataへ接続 $ td account –f Enter your Treasure Data credentials. Email: ※TreasureDataのIDとパスワードを入力する。
    • TreasureDataの操作 DB作成 $ td db:create データベース名 $ td table:create データベース名テーブル名 データ投入 $ td sample:apache apache.json $ td table:import データベース名 テーブル名--json apache.json tail -n 1 apache.json {"host":"200.129.205.208","user":"","method":"GET","path”:"/category/electronics”,"code":200,"refe rer":"-","size":62, "agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11","time":1334035906}
    • TreasureDataの操作 データベースの確認 $ td tables データにアクセス $ td query -w –d データベース名 "SELECT v['code'] AS code, COUNT(1) AS cnt FROM テーブル名 GROUP BY v['code']"
    • サーバーから TreasureDataへログを送信 サーバー (CentOS) TreasureData Td-agent Apache ログ アプリ ログ ログの送信
    • サーバーから TreasureDataへログを送信 ・td-agentインストール ・apacheのログを送信 ・自由形式のログを送信
    • td-agentインストール yumコマンドでtd-agentをインストール $ sudo vi /etc/yum.repos.d/td.repo $ sudo yum install -y td-agent td.repo [treasuredata]name=TreasureDatabaseurl= http://packages.treasure-data.com/redhat/$basearchgpgcheck=0
    • td-agentインストール 起動 $ /etc/init.d/td-agent start APIキー確認 $ td account -f $ td apikey:show
    • apacheのログ送信 設定ファイルを書き換えて再起動するとログの送信を開始する。 $ vi /etc/td-agent/td-agent.conf
    • apacheのログ送信 td-agent.conf <match td.*.*> type tdlog apikey XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX auto_create_table buffer_type file buffer_path /var/log/td-agent/buffer/td use_ssl true </match> <source> type tail path /var/log/httpd/httpd.access_log pos_file /tmp/httpd.access.log.pos format apache tag td.test.httpd </source>
    • 自由形式のログを送信 こんなアクセスログがあったとする。 アクセスログ 2013-10-22 07:46:37,028 1270859 2013-10-17 2013-10-22 09:03:46,635 1197675 2013-10-19 2013-10-22 12:32:25,593 1189472 2013-10-22 2013-10-22 12:33:05,671 1271888 2013-10-22 2013-10-22 12:38:21,005 1272255 2013-10-22 2013-10-22 12:41:40,961 1021213 2013-10-22 2013-10-22 12:43:46,654 1271174 2013-10-19 2013-10-22 12:44:43,604 1077677 2013-10-22 2013-10-22 12:45:38,035 1272280 2013-10-22 2013-10-22 12:47:23,007 1080238 2013-10-22 2013-10-22 12:47:38,265 1271174 2013-10-19
    • 自由形式のログを送信 設定ファイルに送信するログの記述を追加する td-agent.conf <source> type tail path /var/ipros/log/followmailopen.log tag td.applog<%= env_suffix %>.followmailopen format /^(?<time>d{4}-d{2}-d{2} d{2}:d{2}:d{2},d{3}) (?<memberid>S+) (?<senddate>d{4}-d{2}-d{2})/ pos_file /var/log/td-agent/td.applog.followmailopen.pos </source>
    • フォーマットの指定方法 format /^(?<time>d{4}-d{2}-d{2} d{2}:d{2}:d{2},d{3}) 定型文 各カラムのフォーマット (?<memberid>S+) (?<senddate>d{4}-d{2}-d{2})/ カラム名 フォーマット
    • TreasureDataを使った小技 アプリケーションサーバー ログの送信 TreasureData GoogleDrive 集計結果の送信
    • googledriveと連携 スケジュール作成時にスプレッドシートを指定 する $ td sched:create [スケジュール名]"0 7 * * *" -t "Asia/Tokyo" -d applog --result „gspreadsheet://[ユーザー名]:[パスワード] @[ドメイン名]/[ドライブ名]/[シート名]?mode=replace' “SELECT ・・・・・・・・・・・” ※td-agentもしくはtoolbeltが入ったマシンからコマンドを実行する。
    • アジェンダ ・fluentd、td-agent、TreasureData概要 ・td-agent、TreasureData使い方 ・イプロスでのTreasureData活用例 ・デモ(GoogleDriveと連携)
    • イプロスの事例 ・システム構成 ・アクセスログ集計 ・メール開封率集計 ・電話トラッキングログ収集 ・導入時に発生した問題
    • システム構成 イプロスサイト APサーバー ログの集約サーバー tdagent tdagent TreasureData tdagent tdagent tdagent
    • アクセスログの集計 TreasureData ログの送信 実験的に導入した 機能の分析などに利用 クエリー発行
    • システムメールの開封率集計 TreasureData ログの送信 メールを開封 集計 ジョブ 集計結果 グラフで可視化 GoogleDrive
    • 電話トラッキングログ収集 発信 問い合わせ用 電話番号 転送 通話履歴の出力 TreasureData
    • 導入時に発生した問題 特になし
    • アジェンダ ・fluentd、td-agent、TreasureData概要 ・td-agent、TreasureData使い方 ・イプロスでのTreasureData活用例 ・デモ(GoogleDriveと連携)
    • デモ ①ログと設定ファイルの確認 アプリケーションサーバー ログの送信 ②クエリーの発行 + GoogleDriveへ送信 GoogleDrive TreasureData 集計結果の送信 ③クエリーの発行 + GoogleDriveへ送信 ④スケジュールの登録
    • まとめ ・TreasureDataはクラウドデータウェアハウスサー ビス ・td-agentはfluentdの安定版パッケージ ・TreasureDataとtd-agentを使えばデータを蓄積可 能 ・TreasureDataは外部サービスを連携でき、データ の可視化も可能
    • 参考文献 TreasureData公式 http://www.treasure-data.com/
    • ご清聴 ありがとうございまし た