1## Unreleased 2 3- fix: Shutdown `MetricServiceClient` properly on `StackdriverStatsExporter.unregister()` (#2007) 4 5## 0.28.3 - 2021-01-12 6 7- fix: Return public access to unsafe `ContextUtils` api. Remove bincompat issue from 0.27.1. (#2072) 8- fix: When time rewinds, avoid throwing exceptions and crashing the disruptor thread. (#2071) 9 10## 0.28.2 - 2020-10-22 11 12- feat: Make TracerImpl public for OpenTelemetry migration. (#2064) 13 14Note: no binary available for 0.28.2 15 16## 0.28.1 - 2020-10-21 17 18- feat: Add Support for Opencensus to OpenTelemetry migration (#2059) 19 20Breaking change: ContextUtils is no longer public 21 22## 0.28.0 - 2020-10-21 23 24- Remove finalize from RecordEventsSpanImpl (#2043) 25 26## 0.27.0 - 2020-08-14 27- deps: update protobuf (#2029) 28- Update release versions for all readme and build files. (#2028) 29- deps: update Guava to 29.0 (#2032) 30- Add more InstanaExporterHandler tests (#2014) 31- feat: Allow users to specify a metric display name prefix, separately from the metric name prefix (#2050) 32 33## 0.26.0 - 2020-03-19 34- feat: Allow users to register the same Meter multiple times without exception (#2017) 35- update gRPC (#2024): Since gRPC v1.27.0, census dependency is removed from grpc-core. A grpc-census 36artifact now exists to provide interceptor/stream tracer factory that applies census stats/tracing features. 37For users not using gRPC’s integration of census, nothing should be affected. Users who want census integration 38need to add grpc-census artifact to runtime classpath. 39- deps: update GSON (#2025) 40- deps: update auth libraries (#2023) 41- update guava (#2018) 42 43## 0.25.0 - 2020-02-12 44- Add an experimental artifact `opencensus-contrib-observability-ready-util`, that allows users to 45use OpenCensus easily. 46 47## 0.24.0 - 2019-08-27 48- Remove `CONTEXT_SPAN_KEY` and `TAG_CONTEXT_KEY` from API. This will be a breaking change to those who 49depend on these two keys, but anyone except gRPC shouldn't use it directly anyway. 50 51## 0.23.0 - 2019-06-12 52- Make `StackdriverStatsExporter.unregister()` a public API. 53- Add support spring plugin for http servlet and AsyncRestTemplate. 54 55## 0.22.1 - 2019-05-21 56- Increase the buffer size for the trace export batch to 2500 (previously it was 32). 57 58## 0.22.0 - 2019-05-14 59- Disable RunningSpanStore by default unless the z-pages contrib is linked and initialized. This may 60break behaviors for applications that rely on this to be always enabled. 61- Provide a `Deadline` option to Stackdriver Trace exporter. Default value is 10 seconds if it's not set. 62- Provide a `Deadline` option to Stackdriver Stats exporter. Default value is 10 seconds. 63Also provide a `MetricServiceStub` option so that advanced users can use a custom Stackdriver 64Monitoring client to make RPCs. 65- Use `Configuration` builder pattern for creating `JaegerTraceExporter`, `ZipkinTraceExporter` and 66`InstanaTraceExporter`. Provide a `Deadline` option with default value 10 seconds. 67- Provide a `Deadline` option to Datadog, Elasticsearch and OcAgent exporter. Default value is 10 seconds. 68- Extract the common timeout logic of Trace exporters to `opencensus-exporter-trace-util`. 69 70## 0.21.0 - 2019-04-30 71- Add HTTP text format serializer to Tag propagation component. 72- Support constant labels in Gauge APIs. 73- Add an option to allow users to override the default "opencensus_task" metric label in Stackdriver Stats Exporter. 74- Allow setting custom namespace in Prometheus exporter. 75- Add Cumulative (`DoubleCumulative`, `LongCumulative`, `DerivedDoubleCumulative`, `DerivedLongCumulative`) APIs. 76- Add convenience APIs `TagContextBuilder.putLocal()` that adds non-propagating tags, 77and `TagContextBuilder.putPropagating()` that adds unlimited propagating tags. 78- Deprecate context keys for tags and spans. Provide helper methods for interacting with context. 79 80## 0.20.0 - 2019-03-28 81- Add OpenCensus Java OC-Agent Trace Exporter. 82- Add OpenCensus Java OC-Agent Metrics Exporter. 83- Add config option for Http-Servlet. 84- Add config option for Jetty Http Client. 85- Modified default value to false for publicEndpoint property in Http-Servlet. 86- Add a generic `AttachmentValue` class to support `Exemplar`. 87- Add Elasticsearch Trace Exporter. 88- Add `metrics.data` package to hold common classes shared between stats and metrics. 89- Refactor `Exemplar` and `AttachmentValue` to be under `metrics.data`. Note that this is a breaking change 90if you're using the `Exemplar` classes or APIs in the previous releases. 91- Add `TagMetadata` that defines the properties associated with a `Tag`. 92- Add `QueueMetricProducer` that supports pushing and buffering `Metric`s. 93 94## 0.19.0 - 2019-01-28 95- Add an artifact `opencensus-contrib-http-jetty-client` for instrumenting jetty http client. Add extractor for Jetty Client. 96- Add an artifact `opencensus-contrib-http-servlets` for instrumenting http servlets. Add extractor for Http Servlets. 97- Add support generic http server handler. 98- Add support for generic http client handler. 99- Add ability to filter metrics collected from Dropwizard registry. 100- Add an util artifact opencensus-contrib-dropwizard5 to translate Dropwizard metrics5 to OpenCensus. 101- Add metrics util package to be shared by all metrics exporters. 102- Add Datadog Trace Exporter. 103 104## 0.18.0 - 2018-11-27 105- Set the 106 [`trace_sampled` field](https://github.com/googleapis/googleapis/blob/8027f17420d5a323c7dfef1ae0e57d82f3b97430/google/logging/v2/log_entry.proto#L143-L149) in the Stackdriver `LogEntry` protocol buffer in `opencensus-contrib-log-correlation-stackdriver`. 107- Add support for w3c/distributed-tracing propagation format. 108- Add gRPC measures and views for real-time metrics in streaming RPCs. 109- Add Summary Metric support for Stackdriver exporter. 110- Reduce CPU usage for low qps applications. 111 112## 0.17.0 - 2018-11-02 113- Add `AttributeValueDouble` to `AttributeValue`. 114- Add `createWithSender` to `JaegerTraceExporter` to allow use of `HttpSender` 115 with extra configurations. 116- Add an API `Functions.returnToString()`. 117- Migrate to new Stackdriver Kubernetes monitored resource. This could be a breaking change 118 if you are using `gke_container` resources. For more info, 119 https://cloud.google.com/monitoring/kubernetes-engine/migration#incompatible 120- Add an util artifact `opencensus-contrib-dropwizard` to translate Dropwizard metrics to 121 OpenCensus. 122- Add Gauges (`DoubleGauge`, `LongGauge`, `DerivedDoubleGauge`, `DerivedLongGauge`) APIs. 123- Update `opencensus-contrib-log-correlation-log4j2` and 124 `opencensus-contrib-log-correlation-stackdriver` to match the 125 [OpenCensus log correlation spec](https://github.com/census-instrumentation/opencensus-specs/blob/master/trace/LogCorrelation.md) 126 and remove all `ExperimentalApi` annotations. 127- The histogram bucket boundaries (`BucketBoundaries`) and values (`Count` and `Sum`) are no longer 128 supported for negative values. The Record API drops the negative `value` and logs the warning. 129 This could be a breaking change if you are recording negative value for any `measure`. 130- Remove support for min/max in the stats Distribution to make it compatible with Metrics. 131 132## 0.16.1 - 2018-09-18 133- Fix ClassCastException in Log4j log correlation 134 ([#1436](https://github.com/census-instrumentation/opencensus-java/issues/1436)). 135- Allow users to report metrics for their registered domain (using custom prefix). This could be a 136 breaking change if you have custom prefix without (registered) domain. 137 138## 0.16.0 - 2018-09-14 139- Add APIs to register gRPC client and server views separately. 140- Add an API MeasureMap.putAttachment() for recording exemplars. 141- Add Exemplar class and an API to get Exemplar list to DistributionData. 142- Improve the styling of Rpcz, Statsz, Tracez, and Traceconfigz pages. 143- Add an artifact `opencensus-contrib-exemplar-util` that has helper utilities 144 on recording exemplars. 145- Reduce the default limit on `Link`s per `Span` to 32 (was 128 before). 146- Add Spring support for `@Traced` annotation and java.sql.PreparedStatements 147 tracing. 148- Allow custom prefix for Stackdriver metrics in `StackdriverStatsConfiguration`. 149- Add support to handle the Tracestate in the SpanContext. 150- Remove global synchronization from the get current stats state. 151- Add get/from{Byte} methods on TraceOptions and deprecate get/from{Bytes}. 152- Add an API to `StackdriverTraceConfiguration` to allow setting a 153 `TraceServiceStub` instance to be used for export RPC calls. 154- Add an experimental artifact, `opencensus-contrib-log-correlation-log4j2`, for 155 adding tracing data to Log4j 2 LogEvents. 156 157## 0.15.1 - 2018-08-28 158- Improve propagation performance by avoiding doing string formatting when calling checkArgument. 159 160## 0.15.0 - 2018-06-20 161- Expose the factory methods of MonitoredResource. 162- Add an experimental artifact, `opencensus-contrib-log-correlation-stackdriver`, for 163 correlating traces and logs with Stackdriver Logging. 164 165## 0.14.0 - 2018-06-04 166- Adds Tracing.getExportComponent().shutdown() for use within application shutdown hooks. 167- `Duration.create` now throws an `IllegalArgumentException` instead of 168 returning a zero `Duration` when the arguments are invalid. 169- `Timestamp.create` now throws an `IllegalArgumentException` instead of 170 returning a zero `Timestamp` when the arguments are invalid. 171- Remove namespace and help message prefix for Prometheus exporter. This could be 172 a breaking change if you have Prometheus metrics from OpenCensus Prometheus exporter 173 of previous versions, please point to the new metrics with no namespace instead. 174- Add an util artifact `opencensus-contrib-appengine-standard-util` to interact with the AppEngine 175 CloudTraceContext. 176- Add support for Span kinds. (fix [#1054](https://github.com/census-instrumentation/opencensus-java/issues/1054)). 177- Add client/server started_rpcs measures and views to RPC constants. 178 179## 0.13.2 - 2018-05-08 180- Map http attributes to Stackdriver format (fix [#1153](https://github.com/census-instrumentation/opencensus-java/issues/1153)). 181 182## 0.13.1 - 2018-05-02 183- Fix a typo on displaying Aggregation Type for a View on StatsZ page. 184- Set bucket bounds as "le" labels for Prometheus Stats exporter. 185 186## 0.13.0 - 2018-04-27 187- Support building with Java 9. 188- Add a QuickStart example. 189- Remove extraneous dependencies from the Agent's `pom.xml`. 190- Deprecate `Window` and `WindowData`. 191- Add a configuration class to the Prometheus stats exporter. 192- Fix build on platforms that are not supported by `netty-tcnative`. 193- Add Jaeger trace exporter. 194- Add a gRPC Hello World example. 195- Remove usages of Guava collections in `opencensus-api`. 196- Set unit "1" when the aggregation type is Count. 197- Auto detect GCE and GKE Stackdriver MonitoredResources. 198- Make Error Prone and FindBugs annotations `compileOnly` dependencies. 199- Deprecate `Mean` and `MeanData`. 200- Sort `TagKey`s in `View.create(...)`. 201- Add utility class to expose default HTTP measures, tags and view, and register 202 default views. 203- Add new RPC measure and view constants, deprecate old ones. 204- Makes the trace and span ID fields mandatory in binary format. 205- Auto detect AWS EC2 resources. 206- Add `Duration.toMillis()`. 207- Make monitored resource utils a separate artifact `opencensus-contrib-monitored-resource-util`, 208 so that it can be reused across exporters. 209- Add `LastValue`, `LastValueDouble` and `LastValueLong`. Also support them in 210 stats exporters and zpages. Please note that there is an API breaking change 211 in methods `Aggregation.match()` and `AggregationData.match()`. 212 213## 0.12.3 - 2018-04-13 214- Substitute non-ascii characters in B3Format header key. 215 216## 0.12.2 - 2018-02-26 217- Upgrade disruptor to include the fix for SleepingWaitStrategy causing 100% 218 CPU. 219 220## 0.12.1 - 2018-02-26 221- Fix performance issue where unused objects were referenced by the Disruptor. 222- Fix synchonization issue in the use of the Disruptor. 223 224## 0.12.0 - 2018-02-16 225- Rename trace exporters that have inconsistent naming. Exporters with legacy 226 names are deprecated. 227- Fixed bug in CloudTraceFormat that made it impossible to use short span id's. 228- Add `since` Javadoc tag to all APIs. 229- Add a configuration class to create StackdriverTraceExporter. 230- Add MessageEvent and deprecate NetworkEvent. 231- Instana Trace Exporter. 232- Prometheus Stats Exporter. 233- Stats Zpages: RpcZ and StatsZ. 234- Dependency updates. 235 236## 0.11.1 - 2018-01-23 237- Fixed bug that made it impossible to use short span id's (#950). 238 239## 0.11.0 - 2018-01-19 240- Add TextFormat API and two implementations (B3Format and CloudTraceFormat). 241- Add helper class to configure and create StackdriverStatsExporter. 242- Add helper methods in tracer to wrap Runnable and Callbacks and to run them. 243- Increase trace exporting interval to 5s. 244- Add helper class to register views. 245- Make stackdriver stats exporter compatible with GAE Java7. 246- Add SignalFX stats exporter. 247- Add http propagation APIs. 248- Dependency updates. 249 250## 0.10.0 - 2017-12-04 251- Add NoopRunningSpanStore and NoopSampledSpanStore. 252- Change the message event to include (un)compressed sizes for Tracez Zpage. 253- Use AppEngine compatible way to create threads. 254- Add new factory methods that support setting custom Stackdriver 255 MonitoredResource for Stackdriver Stats Exporter. 256- Dependency updates. 257 258## 0.9.1 - 2017-11-29 259- Fix several implementation bugs in Stackdriver Stats Exporter (#830, #831, 260 etc.). 261- Update length limit for View.Name to 255 (previously it's 256). 262 263## 0.9.0 - 2017-11-17 264- Initial stats and tagging implementation for Java (`impl`) and Android 265 (`impl-lite`). This implements all the stats and tagging APIs since v0.8.0. 266- Deprecate Tags.setState and Stats.setState. 267- Add a setStatus method in the Span. 268- OpenCensus Stackdriver Stats Exporter. 269- OpenCensus Stackdriver Trace Exporter is updated to use Stackdriver Trace V2 270 APIs. 271- Dependency updates. 272