lightstep / lightstep-tracer-javascript

Lightstep distributed tracing library for Node.js and the browser
https://lightstep.com
MIT License
77 stars 66 forks source link

GRPC transport #101

Open ruiaraujo opened 6 years ago

ruiaraujo commented 6 years ago

The javascript version only provides thrift as a transport option. Is there anything that would prevent using the GRPC version available in other languages?

austinlparker commented 6 years ago

Thanks for opening this issue! We recently added support for proto over http transport; Is this sufficient?

ruiaraujo commented 6 years ago

I think so, it would be nice to have a performance comparison between the transport types. 😉

Also I do not see a release, feel free to close this when the release is done.

iredelmeier commented 6 years ago

Hi @ruiaraujo! I'm going to be investigating adding gRPC support.

Two questions:

  1. Are you using the tracer for node, the browser, or both? I anticipate that node may be ready first.
  2. Have you had a chance to try proto over http?
ruiaraujo commented 5 years ago

Node.

Not yet because somehow our collector has issues with this and I would like to either see a benchmark or benchmark it myself before changing anything.

ruiaraujo commented 5 years ago

@iredelmeier any chance to work on this? Our node apps are out in the rain compared to the Golang based friends. 😄

sbaum1994 commented 4 years ago

Resurrecting this issue! I think with https://github.com/lightstep/lightstep-benchmarks available now we may be able to run a benchmark between proto and thrift transports. The other thing to consider is the library size, with proto transport included it definitely significantly increases the size. Since you're using the tracer on Node & not browser that may not be relevant.

ruiaraujo commented 4 years ago

@sbaum1994 it would be very helpful to have support for the JS version in the benchmark, it would encourage me to showcase some patches we can do the reduce the overhead in the tracer implementation.

At this stage, I care more about runtime performance since we are heavily relying on tracing in the server side.