Skip to content
This repository has been archived by the owner on Apr 11, 2019. It is now read-only.

Commit

Permalink
Merge pull request #81 from mdsol/feature/MCC-210402
Browse files Browse the repository at this point in the history
[MCC-210402] Remove Thrift and refactor the Zipkin Tracer Module
  • Loading branch information
kenyamat committed Apr 11, 2016
2 parents 00a9172 + 5da594f commit e8998e6
Show file tree
Hide file tree
Showing 66 changed files with 484 additions and 4,354 deletions.
14 changes: 1 addition & 13 deletions Medidata.ZipkinTracerModule.sln
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.24720.0
VisualStudioVersion = 14.0.25123.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Medidata.ZipkinTracer.Core", "src\Medidata.ZipkinTracer.Core\Medidata.ZipkinTracer.Core.csproj", "{EB432891-204B-4B97-BFB1-A820E424284E}"
EndProject
Expand All @@ -15,10 +15,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{ACDBD6
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Medidata.ZipkinTracer.Core.Test", "tests\Medidata.ZipkinTracer.Core.Test\Medidata.ZipkinTracer.Core.Test.csproj", "{0158C8BD-D881-4EE8-A8C6-54707A67A00D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Medidata.ZipkinTracer.Core.Collector", "src\Medidata.ZipkinTracer.Core.Collector\Medidata.ZipkinTracer.Core.Collector.csproj", "{12E57184-B43E-43C5-AC19-06AD1DC25E96}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Medidata.ZipkinTracer.Core.Collector.Test", "tests\Medidata.ZipkinTracer.Core.Collector.Test\Medidata.ZipkinTracer.Core.Collector.Test.csproj", "{A6AFE0F7-F1DE-4E0B-B6F6-CFDC293CAE2D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{7CF24590-AC06-44E4-AF93-88A9B2CD1264}"
ProjectSection(SolutionItems) = preProject
README.md = README.md
Expand All @@ -38,14 +34,6 @@ Global
{0158C8BD-D881-4EE8-A8C6-54707A67A00D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0158C8BD-D881-4EE8-A8C6-54707A67A00D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0158C8BD-D881-4EE8-A8C6-54707A67A00D}.Release|Any CPU.Build.0 = Release|Any CPU
{12E57184-B43E-43C5-AC19-06AD1DC25E96}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{12E57184-B43E-43C5-AC19-06AD1DC25E96}.Debug|Any CPU.Build.0 = Debug|Any CPU
{12E57184-B43E-43C5-AC19-06AD1DC25E96}.Release|Any CPU.ActiveCfg = Release|Any CPU
{12E57184-B43E-43C5-AC19-06AD1DC25E96}.Release|Any CPU.Build.0 = Release|Any CPU
{A6AFE0F7-F1DE-4E0B-B6F6-CFDC293CAE2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A6AFE0F7-F1DE-4E0B-B6F6-CFDC293CAE2D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A6AFE0F7-F1DE-4E0B-B6F6-CFDC293CAE2D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A6AFE0F7-F1DE-4E0B-B6F6-CFDC293CAE2D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
21 changes: 15 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,27 @@ A .NET implementation of the Zipkin Tracer client.
## Overview
This nuget package implements the zipkin tracer client for .net applications.

**Medidata.ZipkinTracer.Core** : core library for generating zipkin spans from ids sent through from CrossApplicationTracer and sending it to the zipkin collector using thrift protocol. For more information and implementations in other languages, please check [Openzipkin](https://github.com/openzipkin/).
**Medidata.ZipkinTracer.Core** : core library for generating zipkin spans from ids sent through from
CrossApplicationTracer and sending it to the zipkin collector using HTTP as the transport protocol. For more information
and implementations in other languages, please check [Openzipkin](https://github.com/openzipkin/).

### Enable/Disable zipkin tracing

Zipkin will record traces if IsSampled HTTP header is true.
This will happen if :
- **a)** the caller of the app has set the IsSampled HTTP header value to true.
- **OR**
- **b)** the url request is not in the `ExcludedPathList` of ZipkinConfig , and using the `SampleRate`, it will determine whether or not to trace this request. `SampleRate` is the approximate percentage of traces being recorded in zipkin.
- **b)** the url request is not in the `ExcludedPathList` of ZipkinConfig , and using the `SampleRate`, it will
determine whether or not to trace this request. `SampleRate` is the approximate percentage of traces being recorded in
zipkin.

## Configurations
Please use `ZipkinConig` class to configure the module and verify these values and modify them according to your service/environment.
Please use `ZipkinConig` class to configure the module and verify these values and modify them according to your
service/environment.

- `Bypass` - **false**: enable ZipkinMiddleware/ZipkinMessageHandler, **true**: disable ZipkinMiddleware/ZipkinMessageHandler.
- `Bypass` - Controls whether the requests should be sent through the Zipkin module
- **false**: Enables the ZipkinMiddleware/ZipkinMessageHandler
- **true**: Disables the ZipkinMiddleware/ZipkinMessageHandler
- `ZipkinBaseUri` - is the zipkin scribe/collector server URI with port to send the Spans
- `Domain` - is a valid public facing base url for your app instance. Zipkin will use to label the trace.
- `SpanProcessorBatchSize` - how many Spans should be sent to the zipkin scribe/collector in one go.
Expand Down Expand Up @@ -124,10 +131,12 @@ using (var client = new HttpClient())
...
```

In case of the `ZipkinClient.Record()` method, the second parameter(`value`) can be omitted during the call, in that case the caller member name (method, property etc.) will get recorded.
In case of the `ZipkinClient.Record()` method, the second parameter(`value`) can be omitted during the call, in that
case the caller member name (method, property etc.) will get recorded.

#### Recording a local component
With the `RecordLocalComponent()` method of the client a local component (or information) can be recorded for the current trace. This will result an additional binary annotation with the 'lc' key (LOCAL_COMPONENT) and a custom value.
With the `RecordLocalComponent()` method of the client a local component (or information) can be recorded for the
current trace. This will result an additional binary annotation with the 'lc' key (LOCAL_COMPONENT) and a custom value.

## Contributors
ZipkinTracer is (c) Medidata Solutions Worldwide and owned by its major contributors:
Expand Down
10 changes: 0 additions & 10 deletions src/Medidata.ZipkinTracer.Core.Collector/ISpanCollectorBuilder.cs

This file was deleted.

This file was deleted.

This file was deleted.

24 changes: 0 additions & 24 deletions src/Medidata.ZipkinTracer.Core.Collector/SerializableAnnotation.cs

This file was deleted.

This file was deleted.

25 changes: 0 additions & 25 deletions src/Medidata.ZipkinTracer.Core.Collector/SerializableEndpoint.cs

This file was deleted.

37 changes: 0 additions & 37 deletions src/Medidata.ZipkinTracer.Core.Collector/SerializableSpan.cs

This file was deleted.

15 changes: 0 additions & 15 deletions src/Medidata.ZipkinTracer.Core.Collector/SpanCollectorBuilder.cs

This file was deleted.

5 changes: 0 additions & 5 deletions src/Medidata.ZipkinTracer.Core.Collector/packages.config

This file was deleted.

Loading

0 comments on commit e8998e6

Please sign in to comment.