It’s an extensible OSS Java agent for OpenTracing that enables end-to-end tracing without having to write any code.
With only a single command-line entry for installation, SpecialAgent seamlessly connects to OpenTracing-compliant tracers — such as the Jaeger and LightStep tracers — allowing you to immediately start observing and propagating distributed traces.
What Makes SpecialAgent Different?
SpecialAgent was built by the OpenTracing community with contributions from the LightStep team. It is architected for compatibility, resiliency, and stability (you can read more about the architecture on the OpenTracing blog), and has a number of benefits:
Automated. By automatically installing plugins, you can achieve end-to-end tracing without having to write any code.
Extensible. SpecialAgent loads the same instrumentation you would load by hand. Adding new instrumentation plugins to SpecialAgent is easy, and anyone can extend the SpecialAgent to include their own plugins.
Portable. Unlike proprietary agents, SpecialAgent can send data to any tracing system that supports OpenTracing.
Robust. Safe and production ready. SpecialAgent can install all OpenTracing Java plugins, and runs on Java versions 1.7 and up.
Seamless. SpecialAgent is able to do both static and dynamic attach, which means you can attach the agent to already-running programs without stopping.
Why Does This Matter?
Distributed traces capture and propagate critical details about transactions as they cross microservices boundaries.
Once you start aggregating and analyzing groups of traces, you can answer important questions about your system — quickly and with evidence:
Which service should we roll back?
Which host is overloaded?
Which customer is sending bad requests?
Will this optimization improve performance for my service?
What services is my service dependent on?
In order to take advantage of these insights, you first have to install tracers and plugins for every service. For large organizations, manual instrumentation can require some work.
This is where Java SpecialAgent comes into play — it makes instrumentation easy.
As long as I have been programming, the console has been my friend. I’m writing code, and I want to visualize it better. Slap in a few debug logs, check out the console, and carry on. This. Is. My. Life.
But as much as I love my console, I also love structured data. Trace data is inherently structured. It’s visual. Let’s take advantage of that.
This brings us to Developer Mode.
At LightStep, we want to make it as easy as possible for organizations to adopt best-of-breed tracing. It can be hard to write instrumentation without a good feedback loop. Developer Mode acts like a console for tracing: Hit execute, and instantly see your traces. Spans stream live on the screen, so you can debug quickly while staying in your flow.
What Can You Do with Developer Mode?
See traces in real time, while you write applications.
Debug software during development.
Run experiments and tutorials.
What Does Developer Mode Do?
Developer Mode allows engineers — and anyone new to tracing — to quickly get up and running with a local tracing solution.
With Developer Mode, you have your own personal tracing sandbox. This includes a Developer Satellite you run locally, and a UI for displaying a live stream of events. Simply configure your tracer to send to localhost, and you can see real-time traces whenever you execute code.
I’m happy to announce the Observability Practitioners Summit. This will be a single day, single track conference, co-located at KubeCon 2018 in Seattle. Talks will be focused on new developments and research in tracing, metrics, and related observability issues. Basically, a day of nerd talks for observability practitioners. No intro talks, product pitches, or basic overviews. We’ll be down in the details, discussing algorithms, techniques, and fundamental problems with observability at scale.
After the talks, we’ll have space for mingling and ad-hoc discussion groups, along with food and drinks. LightStep is a core sponsor of the event, so we’ll be there. Come geek out with us!
Please note the CFP deadline is September 21st, so it’s coming up. Reach out if you have any questions.
In addition to the conference, there will be space available for observability-related groups to meet and work on their projects in person. Fill in the CFP if you’re part of an observability project (especially one working on interop and standardization) and are seeking meeting space for members to work together, before or after KubeCon.