Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenTracing.Integration isn't compatible with OpenTracing interface #2251

Closed
5 of 10 tasks
Bessonov opened this issue Sep 26, 2019 · 3 comments
Closed
5 of 10 tasks

OpenTracing.Integration isn't compatible with OpenTracing interface #2251

Bessonov opened this issue Sep 26, 2019 · 3 comments

Comments

@Bessonov
Copy link

Package + Version

  • @sentry/browser
  • @sentry/node 5.6.2
  • @sentry/opentracing 5.1.2
  • @sentry/integrations 5.6.1
  • raven-js
  • raven-node (raven for node)
  • other:

Version:

0.0.0

Description

Subclass of Tracer in @sentry/opentracing introduce some fields which leads to incompatibility:

import * as OpenTracing from '@sentry/opentracing'
import { Tracer } from 'opentracing'
const tracer: Tracer = new Tracer() // no op
const ot = new OpenTracing.Integration(undefined, tracer) // <-- compile error
{
	"resource": "/home/vagrant/workspace/poc-backend/packages/common.errors/src/index.ts",
	"owner": "typescript",
	"code": "2345",
	"severity": 8,
	"message": "Argument of type 'import(\"/home/vagrant/workspace/poc-backend/node_modules/opentracing/lib/tracer\").Tracer' is not assignable to parameter of type 'import(\"/home/vagrant/workspace/poc-backend/node_modules/@sentry/opentracing/dist/tracer\").Tracer'.\n  Type 'Tracer' is missing the following properties from type 'Tracer': _spans, setTraceId, flush",
	"source": "ts",
	"startLineNumber": 17,
	"startColumn": 51,
	"endLineNumber": 17,
	"endColumn": 57
}

I didn't find a way to use integrations with OpenTracing either.
How to integrate it with OpenTracing clients like zipkin-javascript-opentracing? Just add traceId to extra?

I've seen that there is more work in #2161. That's the goal of sentry project here? TBH, I would like to see Errors, Traces and Logs in one place and not distributed in Sentry, Jaeger, ELK/EFK and others.

@andrey-infinity
Copy link

Thanks for asking this. I'm also interested in opentracing and distributed tracing in sentry in general (between Python and NodeJS). https://blog.sentry.io/2019/04/04/trace-errors-through-stack-using-unique-identifiers-in-sentry this article is not sufficient.

@HazAT
Copy link
Member

HazAT commented Dec 2, 2019

Thanks for the issue and interest in APM.

We are working on shipping in APM for some time now in Sentry. Currently, we have a closed Alpha running with more info and docs in our forum here (https://forum.sentry.io/t/sentrys-apm-docs-alpha/7843) cc @sitox

The @sentry/opentracing package was an experiment that we discontinued but we will release5.10.0 this week having @sentry/apm package which will be the way forward.
We are contributing to OpenTelemetry and while our integration isn't fully compatible yet, with the first version we wanted to have a good experience out of the box.

We gladly accept any feedback but please stay tuned for the official announcement, if you want to try it now, see the forum post how to install it.

Closing this, thx.

@HazAT HazAT closed this as completed Dec 2, 2019
@Bessonov
Copy link
Author

Bessonov commented Dec 2, 2019

@HazAT great! Thank you for the update!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants