SlideShare a Scribd company logo
@tyler_treat
The Observability Pipeline
Tyler Treat / deliver:Agile 2019 / April 29, 2019
@tyler_treat
The way we build systems has
fundamentally changed.
@tyler_treat
Our systems are more complex
than they’ve ever been.
@tyler_treat
Don’t believe me?
@tyler_treat
https://www.youtube.com/watch?v=xy3w2hGijhE
@tyler_treat
Pets vs. Cattle
@tyler_treat
This is our server.
His name is Toby.
@tyler_treat
We take good care of Toby.
@tyler_treat
We release to him twice a year.

(quarterly if we’re feeling dangerous)
@tyler_treat
Toby is compatible with most

versions of Internet Explorer.
@tyler_treat
Toby likes to go on long walks,

so sometimes we’ll take him 

offline for a bit.

(usually just nights and weekends)
@tyler_treat
No one seems to mind.
@tyler_treat
Sometimes Toby crashes,

but we always make sure

to restart him.
@tyler_treat
We like Toby.
@tyler_treat
This is 74db150601cd.
@tyler_treat
It’s best not to get too

attached because when he’s

no longer needed, well…
@tyler_treat
@tyler_treat
Transactional

DB
App Server
Reporting

DB
@tyler_treat
Transactional

DB
App Server
Reporting

DB
@tyler_treat
“We need to be
highly available.”
@tyler_treat
Transactional

DB
App Server
Reporting

DB
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
@tyler_treat
“We need to support
every device.”
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
@tyler_treat
“We need faster
response times.”
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
Node 1 Node 2 Node 3
Node 4 Node 5
Cache Cluster
@tyler_treat
“We need real-time
analytics, not batch.”
@tyler_treat
Node 1
App Server
Reporting

DB
Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
Node 1 Node 2 Node 3
Node 4 Node 5
Cache Cluster
@tyler_treat
App Server
Node 1 Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
Node 1 Node 2 Node 3
Node 4 Node 5
Cache Cluster
Node 1 Node 2 Node 3
Node 4 Node 5
BI Data Cluster
BI Server BI Server
Data Pipeline
@tyler_treat
“We need to release
multiple times a day.”
@tyler_treat
App Server
Node 1 Node 2 Node 3
Node 4 Node 5
Database Cluster
App Server App Serverrver
Node 1 Node 2 Node 3
Node 4 Node 5
Cache Cluster
Node 1 Node 2 Node 3
Node 4 Node 5
BI Data Cluster
BI Server BI Server
Data Pipeline
@tyler_treat
Node 1 Node 2 Node 3
Node 4 Node 5
BI Data Cluster
BI Server BI Server
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
Data Pipeline
@tyler_treat
“We need to support
multiple geos.”
@tyler_treat
Node 1 Node 2 Node 3
Node 4 Node 5
BI Data Cluster
BI Server BI Server
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
1 2 3
4 5
Database Cluster
1 2 3
4 5
Cache Cluster
Microservice
Data Pipeline
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
Asia Pacific
BI Server BI Server
Microservice Microservice
Microservice Microservice
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
@tyler_treat
“Oh, and one more
thing…”
@tyler_treat
“…we need to do
DevOps.”
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
“DevOps”
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
@tyler_treat
The way we build systems has
fundamentally changed.
@tyler_treat
Because our constraints and expectations
have fundamentally changed.
@tyler_treat
Cloud and containers have led to much
more distributed and dynamic systems.
@tyler_treat
Transactional

DB
App Server
Reporting

DB
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
“DevOps”
@tyler_treat
This shift has exposed deficiencies
in our tools and practices…
@tyler_treat
…and has led to new tools created
to help us support our systems.
@tyler_treat
How do we make sense of it all?
@tyler_treat
In particular, how do we make
this…
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
“DevOps”
@tyler_treat
more like this…
@tyler_treat
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
North America
BI Server BI Server
Microservice Microservice
Microservice Microservice
CDN
CI/CD
Repo Repo Repo Repo
Builder Builder Builder
Builder Builder Builder
Artifacts Artifacts Artifacts
Deployer Deployer
Infrastructure
Load Balancers Orchestrators DNS Configuration . . .
“DevOps”
@tyler_treat
“The Observability Pipeline”
@tyler_treat
A Brave New World
@tyler_treat
Operations for
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
System Behavior
grep
@tyler_treat
APM
Debugger
Profiler
SSH
System Behavior
Actual Customer Impact
grep
@tyler_treat
Operations for
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
grep
@tyler_treat
APM
Debugger
Profiler
SSH
Testing in Production at Scale, Amit Gud
grep
@tyler_treat
APM
Debugger
Profiler
SSH
System Behavior
Actual Customer Impact
???grep
@tyler_treat
grep
APM
Debugger
Profiler
SSH
System Behavior
Actual Customer Impact
???
@tyler_treat
Also, culture.
@tyler_treat
Many companies rely on a separate
operations team to monitor, triage, and
even resolve issues.
@tyler_treat
This model doesn’t map to the world
of microservices and containers.
@tyler_treat
And it leads to ineffective
feedback loops.
@tyler_treat
In order for developers to take on this
responsibility, they need to be enabled.
@tyler_treat
“DevOps” teams are really
“Developer Enablement” teams.
@tyler_treat
This shift in how we build systems has
caused an explosion of new tools and
terminology.
@tyler_treat
“Observability”
@tyler_treat
Post Hoc vs. Ad Hoc
@tyler_treat
Data Available
Understanding
@tyler_treat
Data Available
Understanding
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
@tyler_treat
Data Available
Understanding
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
@tyler_treat
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
@tyler_treat
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
@tyler_treat
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
FACTS
@tyler_treat
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
FACTS
HYPOTHESES
@tyler_treat
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
ASSUMPTIONS FACTS
HYPOTHESES
@tyler_treat
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
DISCOVERIES
Data Available
Understanding
Unknown Knowns
• Things we understand but are not
aware of
• “We implemented an orchestrator to
ensure the system is always running”
Known Knowns
• Things we are aware of and understand
• “The system has a 1GB memory limit”
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
ASSUMPTIONS FACTS
HYPOTHESES
@tyler_treat
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
DISCOVERIES
Data Available
Understanding
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
HYPOTHESES
MonitoringObservability
@tyler_treat
Unknown Unknowns
• Things we are neither aware of nor
understand
• “Instances churn because the
orchestrator restarts the process when
it approaches its memory limit, causing

sporadic failures and slowdowns”
DISCOVERIES
Data Available
Understanding
Known Unknowns
• Things we are aware of but don’t
understand
• “The system exceeded its memory limit
and crashed, causing an outage”
HYPOTHESES
TestingExploring
@tyler_treat
“The army is now fully prepared
to fight the previous war.”
@tyler_treat


Observability Data
application logs
system logs
audit logs
application metrics
distributed traces
events
@tyler_treat
Some

challenges…


Observability Data
application logs
system logs
audit logs
application metrics
distributed traces
events
- Locked up inside a single vendor’s solution
- Not readily available across the enterprise

(or in some cases, too readily available)
- Many tools and products needed for

different data and use cases
- Tool and data needs vary from team to

team
- Ever-changing landscape of tools, products,

and services
- Sheer volume of data can be overwhelming
@tyler_treat
System
@tyler_treat
System
Splunk
Universal
Forwarder
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog Metrics
Agent
Datadog APM
Agent
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog Metrics
Agent
Datadog APM
Agent
Universal
Analytics Client
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog Metrics
Agent
Datadog APM
Agent
Universal
Analytics Client
Amazon Glacier
S3 Client
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
Amazon Glacier
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Sp
Un
For
Universal
Analytics Client
System System System System
@tyler_treat
“Oh, actually we want to change
how we parse our logs.”
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Sp
Un
For
Universal
Analytics Client
System System System System
@tyler_treat
“Re-roll the agents."
@tyler_treat
“Oh, actually we want to use
Sumo Logic for logging.”
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sp
Un
For
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Splunk
Universal
Forwarder
Universal
Analytics Client
Sp
Un
For
Universal
Analytics Client
System System System System
@tyler_treat
“Re-roll the agents."
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sum
Co
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sum
Co
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sum
Co
Universal
Analytics Client
System System System System
@tyler_treat
“Oh, actually we want to use
New Relic for APM.”
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sum
Co
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sumo Logic
Collector
Datadog APM
Agent
Universal
Analytics Client
S3 Client
…
Datadog Metrics
Agent
System
Sum
Co
Datad
A
Universal
Analytics Client
S3 Client
…
Datado
A
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sum
Co
Universal
Analytics Client
System System System System
@tyler_treat
“Re-roll the agents."
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sum
Co
Universal
Analytics Client
System System System System
@tyler_treat
“Oh, actually we want to evaluate
Honeycomb for debugging.”
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sum
Co
Universal
Analytics Client
System System System System
@tyler_treat
“Re-roll the agents."
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sumo Logic
Collector
Universal
Analytics Client
S3 Client
…
New Relic APM
Agent
System
Sum
Co
Universal
Analytics Client
S3 Client
…
New R
A
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sumo Logic
Collector
Universal
Analytics Client
Sum
Co
Universal
Analytics Client
System System System System
Honeytail AgentHoneytail Agent Honeytail Agent Honey
Honeytail Agent Honeytail Agent Honeytail Agent Honey
@tyler_treat
You get the idea.
@tyler_treat
How big of a lift is it for your
organization to change tools?
@tyler_treat
How easy is it to experiment
with new ones?
@tyler_treat
Data Sources
• VMs
• Containers
• Load balancers
• Service meshes
• Audit logs
• VPC flow logs
• Firewall logs
• …
Data Sinks
• Centralized logging
• SIEM
• Monitoring
• APM
• Alerting
• Cold storage
• BI
• …
What data to send?
Where to send it?
How to send it?
@tyler_treat
A decoupled approach
@tyler_treat
What data to send?
Where to send it?
How to send it?
Data Sources
• VMs
• Containers
• Load balancers
• Service meshes
• Audit logs
• VPC flow logs
• Firewall logs
• …
Data Sinks
• Centralized logging
• SIEM
• Monitoring
• APM
• Alerting
• Cold storage
• BI
• …
Observability Pipeline
@tyler_treat
Anatomy of an Observability Pipeline
@tyler_treat
Structure your damn data.
1. Data Specifications
@tyler_treat
log.error(“User '{}' login failed”.format(user))
@tyler_treat
ERROR 2019-04-05 13:26.42 User ‘tylertreat' login failed
@tyler_treat
log.error(“User login failed”,
event=LOGIN_ERROR,
user=“tylertreat”,
email=“tyler.treat@realkinetic.com”,
error=error)
@tyler_treat
{
“timestamp”: “2019-04-05 13:26.42”,
“level”: “ERROR”,
“event”: “user_login_error”,
“user”: “tylertreat”,
“email”: “tyler.treat@realkinetic.com”,
“error”: “Invalid username or password”,
“message”: “User login failed”
}
@tyler_treat
JSON is fine.
@tyler_treat
Pass a context object to
everything.
@tyler_treat
def login(ctx, username, email, password):
ctx.set(user=username, email=email)
...
log.error(“User login failed”,
event=LOGIN_ERROR,
context=ctx,
error=error)
...
@tyler_treat
{
“timestamp”: “2019-04-05 13:26.42”,
“level”: “ERROR”,
“event”: “user_login_error”,
“context”: {
“id”: “accfbb8315c44a52ad893ca6772e1caf”,
“http_method”: “POST”,
“http_path”: “/login”,
“user”: “tylertreat”,
“email”: “tyler.treat@realkinetic.com”,
},
“error”: “Invalid username or password”,
“message”: “User login failed”
}
@tyler_treat
{
“timestamp”: “2019-04-05 13:26.42”,
“level”: “ERROR”,
“event”: “user_login_error”,
“context”: {
“id”: “accfbb8315c44a52ad893ca6772e1caf”,
“http_method”: “POST”,
“http_path”: “/login”,
“user”: “tylertreat”,
“email”: “tyler.treat@realkinetic.com”,
},
“error”: “Invalid username or password”,
“message”: “User login failed”
}
@tyler_treat
What goes on the context?
@tyler_treat
What can you get for “free” and
what do you need to pass along?
@tyler_treat
Create standard specs for each data
type collected (logs, metrics, traces).
@tyler_treat
Specs can enforce required fields (e.g.
user id, license, trace id) and data types.
@tyler_treat
{
“timestamp”: “2019-04-05 13:26.42”,
“level”: “INFO”,
“event”: “user_login”,
“context”: {
“id”: “accfbb8315c44a52ad893ca6772e1caf”,
“http_method”: “POST”,
“http_path”: “/login”,
“user”: “tylertreat”,

“user_id”: “3bb12f6c63274abe87fd1ee4ee37f3d2”,

“license”: “942e6543f0844be680e72003d5e060fd”,
“email”: “tyler.treat@realkinetic.com”,
}
}
@tyler_treat
Be mindful not to log sensitive
data like passwords.
@tyler_treat
Specs alone aren’t enough!
2. Specification Libraries
@tyler_treat
Empowering developers requires
providing tools that align the “easy” path
with the “right” path.
@tyler_treat
We need libraries that implement the
specs and make it easy for devs to
instrument their systems.
@tyler_treat
• Java: log4j
• Go: logrus
• Python: structlog
• Ruby: ruby-cabin
• .NET: serilog
• JS: structured-log
• etc.
There are many
existing libraries
for structured
logging.
@tyler_treat
For tracing and
metrics, there are
vendor-neutral APIs
like OpenTracing
and OpenCensus.
@tyler_treat
We need a lightweight agent that can
collect data from hosts/containers.
3. Data Collector
@tyler_treat
Collect data, perform transformations/
filters, and write it to the data pipeline.
@tyler_treat
Typically runs as an agent on the
host (DaemonSet in Kubernetes).
@tyler_treat
Data is written to stdout/stderr
or a Unix domain socket.
@tyler_treat
Just use
Fluentd or
Logstash
(+Beats).
@tyler_treat
We need a scalable, fault-tolerant data
stream to handle the firehose of
observability data generated.
4. Data Pipeline
@tyler_treat
This also provides a buffer that
decouples producers from consumers.
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
Amazon Glacier
S3 Client
…
Datadog Metrics
Agent
@tyler_treat
System
Splunk
Universal
Forwarder
Datadog APM
Agent
Universal
Analytics Client
Amazon Glacier
S3 Client
…
Datadog Metrics
Agent
@tyler_treat
Lots of options…
@tyler_treat
@tyler_treat
We need a component to consume data
from the pipeline, perform filtering, and
write it to the appropriate backends.
5. Data Router
@tyler_treat
May perform transformations and processing of data,
but heavy processing should be the responsibility of a
backend system (e.g. alerting or aggregations).
@tyler_treat
This is where the data spec
comes into play.
@tyler_treat
The data type determines how
incoming data is routed.
@tyler_treat
Data Pipeline
Amazon Glacier
Data Router
logs
traces
metrics
@tyler_treat
Data Pipeline
Amazon Glacier
Data Router
logs
traces
metrics
@tyler_treat
Data Pipeline
Amazon Glacier
Data Router
logs
traces
metrics
@tyler_treat
This is primarily a stateless
component writing to APIs.
@tyler_treat
Good fit for
“serverless”
solutions.
@tyler_treat
Piecing It All Together
@tyler_treat
@tyler_treat
You don’t need to build it out all
in one go.
@tyler_treat
There are quick wins along the
way!
@tyler_treat
Evolving to an Observability Pipeline
• Adopt structured logging
• Move log/data collection out of process
• Use a centralized logging system
• Introduce a streaming data solution
• Start adding data consumers
@tyler_treat
Moving from host-centric to
service-centric observability.
@tyler_treat
This maps to VMs and containers as
well as it does to “serverless” models.
@tyler_treat
Ops
Systems
Production
Product

Development
Product

Management
Security &

Compliance
Support/

Helpdesk
@tyler_treat
Dev/Ops/SRE
Systems
Production
Audit
Business Analytics
Pricing Decisions
Data-Driven Product Decisions
Threat Detection
Monitoring
Debugging & Operational Insights
...
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Dev/Ops/SRE
Systems
Production
@tyler_treat
Benefits
• Pattern can be evolved to with quick wins along the way
• Maps to elastic and serverless architectures better
• Empowers teams in siloed organizations and unlocks data for other parts
of the business
• Enables teams to use the tools best suited to their needs
• Easier to change tools or evaluate them side-by-side by decoupling
• Minimizes impact on developers and the core system
@tyler_treat
But it’s not a silver bullet.
@tyler_treat
Downsides
• Moving away from agent-based model means we have to handle data
routing ourselves
• A lot of the Data Router components might need to be custom-made
using various vendor SDKs or client libraries (assuming they have
APIs)
• This also means we might lose some of the value-add features of
certain agents
• Unclear how well this maps to pull-based models (e.g. Prometheus)
@tyler_treat
CI/CD Pipeline +

Observability Pipeline
@tyler_treat
CI/CD
Pre-
Production

(theorizing about
known unknowns)
Post-
Production

(learning from
unknown unknowns)
Observability
@tyler_treat
Thank You
realkinetic.com

bravenewgeek.com

More Related Content

What's hot

Observability at Scale
Observability at Scale Observability at Scale
Observability at Scale
Knoldus Inc.
 
Observability in Java: Getting Started with OpenTelemetry
Observability in Java: Getting Started with OpenTelemetryObservability in Java: Getting Started with OpenTelemetry
Observability in Java: Getting Started with OpenTelemetry
DevOps.com
 
OpenTelemetry Introduction
OpenTelemetry Introduction OpenTelemetry Introduction
OpenTelemetry Introduction
DimitrisFinas1
 
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
Splunk
 
OpenTelemetry For Operators
OpenTelemetry For OperatorsOpenTelemetry For Operators
OpenTelemetry For Operators
Kevin Brockhoff
 
OpenTelemetry For Architects
OpenTelemetry For ArchitectsOpenTelemetry For Architects
OpenTelemetry For Architects
Kevin Brockhoff
 
Combining logs, metrics, and traces for unified observability
Combining logs, metrics, and traces for unified observabilityCombining logs, metrics, and traces for unified observability
Combining logs, metrics, and traces for unified observability
Elasticsearch
 
Free GitOps Workshop + Intro to Kubernetes & GitOps
Free GitOps Workshop + Intro to Kubernetes & GitOpsFree GitOps Workshop + Intro to Kubernetes & GitOps
Free GitOps Workshop + Intro to Kubernetes & GitOps
Weaveworks
 
Elastic Observability
Elastic Observability Elastic Observability
Elastic Observability
FaithWestdorp
 
Docker Kubernetes Istio
Docker Kubernetes IstioDocker Kubernetes Istio
Docker Kubernetes Istio
Araf Karsh Hamid
 
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native WayMigrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
Databricks
 
Monitoring Microservices
Monitoring MicroservicesMonitoring Microservices
Monitoring Microservices
Weaveworks
 
Elastic Observability keynote
Elastic Observability keynoteElastic Observability keynote
Elastic Observability keynote
Elasticsearch
 
Observability
ObservabilityObservability
Observability
Ebru Cucen Çüçen
 
.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session
Splunk
 
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and LogstashKeeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
Amazon Web Services
 
Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability
Abigail Bangser
 
Automated Deployments with Ansible
Automated Deployments with AnsibleAutomated Deployments with Ansible
Automated Deployments with Ansible
Martin Etmajer
 
OpenTelemetry: From front- to backend (2022)
OpenTelemetry: From front- to backend (2022)OpenTelemetry: From front- to backend (2022)
OpenTelemetry: From front- to backend (2022)
Sebastian Poxhofer
 
Understand your system like never before with OpenTelemetry, Grafana, and Pro...
Understand your system like never before with OpenTelemetry, Grafana, and Pro...Understand your system like never before with OpenTelemetry, Grafana, and Pro...
Understand your system like never before with OpenTelemetry, Grafana, and Pro...
LibbySchulze
 

What's hot (20)

Observability at Scale
Observability at Scale Observability at Scale
Observability at Scale
 
Observability in Java: Getting Started with OpenTelemetry
Observability in Java: Getting Started with OpenTelemetryObservability in Java: Getting Started with OpenTelemetry
Observability in Java: Getting Started with OpenTelemetry
 
OpenTelemetry Introduction
OpenTelemetry Introduction OpenTelemetry Introduction
OpenTelemetry Introduction
 
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
How to Move from Monitoring to Observability, On-Premises and in a Multi-Clou...
 
OpenTelemetry For Operators
OpenTelemetry For OperatorsOpenTelemetry For Operators
OpenTelemetry For Operators
 
OpenTelemetry For Architects
OpenTelemetry For ArchitectsOpenTelemetry For Architects
OpenTelemetry For Architects
 
Combining logs, metrics, and traces for unified observability
Combining logs, metrics, and traces for unified observabilityCombining logs, metrics, and traces for unified observability
Combining logs, metrics, and traces for unified observability
 
Free GitOps Workshop + Intro to Kubernetes & GitOps
Free GitOps Workshop + Intro to Kubernetes & GitOpsFree GitOps Workshop + Intro to Kubernetes & GitOps
Free GitOps Workshop + Intro to Kubernetes & GitOps
 
Elastic Observability
Elastic Observability Elastic Observability
Elastic Observability
 
Docker Kubernetes Istio
Docker Kubernetes IstioDocker Kubernetes Istio
Docker Kubernetes Istio
 
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native WayMigrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
Migrating Airflow-based Apache Spark Jobs to Kubernetes – the Native Way
 
Monitoring Microservices
Monitoring MicroservicesMonitoring Microservices
Monitoring Microservices
 
Elastic Observability keynote
Elastic Observability keynoteElastic Observability keynote
Elastic Observability keynote
 
Observability
ObservabilityObservability
Observability
 
.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session
 
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and LogstashKeeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
Keeping Up with the ELK Stack: Elasticsearch, Kibana, Beats, and Logstash
 
Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability
 
Automated Deployments with Ansible
Automated Deployments with AnsibleAutomated Deployments with Ansible
Automated Deployments with Ansible
 
OpenTelemetry: From front- to backend (2022)
OpenTelemetry: From front- to backend (2022)OpenTelemetry: From front- to backend (2022)
OpenTelemetry: From front- to backend (2022)
 
Understand your system like never before with OpenTelemetry, Grafana, and Pro...
Understand your system like never before with OpenTelemetry, Grafana, and Pro...Understand your system like never before with OpenTelemetry, Grafana, and Pro...
Understand your system like never before with OpenTelemetry, Grafana, and Pro...
 

Similar to The Observability Pipeline

Distributed Systems Are a UX Problem
Distributed Systems Are a UX ProblemDistributed Systems Are a UX Problem
Distributed Systems Are a UX Problem
Tyler Treat
 
The Future of Ops
The Future of OpsThe Future of Ops
The Future of Ops
Tyler Treat
 
Concurrent Ruby Application Servers
Concurrent Ruby Application ServersConcurrent Ruby Application Servers
Concurrent Ruby Application Servers
Lin Jen-Shin
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
C4Media
 
Free The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own DomainFree The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own Domain
Ken Collins
 
Cilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPFCilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPF
Cynthia Thomas
 
Kuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails AppsKuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails Apps
Cameron Dutro
 
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
Laurent Bernaille
 
Tools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
Tools, Tips and Techniques for Developing Real-time Apps. Phil LeggetterTools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
Tools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
Future Insights
 
Microservices' draw back
Microservices' draw backMicroservices' draw back
Microservices' draw back
Bardia Heydari
 
Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014
ALTER WAY
 
How We Fixed Our MongoDB Problems
How We Fixed Our MongoDB Problems How We Fixed Our MongoDB Problems
How We Fixed Our MongoDB Problems
MongoDB
 
The New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data ExplorationThe New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data Exploration
Inside Analysis
 
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Codemotion
 
Rocking the microservice world with Helidon-LAOUCTour2023.pdf
Rocking the microservice world with Helidon-LAOUCTour2023.pdfRocking the microservice world with Helidon-LAOUCTour2023.pdf
Rocking the microservice world with Helidon-LAOUCTour2023.pdf
Alberto Salazar
 
Spinnaker Microsrvices
Spinnaker MicrosrvicesSpinnaker Microsrvices
Spinnaker Microsrvices
Ambassador Labs
 
Cybereason - behind the HackingTeam infection server
Cybereason - behind the HackingTeam infection serverCybereason - behind the HackingTeam infection server
Cybereason - behind the HackingTeam infection server
Amit Serper
 
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
InfluxData
 
Pinto+Stratopan+Love
Pinto+Stratopan+LovePinto+Stratopan+Love
Pinto+Stratopan+Love
Jeffrey Ryan Thalhammer
 
Development and continuous deployment with microservicies
Development and continuous deployment with microserviciesDevelopment and continuous deployment with microservicies
Development and continuous deployment with microservicies
Laura Morillo-Velarde Rodríguez
 

Similar to The Observability Pipeline (20)

Distributed Systems Are a UX Problem
Distributed Systems Are a UX ProblemDistributed Systems Are a UX Problem
Distributed Systems Are a UX Problem
 
The Future of Ops
The Future of OpsThe Future of Ops
The Future of Ops
 
Concurrent Ruby Application Servers
Concurrent Ruby Application ServersConcurrent Ruby Application Servers
Concurrent Ruby Application Servers
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Free The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own DomainFree The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own Domain
 
Cilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPFCilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPF
 
Kuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails AppsKuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails Apps
 
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
10 ways to shoot yourself in the foot with kubernetes, #9 will surprise you! ...
 
Tools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
Tools, Tips and Techniques for Developing Real-time Apps. Phil LeggetterTools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
Tools, Tips and Techniques for Developing Real-time Apps. Phil Leggetter
 
Microservices' draw back
Microservices' draw backMicroservices' draw back
Microservices' draw back
 
Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014
 
How We Fixed Our MongoDB Problems
How We Fixed Our MongoDB Problems How We Fixed Our MongoDB Problems
How We Fixed Our MongoDB Problems
 
The New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data ExplorationThe New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data Exploration
 
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
 
Rocking the microservice world with Helidon-LAOUCTour2023.pdf
Rocking the microservice world with Helidon-LAOUCTour2023.pdfRocking the microservice world with Helidon-LAOUCTour2023.pdf
Rocking the microservice world with Helidon-LAOUCTour2023.pdf
 
Spinnaker Microsrvices
Spinnaker MicrosrvicesSpinnaker Microsrvices
Spinnaker Microsrvices
 
Cybereason - behind the HackingTeam infection server
Cybereason - behind the HackingTeam infection serverCybereason - behind the HackingTeam infection server
Cybereason - behind the HackingTeam infection server
 
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
Upgrading Made Easy: Moving to InfluxDB 2.x or InfluxDB Cloud with Cribl LogS...
 
Pinto+Stratopan+Love
Pinto+Stratopan+LovePinto+Stratopan+Love
Pinto+Stratopan+Love
 
Development and continuous deployment with microservicies
Development and continuous deployment with microserviciesDevelopment and continuous deployment with microservicies
Development and continuous deployment with microservicies
 

More from Tyler Treat

Building a Distributed Message Log from Scratch - SCaLE 16x
Building a Distributed Message Log from Scratch - SCaLE 16xBuilding a Distributed Message Log from Scratch - SCaLE 16x
Building a Distributed Message Log from Scratch - SCaLE 16x
Tyler Treat
 
Building a Distributed Message Log from Scratch
Building a Distributed Message Log from ScratchBuilding a Distributed Message Log from Scratch
Building a Distributed Message Log from Scratch
Tyler Treat
 
So You Wanna Go Fast?
So You Wanna Go Fast?So You Wanna Go Fast?
So You Wanna Go Fast?
Tyler Treat
 
Simple Solutions for Complex Problems
Simple Solutions for Complex ProblemsSimple Solutions for Complex Problems
Simple Solutions for Complex Problems
Tyler Treat
 
Probabilistic algorithms for fun and pseudorandom profit
Probabilistic algorithms for fun and pseudorandom profitProbabilistic algorithms for fun and pseudorandom profit
Probabilistic algorithms for fun and pseudorandom profit
Tyler Treat
 
The Economics of Scale: Promises and Perils of Going Distributed
The Economics of Scale: Promises and Perils of Going DistributedThe Economics of Scale: Promises and Perils of Going Distributed
The Economics of Scale: Promises and Perils of Going Distributed
Tyler Treat
 
From Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed SystemsFrom Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed Systems
Tyler Treat
 

More from Tyler Treat (7)

Building a Distributed Message Log from Scratch - SCaLE 16x
Building a Distributed Message Log from Scratch - SCaLE 16xBuilding a Distributed Message Log from Scratch - SCaLE 16x
Building a Distributed Message Log from Scratch - SCaLE 16x
 
Building a Distributed Message Log from Scratch
Building a Distributed Message Log from ScratchBuilding a Distributed Message Log from Scratch
Building a Distributed Message Log from Scratch
 
So You Wanna Go Fast?
So You Wanna Go Fast?So You Wanna Go Fast?
So You Wanna Go Fast?
 
Simple Solutions for Complex Problems
Simple Solutions for Complex ProblemsSimple Solutions for Complex Problems
Simple Solutions for Complex Problems
 
Probabilistic algorithms for fun and pseudorandom profit
Probabilistic algorithms for fun and pseudorandom profitProbabilistic algorithms for fun and pseudorandom profit
Probabilistic algorithms for fun and pseudorandom profit
 
The Economics of Scale: Promises and Perils of Going Distributed
The Economics of Scale: Promises and Perils of Going DistributedThe Economics of Scale: Promises and Perils of Going Distributed
The Economics of Scale: Promises and Perils of Going Distributed
 
From Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed SystemsFrom Mainframe to Microservice: An Introduction to Distributed Systems
From Mainframe to Microservice: An Introduction to Distributed Systems
 

Recently uploaded

Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
aymanquadri279
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 

Recently uploaded (20)

Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 

The Observability Pipeline