They found best practices like: wrap each unit of work; report errors in a standard field; use span names that are specific enough to tell you what’s happening but general enough for useful grouping.
Then they tuned the span creations so that there wasn’t a bunch of duplicate-looking ones. Instead of repetitive spans, add more attributes.
“Add every identifier you have in your system” to help find problems.
For reassurance, they sent the events to their existing Elasticsearch as well as to @honeycombio .
But nobody looked at them there, so they turned it off later.
This part is cool: they turned the spans into formatted stdout lines for local dev.
And they emitted some of their span attributes to statsd for metrics, for the constantly-updating dashboards.
This gave them dashboards about what the service was doing.
If you look at the “three pillars” of observability from the top,
it’s all the same events.
Thinking trace-first proved useful.
Putting all this thought into a new way of doing things was meh —like, it was better, but not revolutionary.
(darn)
• • •
Missing some Tweet in this thread? You can try to
force a refresh
How do you take a legacy system toward fast flow of change? @suksr takes us through an evolution
using wholistic approaches including DDD, Wardley Mapping, and Team Topologies #QConLondon
The Wardley Map is only part of Wardley Mapping. There’s a whole strategy cycle
It’s not about how fast the team can program.
It’s about how fast the team can find solutions to each problem, uncover organizational secrets for how the domain works and should work.
There’s a conflict between cross-functional teams and the organizational hierarchy.
Enforcing the same JIRA workflow doesn’t make developers interchangable.
“It takes me weeks to develop rapport with teammates, months to learn domain and code, a few hours to learn a JIRA workflow.” @ntcoding#QConLondon
Smooth devex, sustainable flow:
“This is working in the government, six years ago.
No one else has an excuse anymore.” @ntcoding#QConLondon
A deep Java performance talk that I don’t have enough context for, by @PeterLawrey
Project Panama is about replacing JNI. Meantime, if you want to share memory between processes cleverly and safely, you can use their chronicle-bytes library. #QConLondon
“If you go down to the low level for too long, you wind up writing systems that can’t be altered.” @PeterLawrey#QConLondon