Our software is more complex than ever: applications must be reliable, predictable, and easy to use to meet modern expectations. As developers, this means our responsibilities have grown while the things we can control have stayed the same. In order to better understand our systems and create truly modern software, we need observability.
This workshop will walk through what observability means for Java developers and how to achieve it in our systems with the least amount of work using the open source observability project OpenTelemetry.
7. 7
● the ability to navigate from effect to cause
Observability (n)
For example…
Spike in errors → misconfiguration
Increased latency → new customer behavior
User complaints → upstream service deployed
12. 12
What is a
Deep System?
e.g., mobile, react, client APis
e.g., ingress controller
e.g., custom microservices
e.g., managed services
like DynamoDB
Independently
Managed
Layers
13. Too many tools and tool training
Service dependency visibility
Performance incidents
Deployments
Poll:
What is your biggest pain point
for monitoring performance?
14. 14
Say hi to OpenTelemetry
OpenTelemetry provides a single set
of APIs, libraries, agents, and collector
services to capture distributed traces
and metrics from your application.
https://opentelemetry.io/
15. 15
Context Propagation
Follow the transaction
● At scale, it is impossible to find the
relevant data. Too much noise.
● To investigate an issue, events and
metrics must first be contextualized.
○ Grouped by transaction
○ Grouped by resource
○ Grounded by product attributes
● Adding this context is a lot of work!
● OpenTelemetry does it for you.
Single Transaction
24. The right
observability solution
● Easily be able to see and understand
your highly distributed environment
● Immediately pinpoint performance
regression
● Enable developers to ship with
confidence
● Enable easy sharing of information
● Keep context
● Won’t miss an insight
24
25. LightStep:
Observability
with context
● Automatic deployment and
regression detection
● System and service diagrams
● Real-time and historical root cause
analysis
● Correlations
● Custom alerting
● Easy Setup with no vendor lock-in
● No cardinality limitations, really
25