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
710
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
37
JCConf 2022 - Using ArchUnit to test your architecture
shihyuho
0
130
hybrid-cloud-seminar.pdf
shihyuho
0
88
JCConf 2021 Access Kubernetes API in Java
shihyuho
0
110
iThome Kubernetes Summit 2018
shihyuho
0
58
JCConf 2016 zookeeper
shihyuho
0
56
Other Decks in Programming
See All in Programming
Ça bouge du côté des animations CSS !
goetter
2
150
CloudNativePGを布教したい
nnaka2992
0
110
Jakarta EE meets AI
ivargrimstad
0
320
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
120
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
250
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
670
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.5k
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
490
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
370
PRレビューのお供にDanger
stoticdev
1
230
Featured
See All Featured
It's Worth the Effort
3n
184
28k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Building Applications with DynamoDB
mza
93
6.2k
A Modern Web Designer's Workflow
chriscoyier
693
190k
YesSQL, Process and Tooling at Scale
rocio
172
14k
KATA
mclloyd
29
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
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