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
The Importance of Observability for Kafka-based...
Search
Jorge Quilcate
September 10, 2018
Programming
2.3k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The Importance of Observability for Kafka-based applications with Zipkin
https://github.com/jeqo/talk-kafka-zipkin
Jorge Quilcate
September 10, 2018
More Decks by Jorge Quilcate
See All by Jorge Quilcate
Making sense of Event-Driven Systems
jeqo
0
230
Making sense of event-driven dataflows - Kafka Summit NYC 2019
jeqo
0
700
distributed tracing and observability for your integration platform - OUGN 2018
jeqo
0
140
Reactive Patterns and Distributed Systems - OUGN 2018
jeqo
0
150
Increasing Observability with Distributed Tracing
jeqo
0
330
Observando Sistemas Distribuidos - PeruJUG
jeqo
1
490
From Messaging to Logs with Apache Kafka - OUGN17
jeqo
0
480
Scale WebLogic, the Kubernetes way - OUGN17
jeqo
1
830
De Mensajería hacia Logs con Apache Kafka - PeruJUG
jeqo
1
450
Other Decks in Programming
See All in Programming
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
400
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
870
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
360
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
360
Cloudflare is Agents
chimame
0
190
Hono + Inertia + React で LP を構築した話
oukayuka
2
190
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.8k
My Marp Sample
sinoue0108
0
140
Webエンジニアなのにブラウザの仕組みがわからないので、Pythonで自作してみた
tatsuki12
4
1.6k
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
220
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
180
ALB ログから Trace を気合で繋げる技術
fohte
7
840
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.6k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
230
Claude Code のすすめ
schroneko
67
230k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
270
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
We Have a Design System, Now What?
morganepeng
55
8.3k
Are puppies a ranking factor?
jonoalderson
2
3.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Transcript
The Importance of Observability for Kafka-based applications with Zipkin
[email protected]
Jorge Quilcate-Otoya @jeqo89 github.com/jeqo github.com/sysco-middleware Middleware team at SYSCO AS
focused on Data-Integration and Distributed Tracing
SYSCO AS Middleware department: Integration and Data Engineering We are
hiring! Partners: github.com/sysco-middleware sysco.no/
Agenda Event-Driven Applications and Kafka Observability and Distributed Tracing Simulating
Observability tools
Apache Kafka “Apache Kafka® is a distributed Streaming platform.”
Event-Driven Applications and Kafka Amazonas river
Event-Driven Architectural Style https://docs.microsoft.com/en-us/azure/architecture/guide/architecture-styles/event-driven
Service Collaboration and Dataflow Svc Svc Svc Svc Orchestration Event
Bus Svc Svc Svc Svc Choreography
https://www.slideshare.net/ConfluentInc/etl-is-dead-long-live-streams Kafka Ecosystem
Observability and Distributed Tracing Titicaca Lake
What is Observability? “In control theory, observability is a measure
of how well internal states of a system can be inferred from knowledge of its external outputs.” - Wikipedia
Observability is for *Unknown Unknowns* https://twitter.com/mipsytipsy/status/963956028940234752
Observability methods
Observability methods
Span = execution of a task Trace = tree of
spans Context Propagation = pass trace context between distributed components (e.g. HTTP Headers, Kafka-record Headers) Distributed Tracing Concepts
Demo Lab 01: Hello world to Distributed Tracing • Tracing
concepts • Brave instrumentation https://github.com/jeqo/talk-kafka-zipkin#lab-1-hello-world-distributed-tracing
Adoption approaches Annotation-based - Part of your code - Instrument
libraries first - Add custom spans on-demand - Check benchmarks Black-box
How does it work? Svc 0 Svc 1 tracer tracer
Collector Tracing System Tracing DB
Zipkin Architecture
Demo Lab 02: Tracing Kafka-based applications • Kafka-clients and Kafka-streams
instrumentation • Kafka Interceptors for Kafka Connectors https://github.com/jeqo/talk-kafka-zipkin#lab-02-twitter-kafka-based-application
Adoption approaches Annotation-based - Part of your code - Instrument
libraries first - Add custom spans on-demand - Check benchmarks Black-box - Agent-based model - Framework/Protocol support - Machine impact - Promising approach: Service Mesh/Sidecar Proxy
Service Meshes and Zipkin
#QOTD https://twitter.com/rakyll/status/971231712049971200
Simulating Observability tools Lima - Chorrillos
➔ Model your architecture ➔ Simulate interaction ➔ Generate Traces
➔ Visualize your system’s traffic with Vizceral “SimianViz/ Spigo” - Simulation Protocol Interaction in GO github.com/adrianco/spigo
"Monitoring Microservices: A Challenge" - Adrian Cockcroft
Models from Traces, e.g. Vizceral https://www.youtube.com/watch?v=jWpI8qzqNHk
Demo Lab 03: Spigo and Vizceral • Spigo for Simulation
of Architecture behavior • Zipkin for Tracing and Vizceral for Traffic Monitoring https://github.com/jeqo/talk-kafka-zipkin#lab-3-spigo-simulation
Takeaways ➔ If are doing Distributed Systems — using Kafka
or not — consider Distributed Tracing. ➔ Instrument libraries first, not your code. ➔ Experiment by simulating your deployment. ➔ How many models can you build from tracing data?!
References Papers - Dapper: https://static.googleusercontent.com/media/research.google.com /en//pubs/archive/36356.pdf - Canopy: http://cs.brown.edu/~jcmace/papers/kaldor2017canopy.pdf -
Automating Failure Testing Research at Internet Scale: https://people.ucsc.edu/~palvaro/socc16.pdf Posts: - Logging v. Instrumentation https://peter.bourgon.org/blog/2016/02/07/logging-v-instrument ation.html - Monitoring and Observability https://medium.com/@copyconstruct/monitoring-and-observability -8417d1952e1c - Monitoring in the Time of Cloud Native https://medium.com/@copyconstruct/monitoring-in-the-time-of-cl oud-native-c87c7a5bfa3e Tools: - Zipkin: https://zipkin.io/ - Brave: https://github.com/openzipkin/brave - Kafka Interceptors: https://github.com/sysco-middleware/kafka-interceptors - Spigo: https://github.com/adrianco/spigo - Vizceral: https://github.com/Netflix/vizceral
Thanks! Q&A github.com/jeqo/talk-kafka-zipkin github.com/sysco-middleware Machu Picchu