Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
KibanaではじめるDashboard
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Harukasan
PRO
September 10, 2014
Technology
1
5.7k
KibanaではじめるDashboard
KibanaではじめるDashboard
サーバ/インフラ養成読本 ログ収集可視化編 / 2014-09-08
Harukasan
PRO
September 10, 2014
Tweet
Share
More Decks by Harukasan
See All by Harukasan
Successor to PicoRabbit: Ruby Programming Envorinment / RubyKaigi 2025 follow up
harukasan
PRO
1
220
Write your own mrbgem, Create your own device
harukasan
PRO
1
240
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
640
pixivを支える技術 / 技育CAMPアカデミア
harukasan
PRO
3
560
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
900
ピクシブのコンテンツ配信基盤技術 / pixiv TECH SALON
harukasan
PRO
5
5.8k
Goにおける画像ファイル処理 / golang.tokyo #19
harukasan
PRO
7
6.8k
WebRTC動画をトランスコードする / Transcoding video streams from WebRTC
harukasan
PRO
5
1.6k
ImageFluxを支えるリモート開発 / 20171202
harukasan
PRO
2
1.9k
Other Decks in Technology
See All in Technology
OpenShiftでllm-dを動かそう!
jpishikawa
0
120
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
150
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
250
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.3k
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
190
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
180
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
590
Greatest Disaster Hits in Web Performance
guaca
0
260
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
470
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
830
First, design no harm
axbom
PRO
2
1.1k
How STYLIGHT went responsive
nonsquared
100
6k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
エンジニアに許された特別な時間の終わり
watany
106
230k
Agile that works and the tools we love
rasmusluckow
331
21k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
210
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Abbi's Birthday
coloredviolet
1
4.8k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
430
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Transcript
KibanaͰ͡ΊΔDashboard Harukasan / MICHII Shunsuke 2014-09-08 サーバ/インフラエンジニア養成読本 ログ収集〜可視化編 出版記念!執筆者が語る大講演会!
Harukasan / MICHII Shunsuke Infrastructure team in pixiv Inc. since
2012 ! Works Contents Delivery / Monitoring / Server Management Server side infrastructure nginx / Apache TrafficServer / PHP / Ruby Data Analytics Fluentd / Kibana / Google BigQuery @harukasan shunsuke.michii
Agenda • pixivʹ͓͚Δσʔλੳ • DashboardΛͭ͘Ζ͏ • ͔ͭͬͯ͘Βͷ͜ͱ
None
pixiv ͜͜ʹpixivͷઆ໌͕ೖΔ ʮ͓ֆ͔͖͕ͬͱָ͘͠ͳΔॴʯΛࢦ͍ͯ͠Δ ΠϥετίϛϡχέʔγϣϯαʔϏε
pixivʹ͓͚Δσʔλੳ
pixivͷ։ൃαΠΫϧ • σϓϩΠճ: ฏۉ17ճ/ • ຖिͳʹ͔͠Β৽͍͠ػೳ͕ϦϦʔε͞ΕΔ • ৽͍͠ػೳͷޮՌΛݕূ͍ͨ͠ • ࢥ͍͕͚ͳ͍มԽ͕ͳ͍͔
pixivʹ͓͚Δσʔλੳ • άϩʔενʔϜ • αʔϏεͷάϩʔεͷͨΊʹͳΜͰΔ • ༷ʑͳࢪࡦͷݕূͷͨΊʹϩάΛ༻͍ͯ͠Δ ! • pixivͰ࣮ࡍʹى͍ͬͯ͜Δ͜ͱΛௐΔ
• ͲͷΑ͏ͳΠϥετ͕Ӿཡ͞Ε͍ͯΔ͔ • ͲͷΑ͏ͳݕࡧ͕ߦΘΕ͍ͯΔ͔
pixivʹ͓͚Δσʔλੳ • ։ൃνʔϜ • σʔλੳܧଓతσϦόϦʔͷखஈ • ػೳΛϦϦʔεͨ͠ͱ͖ʹςετ͢Δ • ਖ਼͍࣮͕͠ߦ͑ͨͷ͔ •
༧֎ͷޮՌ͕ͳ͍ͷ͔
pixivʹ͓͚Δσʔλੳ • ͳͥՄࢹԽΛ͡Ίͨͷ͔ • ࣾͰFluentd/MongoͰՄࢹԽπʔϧΛͭͬͨ͘ • ܾ·ͬͨΛه͚ͭͮ͠Δ • ͦΕͳΓʹΘΕ͍ͯͨ
pixivʹ͓͚Δσʔλੳ • ;ͱKibanaΛΔ • ͳΜ͔͓͠Ζͦ͏ • σʔλΛྲྀ͠ࠐΜͰΈΔͱ݁ߏ͓͠Ζ͍ • ͦͷ͏ͪଞͷਓ͕͍࢝Ίͨ •
ো͕ى͜ΔͱౖΒΕΔΑ͏ʹͳͬͨ
pixivʹ͓͚Δσʔλੳ • fluent-plugin-elasticsearch͔Βlogstash-*Ҏ֎ͷ ΠϯσοΫεʹग़ྗग़དྷΔΑ͏ʹͨ͠ • ͳͥlogstash_prefixͱ͍͏໊લʹͯ͠͠·ͬͨͷ͔……
Kibana
Query/Filter and Panels • Query: ϩάΛݕࡧ • Filter: ͯ͢ͷΫΤϦʹద༻͞ΕΔ •
Panel: ΫΤϦͷݕࡧ݁ՌΛ༷ʑͳํ๏Ͱදࣔ͢Δ
• ຊͰͨ͘͞Μઆ໌ͨ͠ Panels
Dashboard
Dashboard • ݟ͍͕ͨ1ը໘ʹऩ·͍ͬͯΔ • 1ͭͷσʔλʹରͯ͠ෳͷ໘͔Βੳ͢Δ • ຖ/ຖिܧଓͯ͠มԽΛݟΔ͜ͱ͕ग़དྷΔ • ͜ͷσʔλʹ͍ͭͯݟΔʹ͜ͷը໘ΛݟΕྑ͍ !
• ΠϯϑϥΤϯδχΞ։ൃऀ͕༻͍ͯͨ͠ ϩάσʔλʹ୭ͰΞΫηεͰ͖ΔΑ͏ʹ͢Δ
ྫ͑
ྫ͑ • ελϯϓػೳՃͷࡍʹͭ͘ΒΕͨ • ͲͷΑ͏ͳ༻్ͰΘΕ͍ͯΔ͔ • ίϝϯτʹͲͷΑ͏ͳมԽ͕͔͋ͬͨ • ຖिϛʔςΟϯά࣌ʹ֬ೝ͢Δ
DashboardΛͭ͘Ζ͏
༻ҙ͢Δͷ • దͳαʔό: SSD 256GBx3/ϝϞϦ32GB • 5,000,000 records/day ·Ͱ༨༟ •
EFKελοΫ • Elasticsearch • Fluentd • Kibana • ϩάϑΝΠϧ • ۭ͖࣌ؒ
ͭ͘Γ͔ͨ 1. ElasticsearchΛηοτΞοϓ 2. FluentdͰϩάΛૹΓ࢝ΊΔ 3. μογϡϘʔυΛͭ͘Δ Elasticsearch Fluentd
Application Load Balancer Database ΞΫηεϩά Πϕϯτϩά ੜσʔλ Τϥʔϩά
Ͳ͏͍͏ϩάΛ͏͔ • αʔόʹอଘ͞Ε͍ͯΔΠϕϯτϩά • ूܭࡁΈͷσʔλ͍͠ • ΠϯϑϥνʔϜͱ͕ه͍ͯͨ͠ϩάΛଞͷ༻్ʹ͑ΔΑ͏ʹ ΞΫηεϩά • ϦΫΤετͨ͠URL
• ૹ৴ݩIPΞυϨε • ϨεϙϯελΠϜ/ϦΫΤετॲཧ࣌ؒ ! Πϕϯτϩά • Ϣʔβ͕ߦͬͨΠϕϯτ(ϩάΠϯ/ߘ/ϒοΫϚʔΫ)ͷৄࡉใ • ΠϕϯτͷछྨຖʹߏԽ͞Ε͍ͯΔ • ࠷ॳʹՄࢹԽը໘Λͭͬͨ͘ͱ͖ʹ༻ҙͨ͠
Πϕϯτϩά • ༧ΊߏԽσʔλ͕͋Δͱศར • ͱͱੳπʔϧ༻ͷϩά͕͋ͬͨ ! • type • ϦΫΤετใ
• ϦϞʔτΞυϨε • UA • ϦϑΝϥ • ࠃใ • Πϕϯτͷৄࡉ • ରίϯςϯτͷID
มॲཧ • FluentdͰ࠷ݶͷมॲཧΛߦ͓ͬͯ͘ • ूܭॲཧߦΘͳ͍ ! fluent-plugin-geoip • IPΞυϨεΛࠃใʹม͢Δ fluent-plugin-rewrite-tag-filter
• ϩάͷग़ྗઌΠϯσοΫεΛৼΓ͚Δ • ෆඞཁͳϩάΛল͘
DashboardΛͭ͘Δ ͖ͬ͞ͷίϝϯτμογϡϘʔυΛྫʹߟ͑Δ ! 1. جຊHistogramͱTable 2. ϩάΛϑΟϧλϦϯά 3. ͱΓ͋͑ͣదʹ͍ΖΜͳύωϧΛฒΔ 4.
Share͢Δ
Histogram / Table • ώετάϥϜͱςʔϒϧΛஔ͍͚ͨͩ • ·ͣϑΟϧλϦϯάͯ͠ίϝϯτؔ࿈ͷσʔλΛநग़
σϓϩΠΛه͢Δ • σϓϩΠεΫϦϓτʹ1ߦՃ͢Δ͚ͩ • σϓϩΠޙʹͲͷΑ͏ͳมԽ͕͔͋ͬͨΘ͔Γ͍͢ curl -XPOST -H 'Content-type: text/json'
http://localhost:9200/deploy/deploy/ -d "{'project':'pixiv', '@timestamp':'$(date +"%Y-%m-%dT%H:%I:%S%z")', 'message':'tag'}"
Terms • ؾʹͳ͍ͬͯΔΛूܭ্ͯ͠ҐN݅Λදࣔ • άϥϑɾԁάϥϑͰදࣔͰ͖Δ • TableܗࣜͩͱϘλϯͰϑΟϧλϦϯάͰ͖Δ
Text • MarkdownͰςΩετΛॻ͚Δ • ҙࣄ߲ͱ͔ɺຌྫͱ͔Λද͓ࣔͯ͘͠ • Ͳ͏͍͏σʔλ͔ɺͲ͏͍͏͍ํΛ͢Δ͔
͔ͭͬͯ͘Βͷ͜ͱ
Share͢Δ • ShareϘλϯͰҰ࣌URLΛੜͯ͠νϟοτͱ͔ʹషΔ • ͪΌΜͱग़དྷͨΒอଘͯٞ͠ࣄͱ͔ʹష͓ͬͯ͘
͔ͭͬͯ͘Βͷ͜ͱ • ຖ/ຖि࣌ؒΛͱͬͯมԽΛ؍͢Δ • ͨͩϦϯΫΛΔ͚ͩͩͱ୭ݟͯ͘Εͳ͍ • ΈΜͳͰมԽʹ͍ͭͯٞ͢Δ࣌ؒΛͭ͘Δ • ৽͍͠վળํ๏ΞΠσΞʹͭͳ͕Δ •
ՄࢹԽج൫ʹର͍ͯ͠ΖΜͳจ͕۟Ͱͯ͘Δ
ͬͯΔͱग़ͯ͘Δ • PVΛͦͷ··ಥͬࠐΉͱܭࢉϦιʔε͕Γͳ͘ͳΔ • TermsɺTrendsͷύωϧΛฒΔͱ͔ͳΓॏ͍ • ظؒʹΔσʔλΛ͍͍ͨ • ෳࡶͳूܭॲཧϑΟϧλϦϯάΛ͍͍ͨ
Kibana with BigQuery • BigQueryͰूܭ/ϑΟϧλϦϯάΛߦ͏ • σʔλΛBulk APIͰElasticsearchʹग़ྗ • JenkinsΛͬͯఆظతʹ࣮ߦ͢Δ
Elasticsearch Fluentd Google BigQuery Jenkins
ଞͷੳπʔϧΛ͏ • ·ͣKibanaͰ͡ΊͯΈΔ • िؒͷσʔλͰ͋Ε؆୯ʹՄࢹԽͰ͖Δ • Kibana͕ۤखͳ͜ͱΘ͔ͬͯ͘Δ • ͨ͘͞Μͷ࣠ʹΔ౷ܭใ •
ظؒʹΔσʔλ • େྔͷσʔλͷूܭॲཧ • KibanaͷͨΊʹͭͬͨ͘ΠϯϑϥΛଞͷπʔϧʹల։
ଞͷੳπʔϧʹల։ Elasticsearch Fluentd Google BigQuery Jenkins Tableau HRForecast
·ͱΊ • ͱΓ͋͑ͣKibanaΛ͍࢝ΊͯΈΔ • ՄࢹԽΛ͡ΊΔͱ͍ΖΜͳ͕ग़ͯ͘Δ • αʔϏεʹ͓͚Δʹ͋ΘͤͯੳπʔϧΛల։