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
CIのモニタリングにstackdirver使ってみてる話
Search
int
January 15, 2019
Technology
0
150
CIのモニタリングにstackdirver使ってみてる話
GCPUG Tokyo Stackdriver Day January 2019 にてLTで発表した資料です。
まだMetricsのみなので頑張っていきたい
int
January 15, 2019
Tweet
Share
More Decks by int
See All by int
Terraformerのおはなし
int_tt
3
3.5k
Other Decks in Technology
See All in Technology
KiCadでPad on Viaの基板作ってみた
iotengineer22
0
290
B2C&B2B&社内向けサービスを抱える開発組織におけるサービス価値を最大化するイニシアチブ管理
belongadmin
1
6.6k
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
150
Zephyr RTOSを使った開発コンペに参加した件
iotengineer22
1
220
Tech-Verse 2025 Global CTO Session
lycorptech_jp
PRO
0
1.8k
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
270
Operating Operator
shhnjk
1
570
Connect 100+を支える技術
kanyamaguc
0
200
How Do I Contact HP Printer Support? [Full 2025 Guide for U.S. Businesses]
harrry1211
0
110
使いたいMCPサーバーはWeb APIをラップして自分で作る #QiitaBash
bengo4com
0
1.9k
自律的なスケーリング手法FASTにおけるVPoEとしてのアカウンタビリティ / dev-productivity-con-2025
yoshikiiida
1
16k
Sansanのデータプロダクトマネジメントのアプローチ
sansantech
PRO
0
100
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
270
21k
Raft: Consensus for Rubyists
vanstee
140
7k
Facilitating Awesome Meetings
lara
54
6.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Fireside Chat
paigeccino
37
3.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
BBQ
matthewcrist
89
9.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Agile that works and the tools we love
rasmusluckow
329
21k
Transcript
$*ͷϞχλϦϯάʹ TUBDLEJSWFSͬͯΈͯΔ GCPUG Tokyo Stackdriver Day January 2019 LT
XIPBNJ • ͍Μͱ !JOU@UU ◦ ৽ଔ̎ ΠϯϑϥΤϯδχΞ • ͬͯΔ͜ͱ ◦
ΦϯϓϨ͔ΒΫϥυ·Ͱ ◦ ͓ࣄͰΫϥυͱίϯςφपΓ ◦ ࠷ۙ044׆ಈ DPOUSJCVUJPO ঃʑʹग़དྷΔΑ͏ʹͳָ͖͍ͬͯͯ͠ • ͖! " # $ % & • 4UBDLESJWFSྺҰϲ݄ !ྺ͘Β͍
࣍ • Ϟνϕʔγϣϯ • 1SPNFUIFVTUPTUBDLESJWFSʹ͍ͭͯ • ͬͯΈͰͲ͏͔ͩͬͨ
Ϟνϕʔγϣϯ • ৽ن։ൃҊ݅ʹͯ($1Λར༻ • ,VCFSOFUFTར༻ (,& • $PODPVSTF$* 1JWPUBM ͷ$*Λར༻
◦ ͜Ε(,&্Ͱར༻ ◦ 13͝ͱͷࣗಈςετࣗಈσϓϩΠେ׆༂த • ͕ͬͭΓ͍ͬͯΔͷͰɺ$*͕͍ͱશͯͷ࡞ۀ͕͘ͳͬͯ͠·͏ ◦ ͪΌΜͱϞχλϦϯά͍ͨ͠ • ͔ͤͬ͘($1ͬͯΔͷͰTUBDLESJWFSͰϞχλϦϯάͰ͖Δͱ࠷ߴ
Ϟνϕʔγϣϯ • ཉ͍͠ใ ◦ ֤8PSLFSͷ.FUSJDT $16 .FNPSZ *0ͳͲ ▪ (,&ͷϞχλϦϯάΛ0/ʹ͢Δͱ͙͢ݟ͑Δ
࠷ߴʂʂʂʂ ◦ ֤8PSLFSͷίϯςφQJQFMJOFͷϝτϦΫε ▪ σϑΥϧτͩͱݟ͑ͳ͍
ConcourseMetrics • https://concourse-ci.org/metrics.html
ConcourseMetrics • https://concourse-ci.org/metrics.html
Stackdriver… • ͔ͤͬ͘4UBDLESJWFSͬͯΔͷʹ%BUBEPH/FX3FMJDΛ͏ͷʜ ◦ ҰͭͷαʔϏεͰϞχλϦϯάπʔϧ͕ࢄཚ͍͍ͯͯ͜͠ͱແ͍ • 1SPNFUIFVTݐͯΔͷԯ߷ ◦ ͳΔ͘.POJUPSJOHใͷूઌϑϧϚωʔδυ͕خ͍͠
1SPNFUIFVTUPTE • IUUQTHJUIVCDPN(PPHMF$MPVE1MBUGPSNLTTUBDLESJWFSUSFFNBTUFSQSPNFUIFVTUPTE • 1SPNFUIFVTͷFYQPSUFS͔ΒTUBDLESJWFSͷDVTUPNNFUSJDTͰѻ͑Δܗʹม ͯ͘͠ΕΔ • (,&্ͷGMVFOUEͷϝτϦΫε 1SPNFUIFVT ΛૹΔͨΊʹ෦Ͱར༻ͯ͠
͍Δ • ($&PS(,&্ͷΈಈ࡞ ެࣜΑΓ
͍ํ • ͜Μͳײ͡ͷZBNMΛॻ͍ͯTJEFDBSͰ͚ͯEFQMPZ͢Δ͚ͩ - name: prometheus-to-sd image: gcr.io/google-containers/prometheus-to-sd:v0.3.2 ports: -
name: profiler containerPort: 6060 command: - /monitor - --stackdriver-prefix=custom.googleapis.com - --source=concourse:http://localhost:9391 - --pod-id=$(POD_NAME) - --namespace-id=$(POD_NAMESPACE) env: - name: POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace 1PE Web container prometheus-to-sd locahost:9391/metric stackdirver
͜Μͳײ͡ʹͳΔ # HELP concourse_builds_finished_total Total number of Concourse builds finished.
# TYPE concourse_builds_finished_total counter concourse_builds_finished_total 174
มͷఆٛ • AQSPNFUIFVT UFYUGPSNBUA͔ΒTUBDLESJWFSͷ֤छύϥϝʔλมҎԼͷ௨Γ • .FUJSD5ZQF ◦ $06/5&3͔ )*45(3".$6.6-"5*7& ◦
ͦΕҎ֎ ("6(& func extractMetricKind(mType dto.MetricType) string { if mType == dto.MetricType_COUNTER || mType == dto.MetricType_HISTOGRAM { return "CUMULATIVE" } return "GAUGE" } https://github.com/GoogleCloudPlatform/k8s-stackdriver/blob/3d2aa1aacdd55c78cb2bfb74799ecf9d17fa0801/prometheus-to-sd/translator/translator.go#L379-L384
มͷఆٛ • 7BMVF5ZQF ◦ ͢ͰʹDVTUPN.FUSJDT͕ఆٛ͞Ε͍ͯΔ߹ఆٛ͞Ε͍ͯΔํʹै͏ ◦ .FUSJDT5ZQF͕)*450(3"%*453*#65*0/ ◦ ͦΕҎ֎ */5
func extractValueType(mType dto.MetricType, originalDescriptor *v3.MetricDescriptor) string { if originalDescriptor != nil { return originalDescriptor.ValueType } if mType == dto.MetricType_HISTOGRAM { return "DISTRIBUTION" } return "INT64" } https://github.com/GoogleCloudPlatform/k8s-stackdriver/blob/3d2aa1aacdd55c78cb2bfb74799ecf9d17fa0801/prometheus-to-sd/translator/translator.go#L386-L397
͏গ͠ৄ͘͠ • IUUQJOUUUIBUFOBCMPHKQFOUSZ • ίίʹॻ͖·ͨ͠
ͬͯΈͯ • ࠓͷͱ͜Ζಛʹͳ͍͑ͯ͘Δ • ެ͕ࣜDPOWFSUFSΛ४උͯ͘͠ΕͯΔͷخ͍͠ • ($1ͰऔಘͰ͖ΔϝτϦΫεͱ$*ͷΞϓϦέʔγϣϯϝτϦΫεͷ͓͔͛Ͱ ͍͔ͭ͘ϘτϧωοΫΛՄࢹԽग़དྷͨɻ ◦ ಛఆͷQJQFMJOF͕ͬͯΔͱ͖ʹ(,&ͷOPEFʹͯEJTLͷ5ISPUUMF͕ൃੜ͍ͯ͠Δ͜ͱ͕໌
◦ IUUQTDMPVEHPPHMFDPNDPNQVUFEPDTEJTLTQFSGPSNBODF • $VTUPNNFUSJDT༗ྉͳͷͰ͓ஈʹҙ • ͏ͪΐͬͱӡ༻ͨ͠ΓɺଞTUBDLESJWFSͷαʔϏεͱ࿈ܞͯͬ͠ͱ৭Μ ͳใΛूΊͯΈ͍ͨɻ