Commit Graph
948 Commits
Author SHA1 Message Date
Krzesimir Nowak 75d4911c95 Move metric code to a separate package (#1321)
* Move metrics code to metric package

* Update changelog
2020-11-12 07:28:32 -08:00
Krzesimir Nowak 386331a472 Prepare to move metrics code to separate subpackage (#1316)
* Move registry package under metric

* Move Number type to the metric/number subpackage

This also renames NumberKind type to Kind.

* Update changelog

* Drop outdated comment
2020-11-11 07:24:12 -08:00
Joshua MacDonaldandTyler Yahn f9984f2d4e Support configurable AggregationTemporality in exporters; add OTLP missing sum point temporality/monotonic fields (#1296)
* Restructure ExportKindSelector helpers; eliminate PassThroughExportKind; add StatelessExportKindSelector()

* WithExportKindSelector(); Additional testing

* Changelog update

* Test the new selectors

* From review feedback

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-10 07:44:42 -08:00
alrexandTyler Yahn 3a06b393b9 Update span collection limits to 1000 (#1318)
* set collection limit to 1000

* update changelog

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-10 07:40:01 -08:00
b7508da6fa Export non monotonic counters as gauge values from the prometheus exporter (#1269)
* Export non monotonic counters as gauge values from the prometheus exporter

* Add a test to ensure the pre-existing LastValue pathway on the collector exports the last value

* Add a TODO around refactoring the prometheus test to verify metadata as well

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-09 13:52:05 -08:00
Tyler Yahn 757030dc78 Update Span End method documentation (#1310)
* Update Span End method documentation

Updates to the Span after End is called result it potentially
inconsistent views of the Span between the code defining it and the
ultimate receiver of the Span data. This corrects the documented
language of the API to prevent this from happening.

* Add changes to changelog
2020-11-09 10:57:34 -08:00
Tyler Yahn a354c026b6 Clean up SDK span field docs (#1312)
Remove cruft about spanStore.

Update documentation about how span.mu is used (related to #1311).

Reformat to conform with idiomatic field documentation.
2020-11-09 10:40:02 -08:00
dependabot[bot] 1041adaf58 Bump github.com/golangci/golangci-lint in /internal/tools (#1315)
Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.32.1 to 1.32.2.
- [Release notes](https://github.com/golangci/golangci-lint/releases)
- [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/golangci/golangci-lint/compare/v1.32.1...v1.32.2)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-09 10:21:12 -08:00
Krzesimir Nowak 3268501910 Move tracing code to trace package (#1307)
* Move tracing code to trace package

* Update changelog
2020-11-06 17:13:31 -05:00
Matej GeraandTyler Yahn 9ac3a08eef Remove MockSpan and MockTracer (#1306)
* Remove MockSpan and MockTracer

* Update CHANGELOG

Co-authored-by: Tyler Yahn <codingalias@gmail.com>
2020-11-05 08:13:19 -08:00
Krzesimir NowakandTyler Yahn c9ae670c8a Fix zipkin example module name (#1308)
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-05 07:55:25 -08:00
José Carlos Chávez e22a48de5a chore: adds vanity import for files that don't have it. (#1297) 2020-11-04 09:10:58 -08:00
Daniil RutskiyandTyler Yahn 911d7be43d Check marshalled value instead of iface (#1299)
* Check marshalled value

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Update CHANGELOG.md

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Move change to Fixed section

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-02 08:27:41 -08:00
dependabot[bot] 238d2c015c Bump github.com/golangci/golangci-lint in /internal/tools (#1301)
Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.32.0 to 1.32.1.
- [Release notes](https://github.com/golangci/golangci-lint/releases)
- [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/golangci/golangci-lint/compare/v1.32.0...v1.32.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-01 08:52:11 -08:00
Joshua MacDonaldandTyler Yahn 187adeb251 Change resource.New() to use functional options; add builtin attributes for (host.*, telemetry.sdk.*) (#1235)
* Add a resource.Configure() with functional options

* Add a changelog

* Add tests for builtin resources

* Rename to WithoutBuiltin

* Add new test; restore environment after tests

* Apply feedback

* Apply suggestions from code review

❤️

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>

* Comment edits

* Rename New, former method NewFromAttributes

* NewFromAttributes->NewWithAttributes

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-31 11:16:55 -07:00
Tyler Yahn 034195692a Update README and documentation to better communicate pre-GA state (#1281)
* Update README

Move project status to top of project documentation and add explicit
warnings that this project may introduce breaking changes.

* Add disclaimer to public packages docs

* Use explicit warning in README
2020-10-29 09:23:13 -07:00
Jaana DoganandTyler Yahn 23e32b19ec Minor readability fixes to the Jeager example (#1282)
Consistency with deferring span.End, variable names.

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-28 08:08:13 -07:00
Daniil Rutskiy d98ad1042c Fix Code.UnmarshalJSON to work with valid json only (#1276)
* Remove quotes from UnmarshalJSON

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Update CHANGELOG.md

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Fix issue number in CHANGELOG.md

* Fix 'Code.UnmarshalJSON' to work with valid json only

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Extend test data for TestCodeUnmarshalJSONErrorInvalidData

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>

* Delete useless cond, extend test data

Signed-off-by: Daniil Rutskiy <dstdfx@gmail.com>
2020-10-27 15:30:49 -07:00
a6b31e0da1 Update SpanProcessor Shutdown with context and error (#1264)
* 1232: update SpanProcessor Shutdown with context and error

* 1232: add changelog info

* 1232: fix CI error, rm commented code

* 1232: fix CI unhandled error

* 1232: Done commit properly

* Add shutdown error handling

* Merge branch 'master' into update-span-processor

* Revert now unneeded context declaration move

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
Co-authored-by: Tyler Yahn <codingalias@gmail.com>
2020-10-26 19:06:55 -07:00
Bryan Boreham 412ee70ad2 Fix typo in example (#1278) 2020-10-26 12:23:40 -07:00
dependabot[bot]andTyler Yahn da3f60ac96 Bump github.com/golangci/golangci-lint in /internal/tools (#1274)
Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/golangci/golangci-lint/releases)
- [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/golangci/golangci-lint/compare/v1.31.0...v1.32.0)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-26 09:25:25 -07:00
Hui KangandTyler Yahn d75ccbb378 Add a Shutdown method to sdk TraceProvider (#1227)
* Add a Shutdown method to api TraceProvider

- sdktraceprovider shutdown span processors
- In examples, replace processosr shutdown with
  traceprovider's shutdown

Signed-off-by: Hui Kang <kangh@us.ibm.com>

* remove shutdown in the api provider interface

* Add context in parameter and return error

* handle error in shutdown

* Update CHANGELOG.md

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-26 09:20:49 -07:00
Sam XieandTyler Yahn 230bdd10f0 Add SpanContextFromContext() (#1255)
* SpanFromContext returns nil if span not exists

* Add tests for SpanContextFromContext

* Update CHANGELOG

* Update trace.go

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>

* SpanFromContext() continue to return a noopSpan{}

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-21 17:30:28 -04:00
alrex c9bc90b3e4 Renaming otcorrelations header to baggage (#1267)
* Renaming otcorrelations header to baggage

* Update CHANGELOG.md

* cleanup comment
2020-10-20 10:51:17 -07:00
Tyler Yahn d6dd84f6fa Move the otel/api/global package to otel/global (#1262)
* Move otel/api/global to otel/global

* Update global package references

* Add changes to CHANGELOG
2020-10-17 10:03:48 -07:00
Tyler Yahn 818c7b14b3 Move metric api package into otel (#1252)
* Update metric Kind to InstrumentKind

* Update all the other modules with Kind rename

* Update metric Descriptor with instrument Kind rename

* Update other modules with Descriptor method rename

* Update OTLP exporter test field name

* Rename kind filenames

* Add changes to CHANGELOG

* Fix documentation for Grouping and PrecomputedSum

* Rename meter.go to metric.go

* Move descriptor.go into metric.go

* Move must.go into metric.go

* Move instruments into metric_instrument.go

* Rename metric api_test.go to metric_test.go

* Move instrumentkind_test.go into metric_test.go

* Rename sdkapi.go metric_sdkapi.go

* Move api/metric into otel

* Update to use moved packages

* Rename otel.go to error_handler.go

* Add changes to CHANGELOG

* Fix merge conflict resolution error
2020-10-17 09:48:21 -07:00
Tyler Yahn 90de306c25 Add global propagator testing and other fixes (#1260)
* Add global propagator testing and other fixes

Use the testing framework from #1259 to test the added global
implementation of the TextMapPropagator.

Add tests for the internal state of the global package. Ensure the
behavior of setting the global for an already set value panics.

Fix oteltest `SetN` method check on the TextMapCarrier.

* Fix lint
2020-10-16 17:50:57 -07:00
Tyler YahnandSteven E. Harris b7197d568f Update the internal global TextMapPropagator (#1261)
* Update the internal global TextMapPropagator

Include feedback from a post-merge review of #1258

* Apply feedback

* Update api/global/internal/propagator.go

Co-authored-by: Steven E. Harris <seh@panix.com>

Co-authored-by: Steven E. Harris <seh@panix.com>
2020-10-16 17:46:47 -07:00
Tyler Yahn ec300b28ad Update Span API event methods (#1254)
* Update Span API event methods

Remove the context argument from the event methods. It is unused and can
be added back in as a passed option if needed in the future.

Update AddEvent to accept a required name and a set of options. These
options are the new EventOption type that can be used to configure a
SpanConfig Timestamp and Attributes.

Remove the AddEventWithTimestamp method as it is redundant to calling
AddEvent with a WithTimestamp option.

Update RecordError to also accept the EventOptions.

* Add changes to CHANGELOG

* Add LifeCycleOption

Use the LifeCycleOption to encapsulate the options passed to a span for
life cycle events.
2020-10-16 08:09:27 -07:00
Tyler Yahn 786a78ea36 Add delegating global propagator (#1258)
* Add delegating global propagator

* Add Changes to CHANGELOG

* Add PR number to CHANGELOG

* Add tests using new test framework

* Revert "Add tests using new test framework"

This reverts commit af7ae17436.
2020-10-15 10:35:47 -07:00
Tyler Yahn 8fd4b26655 Add oteltest TextMap propagator and carrier (#1259)
* Add oteltest text map propagator and carrier

* Add changes to CHANGELOG

* Add PR number to CHANGELOG

* Add test for empty newState

Gotta farm that codecov
2020-10-15 09:15:52 -07:00
Tyler Yahn 8ed55f5980 Update README with Org GA project board (#1253) 2020-10-13 15:02:38 -07:00
Tyler Yahn 4ea0a20885 Update semconv comments (#1249)
Add comments to fix lint issues with the semconv package and add
clarifying documentation for attributes.
2020-10-13 12:35:10 -07:00
Tyler Yahn 5c21e88fde Update documentation for otel/oteltest (#1248)
* Fix lint issues in `otel/oteltest`

Add documentation to exported functions, types, and methods that had
none.

Update existing documentation to wrap consistently and fix grammatical
errors.

* Update oteltest package documentation
2020-10-13 12:27:53 -07:00
Tyler Yahn 396dd6053c Rename Kind from the api/metric package (#1240)
* Update metric Kind to InstrumentKind

* Update all the other modules with Kind rename

* Update metric Descriptor with instrument Kind rename

* Update other modules with Descriptor method rename

* Update OTLP exporter test field name

* Rename kind filenames

* Add changes to CHANGELOG

* Fix documentation for Grouping and PrecomputedSum
2020-10-13 07:55:31 -07:00
Tyler Yahn 65044a118b Move api/apitest into the otel/oteltest package (#1241)
* Move the apitest package into oteltest

* Add documentation to exported func and type

* Add changes to CHANGELOG

* Update move in other modules
2020-10-12 08:47:41 -07:00
Tyler Yahn a46f88ee8d Fix lint issues in otel package (#1243)
* Fix lint issues in otel package

Add documentation for the shadowed `Meter` for the time being.

Do not export `ErrInvalidHexID`, `ErrInvalidTraceIDLength`,
`ErrInvalidSpanIDLength`, `ErrInvalidSpanIDLength`, or `ErrNilSpanID`.
These are not used externally and we should reduce the API prior to a GA
release to allow flexibility going forward.

Add and update comments for all SpanKind conforming to golint spec.

* Update CHANGELOG
2020-10-12 08:43:26 -07:00
Tyler Yahn bafde86b29 Fix lint issues in the label package (#1244)
Rename MergeItererator to MergeIterator to correct the spelling mistake.

Add comment for exported `EmptySet`.

Fix comments on the exported label `Type`s to conform to Go standards.
2020-10-12 08:39:12 -07:00
Tyler YahnandAnthony Mirabella 7ecc55581b Update documentation for the OTLP exporter (#1242)
* Update documentation for the OTLP exporter

Update package documentation to reflect the contents of the package.

Fix lint issues by adding documentation for all exported types.

Update file comment location in otlp.go so golint does not interpret it
as package documentation.

* Apply suggestions from code review

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
2020-10-11 19:57:50 -07:00
Joshua MacDonald f60f51d0a2 Move asyncronous metrics state helper out of apimetric/metrictes (#1234) 2020-10-11 14:46:29 -04:00
Paul Osman 02cd123542 Call sampler on local child spans. (#1233)
* Call sampler on local child spans.

* Update CHANGELOG.md

* Adding a test for calling the sampler on local child spans

* Add clarifying comment to test
2020-10-09 18:48:34 -04:00
alrexandTyler Yahn 25ccf5a08a Update proto v0.5.0 (#1230)
* Updating version of OTLP to 0.5.0

* updating trace transform to use latest protos

* update otlp span test

* forgot one test

* finishing the rest of the implementation

In this change:
- MetricDescriptor is no longer a member of the metric
- splitting Sum, Gauge, Histogram by Int/Float
- SummaryDataPoints are no longer around, MinMaxSumCount is now a Histogram

* update changelog

* Update CHANGELOG.md

Move changes to the Unreleased section. This is to account for the recent release.

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-08 20:07:39 -07:00
Tyler YahnandAnthony Mirabella 27c84d689d Move trace api package into otel (#1229)
* Move trace API to otel

* Move tracetest to oteltest

* Update package documentation

* Remove old api/trace package

* Lint

* Add changes to CHANGELOG

* Add tests for rest of trace API

* Apply suggestions from code review

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>

* Documentation fixes

Includes resolutions for review issues.

* Correct CHANGELOG post release

Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
2020-10-08 19:58:56 -07:00
Anthony Mirabella 9ebca887f0 Pre release v0.13.0 (#1231)
* Prepare for releasing v0.13.0

* Update CHANGELOG.md for v0.13.0 release
sdk/v0.13.0 exporters/trace/zipkin/v0.13.0 exporters/trace/jaeger/v0.13.0 exporters/stdout/v0.13.0 exporters/otlp/v0.13.0 example/zipkin/v0.13.0 exporters/metric/prometheus/v0.13.0 example/prometheus/v0.13.0 example/otel-collector/v0.13.0 example/namedtracer/v0.13.0 example/jaeger/v0.13.0 example/basic/v0.13.0 bridge/opentracing/v0.13.0 v0.13.0
2020-10-08 18:18:50 -04:00
Tyler Yahn 5660b0b59f Update label.ArrayValue to store copies of 1D arrays (#1226)
* Update label.ArrayValue to store copies of 1D arrays

* Update OTLP transform of array attributes

* Add changes to CHANGELOG

* Add PR number to changes

* Update value function documentation

* Remove redundant checks

* Add Array test for invalid array types

* Add test to ensure return from AsArray is a type

* Clean up iteration
2020-10-05 17:09:03 -07:00
Tyler Yahn 577b21745b Update codes to match specification (#1214)
* Update codes to match specification

* Add changes to changelog

* go mod tidy

* Add unit tests for codes

* Update SetStatus methods to only filter Unset

* Update apitest code being tested
2020-10-05 11:36:03 -07:00
e9c80e62a4 Bump github.com/openzipkin/zipkin-go from 0.2.4 to 0.2.5 in /exporters/trace/zipkin (#1224)
* Bump github.com/openzipkin/zipkin-go in /exporters/trace/zipkin

Bumps [github.com/openzipkin/zipkin-go](https://github.com/openzipkin/zipkin-go) from 0.2.4 to 0.2.5.
- [Release notes](https://github.com/openzipkin/zipkin-go/releases)
- [Commits](https://github.com/openzipkin/zipkin-go/compare/v0.2.4...v0.2.5)

Signed-off-by: dependabot[bot] <support@github.com>

* Auto-fix go.sum changes in dependent modules

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-05 09:17:02 -07:00
b0fd424c20 Bump github.com/itchyny/gojq from 0.11.1 to 0.11.2 in /internal/tools (#1225)
* Bump github.com/itchyny/gojq from 0.11.1 to 0.11.2 in /internal/tools

Bumps [github.com/itchyny/gojq](https://github.com/itchyny/gojq) from 0.11.1 to 0.11.2.
- [Release notes](https://github.com/itchyny/gojq/releases)
- [Changelog](https://github.com/itchyny/gojq/blob/master/CHANGELOG.md)
- [Commits](https://github.com/itchyny/gojq/compare/v0.11.1...v0.11.2)

Signed-off-by: dependabot[bot] <support@github.com>

* Auto-fix go.sum changes in dependent modules

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-05 09:12:24 -07:00
Tyler Yahn 5e66340594 Add Baggage API and move Baggage propagator (#1217)
* Move api/baggage to the propagators package

* Create Baggage API to match specification

* Update CHANGELOG.md

* Baggage API unit tests

* Rename and add unit test

* Update unit test value checking

* Update TODO with issue tracking work.
2020-10-05 11:25:09 -04:00
Stanley NguyenandTyler Yahn de50711fcc feat(span): remove SetAttribute method (#1216)
* feat(span): remove SetAttribute method

* Update CHANGELOG.md

Revert markdown lint changes and unify the `Removed` section.

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-10-02 14:41:15 -07:00