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
JCConf 2020 Observing in Microservices
Search
Shihyu Ho
November 18, 2020
Programming
0
660
JCConf 2020 Observing in Microservices
Lessons learned observing in Microservices
Shihyu Ho
November 18, 2020
Tweet
Share
More Decks by Shihyu Ho
See All by Shihyu Ho
JCConf 2022 - Using ArchUnit to test your architecture
shihyuho
0
120
hybrid-cloud-seminar.pdf
shihyuho
0
81
JCConf 2021 Access Kubernetes API in Java
shihyuho
0
110
iThome Kubernetes Summit 2018
shihyuho
0
47
JCConf 2016 zookeeper
shihyuho
0
50
Other Decks in Programming
See All in Programming
私の考える初学者がBlazorできるまでの学習方法
tomokusaba
1
250
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
900
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
1
1.1k
The Future of Frontend i18n : Intl.MessageFormat
sajikix
1
2.5k
マルチモジュールにおけるテスト最適化
fxwx23
0
190
New Order in Cascade Sorting Order
mugi_uno
3
2.5k
LR で JSON パーサーを作る / Coding LR JSON Parser
junk0612
2
180
iOSの隠されたAPIを解明し、開発効率を向上させる方法/iOSDC24
noppefoxwolf
2
130
Ruby Parser progress report 2024
yui_knk
2
190
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
230
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.1k
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
360
Featured
See All Featured
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
What's in a price? How to price your products and services
michaelherold
242
11k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
190
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
28
2.2k
The World Runs on Bad Software
bkeepers
PRO
64
11k
Debugging Ruby Performance
tmm1
72
12k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
88
16k
It's Worth the Effort
3n
182
27k
A Philosophy of Restraint
colly
202
16k
Building Adaptive Systems
keathley
36
2.1k
How to name files
jennybc
75
98k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
Transcript
Lessons learned observing in Microservices Matt Ho
SoftLeader RD Matt Ho https://github.com/shihyuho
Microservices!
Move from Spring Cloud to Kubernetes native!
好多 App, 平常沒事, But...
Infrastructure 0
Tracing App App App container platform
Monitoring App App App container platform cpu/memory/VM heap … cpu/memory/VM
heap …
Loggin g App App App container platform
Kubernetes on-premises
原⽣的, ⼀裝好什麼都沒有!
不能客製呦!
不是在做比較
Tracing 1
Using OpenTracing #
github.com/opentracing-contrib/ java-spring-cloud
Put tracing in response #
App filter response request api add trace info
Add tracing in logger MDC #
App A log MDC
None
None
None
None
None
Create your Spans #
time Span A Span B Span C Span D 外部呼叫
trace
None
Propagating messages #
None
App A App B App C App D Queue Baggage
App A App B App C App D REST gRPC
Queue Enqueue Dequeue Baggage
None
Monitoring 2
Prometheus & exporters #
- node-exporter - Hardware/OS metric s - cAdvisor - Container
metric s - kube-state-metrics - Kubernetes Object metrics 環境類 exporters
github.com/prometheus-operator/ kube-prometheus
None
None
None
- blackbox - Probing over HTTP, HTTPS, DNS … -
micrometer.io - Java app metrics 服務類 exporters
None
None
https://grafana.com/grafana/ dashboards
Logging 3
Define logging format #
JSON logging format
github.com/logstash/ logstash-logback-encoder
Append app information #
app_name, app_version…
None
None
ES index strategy #
By namespace and date
None
Forwarding logs from { … } #
Fluentd Forward Log format OCP DockerSwarm Forward Other Cluster
App App App App App App
好多 App, 平常沒事, But...
Thanks