Upgrading go.opencensus.io 0.18 to 0.19
Breakingv0.18.0 → v0.19.3Breaking4New11Changed11Fixed7Other14
BreakingUpgrade verdict
4 breaking changes.
In plain terms
- Renames the producer package to metricproducer.
- Makes Add, Delete, and GetAll associated with producer.Manager.
- Refactors ReadAll to Read and fixes a concurrency issue.
- The metric API introduced earlier is removed again in this release.
Must act Top 3 of 4 that need code or config changes
What you must change
Breaking4
Renames the producer package to metricproducer.
producermetricproducerMakes Add, Delete, and GetAll associated with producer.Manager.
AddDeleteGetAllproducer.ManagerRefactors ReadAll to Read and fixes a concurrency issue.
ReadAllReadReverts the metric API added in #975.
API changes
Generated by DepDelta from published Go source. Not mixed with prose notes.
- added:
field Options.BufferMaxCount: int
- added:
field Options.ConstLabels: prometheus.Labels
- added:
func NewRegistry() *Registry - added:
func WithDescription(string) Options - added:
func WithLabelKeys(...string) Options - added:
func WithUnit(metricdata.Unit) Options - added:
method Float64DerivedGauge.UpsertEntry(func() float64, ...metricdata.LabelValue) error - added:
method Float64Entry.Add(float64) - added:
method Float64Entry.Set(float64) - added:
method Float64Gauge.GetEntry(...metricdata.LabelValue) (*Float64Entry, error) - added:
method Int64DerivedGauge.UpsertEntry(func() int64, ...metricdata.LabelValue) error - added:
method Int64Gauge.GetEntry(...metricdata.LabelValue) (*Int64GaugeEntry, error) - added:
method Int64GaugeEntry.Add(int64) - added:
method Int64GaugeEntry.Set(int64) - added:
method Registry.AddFloat64DerivedGauge(string, ...Options) (*Float64DerivedGauge, error) - added:
method Registry.AddFloat64Gauge(string, ...Options) (*Float64Gauge, error) - added:
method Registry.AddInt64DerivedGauge(string, ...Options) (*Int64DerivedGauge, error) - added:
method Registry.AddInt64Gauge(string, ...Options) (*Int64Gauge, error) - added:
method Registry.Read() []*metricdata.Metric - added:
type Float64DerivedGauge: struct - added:
type Float64Entry: struct - added:
type Float64Gauge: struct - added:
type Int64DerivedGauge: struct - added:
type Int64Gauge: struct - added:
type Int64GaugeEntry: struct - added:
type Options: func(*metricOptions) - added:
type Registry: struct
- added:
const TypeCumulativeDistribution: Type - added:
const TypeCumulativeFloat64: Type - added:
const TypeCumulativeInt64: Type - added:
const TypeGaugeDistribution: Type - added:
const TypeGaugeFloat64: Type - added:
const TypeGaugeInt64: Type - added:
const TypeSummary: Type - added:
const UnitBytes: Unit - added:
const UnitDimensionless: Unit - added:
const UnitMilliseconds: Unit - added:
field Bucket.Count: int64 - added:
field Bucket.Exemplar: *Exemplar - added:
field BucketOptions.Bounds: []float64 - added:
field Descriptor.Description: string - added:
field Descriptor.LabelKeys: []string - added:
field Descriptor.Name: string - added:
field Descriptor.Type: Type - added:
field Descriptor.Unit: Unit - added:
field Distribution.BucketOptions: *BucketOptions - added:
field Distribution.Buckets: []Bucket - added:
field Distribution.Count: int64 - added:
field Distribution.Sum: float64 - added:
field Distribution.SumOfSquaredDeviation: float64 - added:
field Exemplar.Attachments: Attachments - added:
field Exemplar.Timestamp: time.Time - added:
field Exemplar.Value: float64 - added:
field LabelValue.Present: bool - added:
field LabelValue.Value: string - added:
field Metric.Descriptor: Descriptor - added:
field Metric.Resource: *resource.Resource - added:
field Metric.TimeSeries: []*TimeSeries - added:
field Point.Time: time.Time - added:
field Point.Value: interface{} - added:
field Snapshot.Count: int64 - added:
field Snapshot.Percentiles: map[float64]float64 - added:
field Snapshot.Sum: float64 - added:
field Summary.Count: int64 - added:
field Summary.HasCountAndSum: bool - added:
field Summary.Snapshot: Snapshot - added:
field Summary.Sum: float64 - added:
field TimeSeries.LabelValues: []LabelValue - added:
field TimeSeries.Points: []Point - added:
field TimeSeries.StartTime: time.Time - added:
func NewDistributionPoint(time.Time, *Distribution) Point - added:
func NewFloat64Point(time.Time, float64) Point - added:
func NewInt64Point(time.Time, int64) Point - added:
func NewLabelValue(string) LabelValue - added:
func NewSummaryPoint(time.Time, *Summary) Point - added:
method Point.ReadValue(ValueVisitor) - added:
method Type.String() string - added:
method ValueVisitor.VisitDistributionValue(*Distribution) - added:
method ValueVisitor.VisitFloat64Value(float64) - added:
method ValueVisitor.VisitInt64Value(int64) - added:
method ValueVisitor.VisitSummaryValue(*Summary) - added:
type Attachments: map[string]interface{} - added:
type Bucket: struct - added:
type BucketOptions: struct - added:
type Descriptor: struct - added:
type Distribution: struct - added:
type Exemplar: struct - added:
type LabelValue: struct - added:
type Metric: struct - added:
type Point: struct - added:
type Snapshot: struct - added:
type Summary: struct - added:
type TimeSeries: struct - added:
type Type: int - added:
type Unit: string - added:
type ValueVisitor: interface
- added:
field IntervalReader.ReportingInterval: time.Duration - added:
field ReaderOptions.SpanName: string - added:
func NewIntervalReader(*Reader, Exporter) (*IntervalReader, error) - added:
func NewReader(...ReaderOption) *Reader - added:
func WithSpanName(string) ReaderOption - added:
method Exporter.ExportMetrics(context.Context, []*metricdata.Metric) error - added:
method IntervalReader.Start() error - added:
method IntervalReader.Stop() - added:
method Reader.ReadAndExport(Exporter) - added:
type Exporter: interface - added:
type IntervalReader: struct - added:
type Reader: struct - added:
type ReaderOption: func(*ReaderOptions) - added:
type ReaderOptions: struct
- added:
func GlobalManager() *Manager - added:
method Manager.AddProducer(Producer) - added:
method Manager.DeleteProducer(Producer) - added:
method Manager.GetAll() []Producer - added:
method Producer.Read() []*metricdata.Metric - added:
type Manager: struct - added:
type Producer: interface
- added:
const URLAttribute - added:
func SetRoute(context.Context, string)
- added:
const EnvVarLabels - added:
const EnvVarType - added:
field Resource.Labels: map[string]string - added:
field Resource.Type: string - added:
func DecodeLabels(string) (map[string]string, error) - added:
func EncodeLabels(map[string]string) string - added:
func FromEnv(context.Context) (*Resource, error) - added:
func MultiDetector(...Detector) Detector - added:
type Detector: func(context.Context) (*Resource, error) - added:
type Resource: struct
- added:
method Float64Measure.Description() string - added:
method Float64Measure.Name() string - added:
method Float64Measure.Unit() string - added:
method Int64Measure.Description() string - added:
method Int64Measure.Name() string - added:
method Int64Measure.Unit() string
- changed:
field DistributionData.ExemplarsPerBucket: []*exemplar.Exemplar → field DistributionData.ExemplarsPerBucket: []*metricdata.Exemplar - added:
var ErrNegativeBucketBounds
- added:
const DefaultMaxAnnotationEventsPerSpan - added:
const DefaultMaxAttributesPerSpan - added:
const DefaultMaxLinksPerSpan - added:
const DefaultMaxMessageEventsPerSpan - added:
field Config.MaxAnnotationEventsPerSpan: int - added:
field Config.MaxAttributesPerSpan: int - added:
field Config.MaxLinksPerSpan: int - added:
field Config.MaxMessageEventsPerSpan: int - added:
field SpanData.ChildSpanCount: int - added:
field SpanData.DroppedAnnotationCount: int - added:
field SpanData.DroppedAttributeCount: int - added:
field SpanData.DroppedLinkCount: int - added:
field SpanData.DroppedMessageEventCount: int - added:
func Float64Attribute(string, float64) Attribute