Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
KibanaではじめるDashboard
Search
Harukasan
PRO
September 10, 2014
Technology
5.8k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KibanaではじめるDashboard
KibanaではじめるDashboard
サーバ/インフラ養成読本 ログ収集可視化編 / 2014-09-08
Harukasan
PRO
September 10, 2014
More Decks by Harukasan
See All by Harukasan
Harucom Follow-up
harukasan
PRO
1
42
Building a Standalone Programming Environment
harukasan
PRO
1
2.1k
Successor to PicoRabbit: Ruby Programming Envorinment / RubyKaigi 2025 follow up
harukasan
PRO
1
1.4k
Write your own mrbgem, Create your own device
harukasan
PRO
1
470
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
1.9k
pixivを支える技術 / 技育CAMPアカデミア
harukasan
PRO
3
630
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
960
ピクシブのコンテンツ配信基盤技術 / pixiv TECH SALON
harukasan
PRO
5
6k
Goにおける画像ファイル処理 / golang.tokyo #19
harukasan
PRO
7
6.9k
Other Decks in Technology
See All in Technology
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
160
Goodbye ShellScript, Hello File-based App
shunsock
0
160
ソフトウェアDNAとクラウドエージェントのススメ
cloudace
0
110
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
120
beyond jj: config & tools ecosystem
indirect
0
3.4k
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
2.8k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
510
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
2
470
越境するなら専門用語を使うな高校校歌 / If you wanna cross border, you shouldn't use jargon
vtryo
0
140
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
1
2.3k
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
750
負債のメタファと2026年 / Debt Metaphor in Agentic Engineering Age 202609 Edition
twada
PRO
9
4k
Featured
See All Featured
Designing Experiences People Love
moore
143
24k
エンジニアに許された特別な時間の終わり
watany
109
250k
Abbi's Birthday
coloredviolet
4
10k
Skip the Path - Find Your Career Trail
mkilby
1
230
Are puppies a ranking factor?
jonoalderson
2
3.9k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Music & Morning Musume
bryan
48
7.4k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Being A Developer After 40
akosma
91
590k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
Optimising Largest Contentful Paint
csswizardry
37
4k
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Λ͍࢝ΊͯΈΔ • ՄࢹԽΛ͡ΊΔͱ͍ΖΜͳ͕ग़ͯ͘Δ • αʔϏεʹ͓͚Δʹ͋ΘͤͯੳπʔϧΛల։