狠狠撸
Submit Search
Fluentd勉強会 (導入編 TreasureData活用)
?
Download as PPTX, PDF
?
8 likes
?
4,832 views
T
takeuchi-tk
Follow
Ipros Techmeetup fluentdの外部向け勉強会で使った資料 主にTreasureDataの使い方について記述
Read less
Read more
1 of 41
Download now
Downloaded 21 times
More Related Content
Fluentd勉強会 (導入編 TreasureData活用)
1.
fluentd 勉強会 at ipros 導入編
TreasureData活用 株式会社イプロス カイゼンチームリーダー 竹内孝志
2.
自己紹介 竹内 孝志(たけうち たかし) 1985年12月18日生まれ Sierで3年間金融系システムの保守?運用 現在はイプロスにWEBエンジニアとして勤務 主な業務はイプロスサイトの改善と機能拡張 アジャイル開発を極めるため修行中 Railsでサービスを作ろうと目論んでる 趣味はオンラインゲーム 土日祝日自宅警備
3.
導入編の目的 fluentd, td-agentを使ったことがない人 が??? td-agentとTreasureDataを使って ?ログの収集ができるようになる ?データの集計ができるようになる
4.
アジェンダ ?fluentd、td-agent、TreasureData概要 ?td-agent、TreasureData使い方 ?イプロスでのTreasureData活用例 ?デモ(GoogleDriveと連携)
5.
アジェンダ ?fluentd、td-agent、TreasureData概要 ?td-agent、TreasureData使い方 ?イプロスでのTreasureData活用例 ?デモ(GoogleDriveと連携)
6.
fluentd,td-agent概要 fluentdはログを収集し格納するためのログ収 集基盤ソフトウェア。 td-agentはTreasureDataが公開している fluentdの安定版。 これを使えばテキストベースで書きだされて いるログを構造化された形で処理ができ、運 用時にログファイルをgrepして確認をしなく て済む。
7.
TreasureData概要 TreasureDataとはトレジャーデータが提供す るクラウドデータウェアハウスサービスのこ とをいう。 正式名称『Treasure Data Cloud
Data Warehousing Service』。 クラウドストレージ上の任意のデータに対す るアクセス,および大規模な集計ジョブを走 らせることが可能。
8.
TreasureData構成図 TreasureData データウェアハウ ス APサーバー 管理画面 td-agent 安定版パッケー ジ fluentd データを送信する デー タ デー タ デー タ ログ ログ ログ
9.
TreasureDataの機能 td-agentから 管理ツール クエリー発行 ? ? スケジュール設定 ? ? ジョブの履歴 ? ? データ投入 ? × ユーザー管理 × ?
10.
題材として TreasureDataを選んだ理由 ?td-agentと連携しやすい ?ストレージが利用可能 ?管理画面の機能が豊富 ?無料で試せる fluentdの初心者向けのサービス
11.
アジェンダ ?fluentd、td-agent、TreasureData概要 ?td-agent、TreasureData使い方 ?イプロスでのTreasureData活用例 ?デモ(GoogleDriveと連携)
12.
td-agent及び TreasureDataの使い方 ?クライアントからTreasureDataへ接続 ?td-agentを使ってログを送信 ?TreasureDataを使った小技
13.
クライアントから TreasureDataへ接続 ローカルマシン (Mac or Windows) TreasureData Toolbelt データを操作
14.
クライアントから TreasureDataへ接続 ?Toolbeltインストール ?TreasureDataへ接続 ?TreasureDataのオブジェクトを操作
15.
Toolbeltインストール 公式ページから環境にあったインストーラーを取得し実行する。 http://toolbelt.treasure-data.com/
16.
TreasureDataへ接続 $ td account
–f Enter your Treasure Data credentials. Email: ※TreasureDataのIDとパスワードを入力する。
17.
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}
18.
TreasureDataの操作 データベースの確認 $ td tables データにアクセス $
td query -w –d データベース名 "SELECT v['code'] AS code, COUNT(1) AS cnt FROM テーブル名 GROUP BY v['code']"
19.
サーバーから TreasureDataへログを送信 サーバー (CentOS) TreasureData Td-agent Apache ログ アプリ ログ ログの送信
20.
サーバーから TreasureDataへログを送信 ?td-agentインストール ?apacheのログを送信 ?自由形式のログを送信
21.
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
22.
td-agentインストール 起動 $ /etc/init.d/td-agent start APIキー確認 $
td account -f $ td apikey:show
23.
apacheのログ送信 設定ファイルを書き換えて再起動するとログの送信を開始する。 $ vi /etc/td-agent/td-agent.conf
24.
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>
25.
自由形式のログを送信 こんなアクセスログがあったとする。 アクセスログ 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
26.
自由形式のログを送信 設定ファイルに送信するログの記述を追加する 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>
27.
フォーマットの指定方法 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})/ カラム名 フォーマット
28.
TreasureDataを使った小技 アプリケーションサーバー ログの送信 TreasureData GoogleDrive 集計結果の送信
29.
googledriveと連携 スケジュール作成時にスプレッドシートを指定 する $ td sched:create
[スケジュール名]"0 7 * * *" -t "Asia/Tokyo" -d applog --result ?gspreadsheet://[ユーザー名]:[パスワード] @[ドメイン名]/[ドライブ名]/[シート名]?mode=replace' “SELECT ???????????” ※td-agentもしくはtoolbeltが入ったマシンからコマンドを実行する。
30.
アジェンダ ?fluentd、td-agent、TreasureData概要 ?td-agent、TreasureData使い方 ?イプロスでのTreasureData活用例 ?デモ(GoogleDriveと連携)
31.
イプロスの事例 ?システム構成 ?アクセスログ集計 ?メール開封率集計 ?電話トラッキングログ収集 ?導入時に発生した問題
32.
システム構成 イプロスサイト APサーバー ログの集約サーバー tdagent tdagent TreasureData tdagent tdagent tdagent
33.
アクセスログの集計 TreasureData ログの送信 実験的に導入した 機能の分析などに利用 クエリー発行
34.
システムメールの開封率集計 TreasureData ログの送信 メールを開封 集計 ジョブ 集計結果 グラフで可視化 GoogleDrive
35.
電話トラッキングログ収集 発信 問い合わせ用 電話番号 転送 通話履歴の出力 TreasureData
36.
導入時に発生した問題 特になし
37.
アジェンダ ?fluentd、td-agent、TreasureData概要 ?td-agent、TreasureData使い方 ?イプロスでのTreasureData活用例 ?デモ(GoogleDriveと連携)
38.
デモ ①ログと設定ファイルの確認 アプリケーションサーバー ログの送信 ②クエリーの発行 + GoogleDriveへ送信 GoogleDrive TreasureData 集計結果の送信 ③クエリーの発行 + GoogleDriveへ送信 ④スケジュールの登録
39.
まとめ ?TreasureDataはクラウドデータウェアハウスサー ビス ?td-agentはfluentdの安定版パッケージ ?TreasureDataとtd-agentを使えばデータを蓄積可 能 ?TreasureDataは外部サービスを連携でき、データ の可視化も可能
40.
参考文献 TreasureData公式 http://www.treasure-data.com/
41.
ご清聴 ありがとうございまし た
Download