Jaeger Agent
jaeger-agent
is a daemon program that runs on every host and receives
tracing information submitted by applications via Jaeger client
libraries.
Structure
- Agent
- processor as ThriftProcessor
- server as TBufferedServer
- reporter as TCollectorReporter
- sampling server
- sampling manager as sampling.TCollectorProxy
UDP Server
Listens on UDP transport, reads data as []byte
and forwards to
processor
over channel. Processor has N workers that read from
the channel, convert to thrift-generated object model, and pass on
to the Reporter. TCollectorReporter
submits the spans to remote
tcollector
service.
Sampling Server
An HTTP server handling request in the form
http://localhost:port/sampling?service=xxxx`
Delegates to sampling.Manager
to get the sampling strategy.
sampling.TCollectorProxy
implements sampling.Manager
by querying
remote tcollector
service. Then the server converts
thrift response from sampling manager into JSON and responds to clients.