- Various changes around metrics produced by jaeger-query: Names scoped to the query component, generated for all span readers (not just ES), consolidate query metrics and include result tag (#1074, #1075 and #1096, @objectiser)
For example, sample of metrics produced for find_traces
operation before:
jaeger_find_traces_attempts 1
jaeger_find_traces_errLatency_bucket{le="0.005"} 0
jaeger_find_traces_errors 0
jaeger_find_traces_okLatency_bucket{le="0.005"} 0
jaeger_find_traces_responses_bucket{le="0.005"} 1
jaeger_find_traces_successes 1
And now:
jaeger_query_latency_bucket{operation="find_traces",result="err",le="0.005"} 0
jaeger_query_latency_bucket{operation="find_traces",result="ok",le="0.005"} 2
jaeger_query_requests{operation="find_traces",result="err"} 0
jaeger_query_requests{operation="find_traces",result="ok"} 2
jaeger_query_responses_bucket{operation="find_traces",le="0.005"} 2
- Compare two traces (#228, @tiffon)
- Make tags clickable (#223, @divdavem)
- Directed graph as React component (#224, @tiffon)
- Timeline Expand and Collapse Features (#221, @davit-y)
- Integrate Google Analytics into Search Page (#220, @davit-y)
jaeger-standalone
binary has been renamed tojaeger-all-in-one
. This change also includes package rename fromstandalone
toall-in-one
(#1062, @pavolloffay)
- (Experimental) Allow storing tags as object fields in Elasticsearch for better Kibana support((#1018, @pavolloffay)
- Enable tracing of Cassandra queries (#1038, @yurishkuro)
- Make Elasticsearch index configurable (#1009, @pavolloffay)
- Add flags to allow changing ports for HotROD services (#951, @cboornaz17)
- (Experimental) Kafka ingester (#952, #942, #944, #940, @davit-y and @vprithvi))
- Use tags in agent metrics (#950, @eundoosong)
- Add support for Cassandra reconnect interval (#934, @nyanshak)
-
The storage implementations no longer write the parentSpanID field to storage (#856). If you are upgrading to this version, you must upgrade query service first!
-
Update Dockerfiles to reference executable via ENTRYPOINT (#815) by Zachary DiCesare (@zdicesare)
It is no longer necessary to specify the binary name when passing flags to containers. For example, to execute the
help
command of the collector, instead of$ docker run -it --rm jaegertracing/jaeger-collector /go/bin/collector-linux help
run
$ docker run -it --rm jaegertracing/jaeger-collector help
-
Detect HTTP payload format from Content-Type (#916) by Yuri Shkuro (@yurishkuro)
When submitting spans in Thrift format to HTTP endpoint
/api/traces
, theformat
argument is no longer required, but the Content-Type header must be set to "application/vnd.apache.thrift.binary". -
Change metric tag from "service" to "svc" (#883) by Won Jun Jang (@black-adder)
-
Add Kafka as a Storage Plugin (#862) by David Yeghshatyan (@davit-y)
The collectors can be configured to write spans to Kafka for further data mining.
-
Package static assets inside the query-service binary (#918) by Yuri Shkuro (@yurishkuro)
It is no longer necessary (but still possible) to pass the path to UI static assets to jaeger-query and jaeger-standalone binaries.
-
Replace domain model with Protobuf/gogo-generated model (#856) by Yuri Shkuro (@yurishkuro)
First step towards switching to Protobuf and gRPC.
-
Include HotROD binary in the distributions (#917) by Yuri Shkuro (@yurishkuro)
-
Improve HotROD demo (#915) by Yuri Shkuro (@yurishkuro)
-
Add DisableAutoDiscovery param to cassandra config (#912) by Bill Westlin (@whistlinwilly)
-
Add connCheckTimeout flag to agent (#911) by Henrique Rodrigues (@Henrod)
-
Ability to use multiple storage types (#880) by David Yeghshatyan (@davit-y)
- [ES storage] Log number of total and failed requests (#902) by Tomasz Adamski (@tmszdmsk)
- [ES storage] Do not log requests on error (#901) by Tomasz Adamski (@tmszdmsk)
- [ES storage] Do not exceed ES _id length limit (#905) by Łukasz Harasimowicz (@harnash) and Tomasz Adamski (@tmszdmsk)
- Add cassandra index filter (#876) by Won Jun Jang (@black-adder)
- Close span writer in standalone (#863) (4 weeks ago) by Pavol Loffay (@pavolloffay)
- Log configuration options for memory storage (#852) (6 weeks ago) by Juraci Paixão Kröhling (@jpkrohling)
- Update collector metric counters to have a name (#886) by Won Jun Jang (@black-adder)
- Add CONTRIBUTING_GUIDELINES.md (#864) by (@PikBot)
- Add bounds to memory storage (#845) by Juraci Paixão Kröhling (@jpkrohling)
- Add metric for debug traces (#796) by Won Jun Jang (@black-adder)
- Change metrics naming scheme (#776) by Juraci Paixão Kröhling (@jpkrohling)
- Remove ParentSpanID from domain model (#831) by Yuri Shkuro (@yurishkuro)
- Add ability to adjust static sampling probabilities per operation (#827) by Won Jun Jang (@black-adder)
- Support log-level flag on agent (#828) by Won Jun Jang (@black-adder)
- Add healthcheck to standalone (#784) by Eundoo Song (@eundoosong)
- Do not use KeyValue fields directly and use KeyValues as decorator only (#810) by Yuri Shkuro (@yurishkuro)
- Upgrade to go 1.10 (#792) by Prithvi Raj (@vprithvi)
- Do not create Cassandra index if it already exists (#782) by Greg Swift (@gregswift)
- None
- Publish binaries for Linux, Darwin, and Windows (#765) - thanks to @grounded042
- View Trace JSON buttons return formatted JSON (fixes #199)
- Support traces with >10k spans in Elasticsearch (#668) - thanks to @sramakr
- Allow slash '/' in service names (#586)
- Log errors from HotROD services (#769)
- Add sampling handler with file-based configuration for agents to query (#720) (#674)
- Allow overriding base path for UI/API routes and remove --query.prefix (#748)
- Add Dockerfile for hotrod example app (#694) <Guilherme Baufaker Rêgo>
- Publish hotrod image to docker hub (#702)
- Dockerize es-index-cleaner script (#741)
- Add a flag to control Cassandra consistency level (#700)
- Collect metrics from ES bulk service (#688)
- Allow zero replicas for Elasticsearch (#754)
- Apply namespace when creating Prometheus metrics factory (fix for #732) (#733)
- Disable double compression on Prom Handler - fixes #697 (#735) <Juraci Paixão Kröhling>
- Use the default metricsFactory if not provided (#739)
- Avoid duplicate expvar metrics - fixes #716 (#726)
- Make sure different tracers in HotROD process use different random generator seeds (#718)
- Test that processes with identical tags are deduped (#708)
- When converting microseconds to time.Time ensure UTC timezone (#712)
- Add to WaitGroup before the goroutine creation (#711)
- Pin testify version to ^1.2.1 (#710)
- Support running Jaeger behind a reverse proxy (fixes #42)
- Track Javascript errors via Google Analytics (fixes #39)
- Add Google Analytics event tracking for actions in trace view (#191)
- Clearly identify traces without a root span (fixes #190)
- Fix #166 JS error on search page after viewing 404 trace
- Use elasticsearch bulk API (#656)
- Support archive storage in the query-service (#604)
- Introduce storage factory framework and composable CLI (#625)
- Make agent host port configurable in hotrod (#663)
- Add signal handling to standalone (#657)
- Remove the override of GOMAXPROCS (#679)
- Use UTC timezone for ES indices (#646)
- Fix elasticsearch create index race condition error (#641)
- Use Ant Design instead of Semantic UI (jaegertracing/jaeger-ui#169)
- Fix 2 digit lookback (12h, 24h) parsing (jaegertracing/jaeger-ui#167)
- Add support for retrieving unadjusted/raw traces (#615)
- Add CA certificates to collector/query images (#485)
- Parse zipkin v2 high trace id (#596)
- Skip nil and zero length hits in ElasticSearch storage (#601)
- Make Cassandra service_name_index inserts idempotent (#587)
- Align atomic int64 to word boundary to fix SIGSEGV (#592)
- Add adjuster that removes bad span references (#614)
- Set operationNames cache initial capacity to 10000 (#621)
- Change tag search input syntax to logfmt (jaegertracing/jaeger-ui#145)
- Make threshold for enabling DAG view configurable (jaegertracing/jaeger-ui#130)
- Show better error messages for failed API calls (jaegertracing/jaeger-ui#127)
- Add View Option for raw/unadjusted trace (jaegertracing/jaeger-ui#153)
- Add timezone tooltip to custom lookback form-field (jaegertracing/jaeger-ui#161)
- Use consistent icons for logs expanded/collapsed (jaegertracing/jaeger-ui#86)
- Encode service name in API calls to allow '/' (jaegertracing/jaeger-ui#138)
- Fix endless trace HTTP requests (jaegertracing/jaeger-ui#128)
- Fix JSON view when running in dev mode (jaegertracing/jaeger-ui#139)
- Fix trace name resolution (jaegertracing/jaeger-ui#134)
- Only JSON.parse JSON strings in tags/logs values (jaegertracing/jaeger-ui#162)
- Support Prometheus metrics as default for all components (#516)
- Enable TLS client connections to Cassandra (#555)
- Fix issue where Domain to UI model converter double reports references (#579)
- Make dependencies tab configurable (#122)
- Verify stored search settings jaegertracing/jaeger-ui#111
- Fix browser back button not working correctly jaegertracing/jaeger-ui#110
- Handle FOLLOWS_FROM ref type jaegertracing/jaeger-ui#118
- Allow embedding custom UI config in index.html #490
- Add startTimeMillis field to JSON Spans submitted to ElasticSearch #491
- Introduce version command and handler #517
- Fix ElasticSearch aggregation errors when index is empty #535
- Change package from uber to jaegertracing #528
- Introduce logging level configuration #514
- Support Zipkin v2 json #518
- Add HTTP compression handler #545
- Refactor trace detail jaegertracing/jaeger-ui#53
- Virtualized scrolling for trace detail view jaegertracing/jaeger-ui#68
- Mouseover expands truncated text to full length in left column in trace view jaegertracing/jaeger-ui#71
- Make left column adjustable in trace detail view jaegertracing/jaeger-ui#74
- Fix trace mini-map blurriness when < 60 spans jaegertracing/jaeger-ui#77
- Fix Google Analytics tracking jaegertracing/jaeger-ui#81
- Improve search dropdowns jaegertracing/jaeger-ui#84
- Add keyboard shortcuts and minimap UX jaegertracing/jaeger-ui#93
- Add tracing to the query server #454
- Support configuration files #462
- Add cassandra tag filter #442
- Handle ports > 32k in Zipkin JSON #488
- Convert to Apache 2.0 License
- Add health check server to collector and query #280
- Add/fix sanitizer for Zipkin span start time and duration #333
- Support Zipkin json encoding for /api/v1/spans HTTP endpoint #348
- Support Zipkin 128bit traceId and ipv6 #349
- Add viper/cobra configuration support #245 #307
- Add Zipkin /api/v1/spans endpoint #282
- Add basic authenticator to configs for cassandra #323
- Add Elasticsearch storage support
- Bug fix: Query startup should fail when -query.static-files has no trailing slash #144
- Push to Docker Hub on release tags #246
First numbered release.