Commit Graph

385 Commits

Author SHA1 Message Date
Liudmila Molkova e1e2cfb9ce Support service resource conventions in Application Insights exporter (#445)
* Support service.name resource in ApplicationInsights exporter

* support all resource conventions

* merge issues
2020-01-16 21:08:13 -08:00
Liudmila Molkova ddd13c3eed
Discuss ISpan/IReadableSpan (#420)
* Introduce IReadableSpan

* SpanData struct instead readable span

* Rename Span to SpanSdk

* Fix XPagesExporter to use SpanData
2020-01-16 18:03:23 -08:00
Bruno Garcia 4ba732af06 fix ASP.NET and .NET casing (#443) 2020-01-15 09:42:53 -08:00
HarnidhK 9c33a025e4 zPages project onboarding (#437)
* zPages project onboarding

This is the intital commit for zPages exporter

* Updating csproj for zPages

Removing Implementation folder from csproj since it is not used yet

Co-authored-by: Sergey Kanzhelev <S.Kanzhelev@live.com>
2020-01-14 00:15:58 -08:00
SychevIgor 3905e78189 fix warnings in documentation (#432) 2020-01-10 09:15:59 -08:00
SychevIgor 4fc85d1c45 .net core 3.0 in maintenance mode and end of support will be in march 2020 (#424)
* .net core 3.0 in maintance mode and end of support will be in march 2020

* more 3.1

* revent covelet and update IHostingEnvironment Warning

* rerun github check
2020-01-08 09:07:42 -08:00
SychevIgor 9c4ee808fd export to zipkin is not required to run this app (#423) 2020-01-07 10:41:11 -08:00
Sergey Kanzhelev 38092abd44
suggesting to add Mike as approver (#422) 2020-01-07 09:41:48 -08:00
Liudmila Molkova cb70001868
Support using custom text format (#417)
Co-authored-by: Sergey Kanzhelev <S.Kanzhelev@live.com>
2020-01-06 15:05:56 -08:00
Liudmila Molkova 4a68dc0a02 Fix W3C trace-context test suite tests for tracestate (#418)
* Fix W3C trace-context tests for tracestate

* up
2020-01-06 13:18:38 -08:00
Liudmila Molkova 86f814a738
Make BlankSpan, SpanContext.Blank internal (#419) 2019-12-27 10:44:05 -08:00
Liudmila Molkova db20d36e55
Cleanup: Remove SetAttribute(string) and AddEvent(name, attributes) overloads on Span (#412)
* Remove extra SetAttribte and AddEvent overloads on Span

* return bool double and long attribues

Co-authored-by: Sergey Kanzhelev <S.Kanzhelev@live.com>
2019-12-26 09:58:45 -08:00
Peter Wiese 94cfe15c2a Fix the Span Event name to Jaeger Log field name translation (#415)
* Fix the Span Event name to Jaeger Log field name translation

* Repair unit tests
2019-12-20 15:13:50 -08:00
Liudmila Molkova 18e5b2f127 parent d49ce958a3 (#411)
author Liudmila Molkova <lmolkova@microsoft.com> 1576626312 -0800
committer Liudmila Molkova <lmolkova@microsoft.com> 1576862429 -0800

Link, SpanContext to struct
2019-12-20 10:31:50 -08:00
Liudmila Molkova d49ce958a3
Allow sring, long, double and bool resource attributes (#414) 2019-12-19 17:53:14 -08:00
Liudmila Molkova 40a51b69bc
Move test infra to .NET Core 3.0 (#403)
* Add W3C TraceContext validation test app

* fix linux build

* some fixes

* Use ASP.NET Core test app as W3C test suite example

* broken solution

* remove new project

* move tests to 3.0

* update minver

* fix http tests to force 2.0

* minver is in common props, remove from projects

* move lightstep tests to 3.1
2019-12-19 13:46:57 -08:00
Liudmila Molkova dbc89a27ee
Follow capitalization conventions for .NET in metrics (#408)
* Follow capitalization conventions for .NET in metrics

* up

* rename files

* rename files

* up

* Delete CounterHandleSDK.cs

* Delete CounterSDK.cs

* Delete GaugeHandleSDK.cs

* Delete LabelSetSDK.cs

* Delete MeasureHandleSDK.cs

* Delete GaugeSDK.cs

* Delete MeasureSDK.cs

* Delete MeterSDK.cs
2019-12-18 12:51:20 -08:00
Cijo Thomas 7c7440f742 Thread safe implementation of Counter aggregator and tests. (#406)
* Thread safe implementation of Counter aggregator and tests.

* comment

* Ctor of CounterSumAggregator to validate type.

* Make test orchestrator block until all 10 threads updating counter has started.
2019-12-18 12:42:18 -08:00
Liudmila Molkova 5ead3908ba
Make ITracer an abstract class and rename to tracer (#402) 2019-12-18 12:22:42 -08:00
Cijo Thomas fac2fba3db Move LabelSet implementation from API to SDK (#400)
* move labelset impl to SDK from API

* added basic test for labelset

* minor commment

* Update src/OpenTelemetry.Api/Metrics/LabelSet.cs

Co-Authored-By: Bruno Garcia <bruno@brunogarcia.com>

* LabelSet API to provide empty Enumrable for label

* mark LabelSetSDK as internal. There is no user code dependent on the implementation.
2019-12-17 13:32:08 -08:00
Peter Wiese 2448b2a0a9 Jaeger Span conversion missing span.kind (#401)
Per https://opentracing.io/specification/conventions/ we need to set this value.
2019-12-17 10:42:18 -08:00
mgodse 5fe3c85220 Adding New Relic Exporter links (#396)
* Adding NewRelic links

* Added links to documentation
2019-12-12 15:28:45 -08:00
Liudmila Molkova e304133b03 Do not throw errors from DistributedContext in runtime (#388)
* Do not throw errors from DistributedContext in runtime

* review
2019-12-11 15:05:19 -08:00
Cijo Thomas d9c0e51155 NoOp meters (#393)
* Added NoOp Meter and a basic test for the same. This should eventually be replaced with similar approach used in Tracer.

* minor
2019-12-11 13:43:02 -08:00
Liudmila Molkova ea8b561545 Remove old ID format from Application Insights exporter (#385) 2019-12-11 10:52:17 -08:00
Cijo Thomas 84ac241543 Metrics part 2 (#383)
* Add Promethues Exported relying on new Metric, to allow deleting of old Stats files.

* Counter fixes

* Add PrometheusExporter test project

* Nuke the Stats folder completely. Exporters are also deleted and they will be brought back with new metric api.

* Add export and processor with facotry

* fix counterhandle and implement collect in metersdk

* use labelset encoding as key

* add gaugesdk

* creation of GaugeSDK

* Collect Gauges as well

* added a basic test

* test

* add metername

* move aggregator to separate namesace

* Add measure instrument with ExactAggregator

* collect is under lock

* modified prometheus exporter

* rename simpleprocessor to ungrouped batcher

* minor

* small changes

* build fix attempt

* make timespn optional in bacther

* buidl ix

* prom test project update

* few comments addressed

* remove tests

* test sample change duration

* time

* no delay
2019-12-11 10:40:16 -08:00
Liudmila Molkova 1524998550
Attempt to stabilize ExportMoreSpansThanTheMaxBatchSize (#384) 2019-12-09 22:24:49 -08:00
Liudmila Molkova 079560d6a7 fix logs TODOs (#382) 2019-12-09 21:48:36 -08:00
Bruno Garcia 8edcc9ac6b ref: Rename Resource.Label to Resource.Attribute (#377)
* rename Resource: Label to Attribute

* rename resource field in proto

* Update src/OpenTelemetry.Exporter.OpenTelemetryProtocol/Implementation/opentelemetry/proto/resource/v1/resource.proto

* Update src/OpenTelemetry.Exporter.OpenTelemetryProtocol/Implementation/opentelemetry/proto/resource/v1/resource.proto
2019-12-09 18:00:07 -08:00
Bruno Garcia 4e8b43545a M.NF.ReferenceAssemblies out of preview (#379) 2019-12-09 09:15:05 -08:00
Liudmila Molkova a666ab1d3e Comply with error handling policy in Tracing API (#371)
* Comply with error handling policy in Tracing API

* review

* up

* fix logging

* a couple more exceptions

* undo resources: needs more work
2019-12-06 11:39:08 -08:00
Tarek Mahmoud Sayed 8e8a723e73 Add DistributedContext implementation and Delete ITag* Types (#366)
* Add DistributedContext implementation and Delete ITag* Types

This change includes the following:
- Add the missing implementation of the DistributedContext.
- Change DistributedContextEntry to a struct to avoid allocations inside the DistributedContext.
- Introducing DistributedContext carrier which will carry the current context during the execution
    - By default, DistributedContext will have Noop carrier for optimizing when the SDK is not loaded.
    - When SDK loaded, it should set the carrier to the async local carrier defined in the SDK
-	Removed all Tag* and ITag* types which not needed as DistributedContext should cover the required scenarios.
-	Modified the serialization to work with the DistributedContext.
-	Cleaned up the tests and added more DistributedContext specific tests.

* Fix failing tests

* Addressing some of the feedback
2019-12-06 10:58:06 -08:00
Chih Hong, Chen 8faec3a41a Remove spaces (#372)
* Remove spaces

* Apply solution wide to trim trailing whitespace

Apply to *.{cs,csx,vb,vbx}
2019-12-06 10:48:35 -08:00
Mike Goldsmith 494ad07254 Refactor JaegerUdpBatcher AppendAsync logic (#370)
* refactor JaegerUdpBatcher AppendAsync logic

fixes the following bugs:
- span size + process size should not exceed max packet size
- current batch should be flushed if new span cannot be added to current batch without exceeding max packet size

* add missing this prefix to FlushAsync call

* update logic for checking if a span is too large
2019-12-04 17:40:54 -08:00
Liudmila Molkova 287f08fa74
Update sampling API according to the spec (#369)
* Update sampling API according to the spec

* clean up public surface of probability sampler
2019-12-04 12:18:09 -08:00
Liudmila Molkova d8e57fe561 Fixes ProcessorDoesNotBlockOnExporter (#368) 2019-12-03 23:55:11 -08:00
Shaun Tabone b5b0fd5ae4 Fixed Options Validation and Defaults and added unit tests (#363) 2019-11-29 09:41:51 -08:00
Alex Valuyskiy faa2b38f0b Update HttpClient collector to the latest specification (#358)
* Update HTTP Client tracing according to spec

updated tests

fix

revert server changes

fix reverting

update version handling

* fix tests

* removed redundant attributes

* fix ordering

* Extend options

* remove redundant constants
2019-11-28 21:55:36 -08:00
Cijo Thomas 35b71f1cc8 Nuke the old stats folder, basic Metric SDK. (#359)
* Add Promethues Exported relying on new Metric, to allow deleting of old Stats files.

* Counter fixes

* Add PrometheusExporter test project

* Nuke the Stats folder completely. Exporters are also deleted and they will be brought back with new metric api.
2019-11-26 15:31:31 -08:00
Mike Goldsmith 239e05d97d Add LightStep exporter myget and nuget links to README (#352) 2019-11-22 09:50:14 -08:00
Liudmila Molkova 9adb5c3c2c
Do not share property fetchers and listeners between DiagnosticSources (#350) 2019-11-21 22:02:53 -08:00
Liudmila Molkova 25ec6ce45e Fix links serialization in appInsights (#351) 2019-11-21 21:45:54 -08:00
Mike Goldsmith 2bfe9192b4 Add TracerBuilder extension to configure Jaeger (#347)
* add TracerBuilder extension to configure Jaeger

* update jaeger example and README
2019-11-21 10:13:52 -08:00
Mike Goldsmith d465fa2649 Add TracerBuilderExtensions to configure LightStep exporter (#348)
* add TracerBuilderExtensions to configure LightStep exporter

* add LightStep exporter example to README

* Revert "add LightStep exporter example to README"

This reverts commit daeddb18d1.

* re-add lightstep configuration example to README

(didn’t break WIN line endings this time)

* update lightstep example

* update lightstep code example
2019-11-21 10:03:37 -08:00
Mike Goldsmith 5c36d2cf1c Maintain crlf line endings in md files in editorconfig (#349)
* maintain crlf line endings in md files in editorconfig
2019-11-21 09:51:08 -08:00
Tarek Mahmoud Sayed d44cea3d87 Apply design feedback on Metrics and DistributedContext (#340)
* Apply design feedback on Metrics and DistributedContext

- Reduce the number od abstract methods on Meter and allow overriding protected methods to avoid make it public.
- Rename the word “Long” in the APIs to “Int64”. This is the design guidelines recommendation.
- Add convenient properties NoPropagationEntry and UnlimitedPropagationEntry in EntryMetadata.
- Avoid using the 3 uppercase letters acronym of TTL and just use the full words TimeToLive.

* Address the feedback
2019-11-20 10:51:00 -08:00
Sergey Kanzhelev cb5eebdff7
Update README.md (#345) 2019-11-19 20:17:10 -08:00
Sergey Kanzhelev a1563388f8
Use Resource labels as additional arguments for Zipkin. Also re-use the service name (#338)
* tmp

* added resource into readme

* added a single test case

* added more test cases

* removed MergeResource
2019-11-19 11:18:35 -08:00
Kim Christensen 9a304ee237 Make TracerFactoryBase.Defalt non settable (#341)
Instead a method called SetDefault has been added to make it more
explicit that it is not okay to set it multiple times
2019-11-18 08:20:40 -08:00
Tarek Mahmoud Sayed 87d0d1eeaa Miscellaneous Changes (#334)
* Miscellaneous Changes

-	Rename OpenTelemetry. DistributedContext namespace to Context. The reason is there is added classes DistributedContext with the same name.
-	Fix some misspelling in the Gauge names.
-	Added the overloads in the Counter, Gauge and Measure classes which takes DistributedContext parameters.
-	Replaced CounterHandle, GaugeHandle, and MeasureHandle structs by just one abstract class MetricsHandle. As allowing implementing abstract counter classes, we should allow the same for the handle classes.

* Return back the different Handle classes

* Update src/OpenTelemetry.Api/Metrics/GaugeHandle.cs

Co-Authored-By: Sergey Kanzhelev <S.Kanzhelev@live.com>

* Update src/OpenTelemetry.Api/Metrics/GaugeHandle.cs

Co-Authored-By: Sergey Kanzhelev <S.Kanzhelev@live.com>

* Update src/OpenTelemetry.Api/Metrics/MeasureHandle.cs

Co-Authored-By: Sergey Kanzhelev <S.Kanzhelev@live.com>
2019-11-12 12:56:03 -08:00