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
700
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 2024 Jib
shihyuho
0
28
JCConf 2022 - Using ArchUnit to test your architecture
shihyuho
0
130
hybrid-cloud-seminar.pdf
shihyuho
0
86
JCConf 2021 Access Kubernetes API in Java
shihyuho
0
110
iThome Kubernetes Summit 2018
shihyuho
0
55
JCConf 2016 zookeeper
shihyuho
0
53
Other Decks in Programming
See All in Programming
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.4k
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.4k
AHC041解説
terryu16
0
450
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
140
[JAWS-UG横浜 #79] re:Invent 2024 の DB アップデートは Multi-Region!
maroon1st
0
100
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
730
선언형 UI에서의 상태관리
l2hyunwoo
0
270
Alba: Why, How and What's So Interesting
okuramasafumi
0
220
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
6
710
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
240
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
210
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
Code Review Best Practice
trishagee
65
17k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
970
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
580
Fireside Chat
paigeccino
34
3.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
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