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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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.6k
Other Decks in Technology
See All in Technology
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
160
Context Engineeringの取り組み
nutslove
0
370
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
830
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
160
Webhook best practices for rock solid and resilient deployments
glaforge
2
300
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.2k
Greatest Disaster Hits in Web Performance
guaca
0
280
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
220
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
760
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
110
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
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ͷαʔϏεͱ࿈ܞͯͬ͠ͱ৭Μ ͳใΛूΊͯΈ͍ͨɻ