Observability in the world
of Microservices
Chandresh Pancholi
About me
● Working as Software engineer and leading India office for One Concern
● Worked with Flipkart & Arvind group
● Apache committer for project Apache gossip
● Speaker at Meetups & Conferences
Coordinates:
Email: chandresh@oneconcern.com
Linkedin: https://www.linkedin.com/in/chandresh-pancholi-467a8015/
About One Concern
One concern is a multi-hazard platform which is on the mission of saving lives and
build resilience & livelihood everywhere.
Our platform provides unprecedented situational awareness and actionable insights
for decision-makers.
One Concern currently monitors 12,076,661 residential and 651,917 commercial
buildings. We monitor earthquakes for 36M people.
website: https://oneconcern.com
Monolith vs Microservice
Observability
“Observability is a measure of how well internal states of a
system can be inferred from knowledge of its external outputs”.
Pillars of Observability
1. Monitoring
2. Logging
3. Tracing
Monitoring
1. Prometheus
2. Graphite
3. InfluxDB
Logging
1. FluentD
2. FluentBit
3. Logstash
Tracing
● Jaeger
● Zipkin
● Kiali
Jaeger Architecture
Jaeger benefits
● Distributed transaction monitoring
● Performance & latency optimisation
● Root cause analysis
● Service dependency analysis
● Distributed context propagation
Jaeger features
● Uses consistent upfront sampling with individual per service/endpoint
probabilities
● Multiple storage backends: Cassandra, Elasticsearch, memory.
● Adaptive sampling
● Post-collection data processing pipeline
● Libraries available in Java, GO, Node, Python, C++
Terminology
● Span ⇒ A span represents a logical unit of work in Jaeger that has an operation
name, the start time of the operation, and the duration. Spans may be nested
and ordered to model causal relationships.
● Trace ⇒ A trace is a data/execution path through the system, and can be
thought of as a directed acyclic graph of spans.
Demo
We Are Hiring?

Observability in the world of microservices

  • 1.
    Observability in theworld of Microservices Chandresh Pancholi
  • 2.
    About me ● Workingas Software engineer and leading India office for One Concern ● Worked with Flipkart & Arvind group ● Apache committer for project Apache gossip ● Speaker at Meetups & Conferences Coordinates: Email: chandresh@oneconcern.com Linkedin: https://www.linkedin.com/in/chandresh-pancholi-467a8015/
  • 3.
    About One Concern Oneconcern is a multi-hazard platform which is on the mission of saving lives and build resilience & livelihood everywhere. Our platform provides unprecedented situational awareness and actionable insights for decision-makers. One Concern currently monitors 12,076,661 residential and 651,917 commercial buildings. We monitor earthquakes for 36M people. website: https://oneconcern.com
  • 4.
  • 5.
    Observability “Observability is ameasure of how well internal states of a system can be inferred from knowledge of its external outputs”.
  • 6.
    Pillars of Observability 1.Monitoring 2. Logging 3. Tracing
  • 7.
  • 9.
  • 12.
  • 13.
  • 14.
    Jaeger benefits ● Distributedtransaction monitoring ● Performance & latency optimisation ● Root cause analysis ● Service dependency analysis ● Distributed context propagation
  • 15.
    Jaeger features ● Usesconsistent upfront sampling with individual per service/endpoint probabilities ● Multiple storage backends: Cassandra, Elasticsearch, memory. ● Adaptive sampling ● Post-collection data processing pipeline ● Libraries available in Java, GO, Node, Python, C++
  • 16.
    Terminology ● Span ⇒A span represents a logical unit of work in Jaeger that has an operation name, the start time of the operation, and the duration. Spans may be nested and ordered to model causal relationships. ● Trace ⇒ A trace is a data/execution path through the system, and can be thought of as a directed acyclic graph of spans.
  • 18.
  • 19.