Re: Implementor Meeting RSVP

Honestly, the easiest way for us would be to just supply a docker container that is instrumented and has two endpoints one for the request and one for trace data. We can provide the container and people can inherit from it.

This will also work the harness. On startup the container can register with a discovery service.

Thoughts?



// Alois

From: Yuri Shkuro <shkuro@gmail.com>
Date: Friday, 3. August 2018 at 23:27
To: Sergey Kanzhelev <Sergey.Kanzhelev@microsoft.com>
Cc: Fabian Lange <fabian.lange@instana.com>, Nik Molnar <nimolnar@microsoft.com>, "public-trace-context@w3.org" <public-trace-context@w3.org>
Subject: Re: Implementor Meeting RSVP
Resent-From: <public-trace-context@w3.org>
Resent-Date: Friday, 3. August 2018 at 23:26

The test driver can be made configurable w.r.t. timeouts. My vision here was that individual vendor projects will run the harness against their own code, not that the w3c repo would have a CI that tests vendor implementations, so each vendor can configure timeouts as they need to.

Ultimately, we need a harness implemented **somewhere**. The crossdock framework allows the tests to be written in the same format as one would normally write Go unit tests (example<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fyurishkuro%2Fdistributed-tracing%2Fblob%2Fcompliance-tests%2Ftests%2Fdriver%2Fbehaviors%2Fdiffvendor%2Fdiff_vendor.go%23L47&data=01%7C01%7Calois.reitbauer%40dynatrace.com%7C5d007bdf142141f069fe08d5f987ddbe%7C70ebe3a35b30435d9d677716d74ca190%7C1&sdata=jNIOrFUA2DJyZNETymcu%2BJFDFCq6zcc1XL9hqZVCkvo%3D&reserved=0>). Plus, it provides some orchestration since certain tests require multiple actor nodes. It's possible to re-implement it in another language (say Java, if it's more palatable to most people), but there's still the inherent complexity of the orchestration that I think is unavoidable.




On Fri, Aug 3, 2018 at 5:07 PM, Sergey Kanzhelev <Sergey.Kanzhelev@microsoft.com<mailto:Sergey.Kanzhelev@microsoft.com>> wrote:
I generally agree. The only (potential) question is whether we want to control latency of this solution tightly. So if events not available easily from an Agent and it takes a while to index them and make available from backend – apps need to expect huge latency. Which sometimes may lead to unwanted side effects. But I’d let DynaTrace folks to comment. Just proxying concern I heard.

/Sergey

From: Yuri Shkuro <shkuro@gmail.com<mailto:shkuro@gmail.com>>
Date: Friday, August 3, 2018 at 12:37 PM
To: "Sergey.Kanzhelev@microsoft.com<mailto:Sergey.Kanzhelev@microsoft.com>" <Sergey.Kanzhelev@microsoft.com<mailto:Sergey.Kanzhelev@microsoft.com>>
Cc: Fabian Lange <fabian.lange@instana.com<mailto:fabian.lange@instana.com>>, Nik Molnar <nimolnar@microsoft.com<mailto:nimolnar@microsoft.com>>, "public-trace-context@w3.org<mailto:public-trace-context@w3.org>" <public-trace-context@w3.org<mailto:public-trace-context@w3.org>>

Subject: Re: Implementor Meeting RSVP

They could write something like a small sidecar that will proxy the http request to the actual instrumented service, then before returning the result query the trace store and add span details to the response. I think this is preferable to building a complicated infra into the test harness.
Sent from my iPhone just by thinking it

On Aug 3, 2018, at 10:58 AM, Sergey Kanzhelev <Sergey.Kanzhelev@microsoft.com<mailto:Sergey.Kanzhelev@microsoft.com>> wrote:
One feedback for the test harness from DynaTrace was that they cannot produce span information from the same instance. So perhaps some separation of container that does headers processing and returns results may be required. I’d let DynaTrace reps to comment.

From: Yuri Shkuro <shkuro@gmail.com<mailto:shkuro@gmail.com>>
Sent: Friday, August 3, 2018 6:58 AM
To: Fabian Lange <fabian.lange@instana.com<mailto:fabian.lange@instana.com>>
Cc: Nik Molnar <nimolnar@microsoft.com<mailto:nimolnar@microsoft.com>>; public-trace-context@w3.org<mailto:public-trace-context@w3.org>
Subject: Re: Implementor Meeting RSVP

Hi Fabian,

The harness runs a docker-compose, that can pull everything as docker images. It does not **require** running code, unless you want it to. For example, we use a similar approach for testing Jaeger tracing libs, so the only actual code used is of that tracing lib (because this way we can run it on pull requests). I will dial in to the meeting on Monday, happy to discuss this more, but I didn't have time to work more on the harness.

Sent from my iPhone just by thinking it

On Aug 3, 2018, at 4:34 AM, Fabian Lange <fabian.lange@instana.com<mailto:fabian.lange@instana.com>> wrote:
Hi everybody,
if possible I would like to learn about the current state of testing harness.
Yury did great initial work on this, however there were also voices asking for a more "blackbox" way of testing.
(The harness Yury presented required to have the harness load the code and run it, more like a unit test)

There was an idea that the harness spins up an http server,
starts a simple proxy app "instrumented" by the agent under test,
sends it a request that will cause the proxy app to forward the request back to the harness
and then evaluates the response.

I wonder if anybody did some work on this.

We made out javascript header parser and manipulator library open source, looking forward for feedback. maybe it is helpful:
https://github.com/instana/trace-context.js<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Finstana%2Ftrace-context.js&data=02%7C01%7CSergey.Kanzhelev%40microsoft.com%7C3bff840563d24df9d5e108d5f97881df%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636689218329416127&sdata=wgpSO3K9KLaH6gKQpPfVliG4GW%2B0sa%2FEOuwDErS00G8%3D&reserved=0>

Fabian


On Wed, 25 Jul 2018 at 23:13, Nik Molnar <nimolnar@microsoft.com<mailto:nimolnar@microsoft.com>> wrote:
Better yet, add yourself to the Participants list on the Google Doc: https://docs.google.com/document/d/1ekFjRD9rUZsmI98-fcBu8abx7BpQgDbrJjDZ6FvnB-s/edit?usp=sharing<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.google.com%2Fdocument%2Fd%2F1ekFjRD9rUZsmI98-fcBu8abx7BpQgDbrJjDZ6FvnB-s%2Fedit%3Fusp%3Dsharing&data=02%7C01%7CSergey.Kanzhelev%40microsoft.com%7C3bff840563d24df9d5e108d5f97881df%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636689218329416127&sdata=6FxawK6hr2SIfRAYTdcrZsP7BK1%2FhfOEVEmuenz4mts%3D&reserved=0>

Thanks,
Nik

From: Nik Molnar
Sent: Wednesday, July 25, 2018 4:08 PM
To: 'public-trace-context@w3.org<mailto:public-trace-context@w3.org>' <public-trace-context@w3.org<mailto:public-trace-context@w3.org>>
Subject: Implementor Meeting RSVP

Hello all!

I’m trying to setup space for us to meet on campus at Microsoft for the Implementor Meeting on August 6th and 7th.

To do so, I need a rough head count of attendees. If you plan on coming to the meeting, could you please write back and let me know?

Thanks,
Nik


The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it. Dynatrace Austria GmbH (registration number FN 91482h) is a company registered in Linz whose registered office is at 4040 Linz, Austria, Freistädterstraße 313

Received on Saturday, 4 August 2018 12:11:03 UTC