How to use the opentracing.Tags.SPAN_KIND_RPC_CLIENT function in opentracing

To help you get started, we’ve selected a few opentracing examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github yurishkuro / opentracing-tutorial / nodejs / lesson04 / solution / hello-context.js View on Github external
function http_get(fn, url, span) {
    const method = 'GET';
    const headers = {};
    
    span.setTag(Tags.HTTP_URL, url);
    span.setTag(Tags.HTTP_METHOD, method);
    span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_RPC_CLIENT);
    // Send span context via request headers (parent id etc.)
    tracer.inject(span, FORMAT_HTTP_HEADERS, headers);

    return request({url, method, headers})
            .then( data => {
                span.finish();
                return data;
            }, e => {
                span.finish();
                throw e;
            });

}
github yurishkuro / opentracing-tutorial / nodejs / lesson04 / solution / hello.js View on Github external
function http_get(fn, url, span) {
    const method = 'GET';
    const headers = {};
    
    span.setTag(Tags.HTTP_URL, url);
    span.setTag(Tags.HTTP_METHOD, method);
    span.setTag(Tags.SPAN_KIND, Tags.SPAN_KIND_RPC_CLIENT);
    // Send span context via request headers (parent id etc.)
    tracer.inject(span, FORMAT_HTTP_HEADERS, headers);

    return request({url, method, headers})
            .then( data => {
                span.finish();
                return data;
            }, e => {
                span.finish();
                throw e;
            });

}
github RisingStack / opentracing-auto / src / instrumentation / redis.spec.js View on Github external
client.set('string key', 'string val', (err, replies) => {
        expect(replies).to.be.eql('OK')
        expect(cls.startChildSpan).to.be.calledWith(tracer, 'redis_set', {
          tags: {
            [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
            [Tags.DB_TYPE]: instrumentation.DB_TYPE,
            [Tags.DB_STATEMENT]: 'set string key,string val'
          }
        })

        // FIXME: is this an issue?
        // expect(mockChildSpan.finish).to.have.callCount(1)

        done(err)
      })
    })
github RisingStack / opentracing-auto / src / instrumentation / httpClient.spec.js View on Github external
it('should start and finish span with http', async () => {
      nock('http://risingstack.com')
        .get('/foo')
        .reply(200)

      await request({
        uri: 'http://risingstack.com/foo',
        query: { token: 'secret' }
      })

      expect(cls.startChildSpan).to.be.calledWith(tracer, instrumentation.OPERATION_NAME, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.HTTP_URL]: 'http://risingstack.com:80/foo',
          [Tags.HTTP_METHOD]: 'GET'
        }
      })
      expect(mockChildSpan.setTag).to.have.calledWith(Tags.HTTP_STATUS_CODE, 200)
      expect(mockChildSpan.finish).to.have.callCount(1)
    })
github RisingStack / opentracing-auto / src / instrumentation / mongodbCore.spec.js View on Github external
it('should start and finish span', async () => {
      const site = {
        name: 'risingstack',
        url: 'https://risingstack.com'
      }
      const result = await dbSites.insert(site)

      expect(result).to.be.eql(site)

      expect(cls.startChildSpan).to.be.calledWith(tracer, `${instrumentation.OPERATION_NAME}_insert`, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.DB_TYPE]: instrumentation.DB_TYPE,
          [Tags.DB_STATEMENT]: JSON.stringify([site]),
          [Tags.DB_INSTANCE]: 'mydb.sites'
        }
      })
      expect(mockChildSpan.finish).to.have.callCount(1)
    })
github RisingStack / opentracing-auto / src / instrumentation / pg.js View on Github external
const spans = tracers.map((tracer) => cls.startChildSpan(tracer, operationName, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.DB_TYPE]: DB_TYPE,
          [Tags.DB_STATEMENT]: statement
        }
      }))
github RisingStack / opentracing-auto / src / instrumentation / mysql.js View on Github external
const spans = tracers.map((tracer) => cls.startChildSpan(tracer, operationName, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.DB_TYPE]: DB_TYPE,
          [Tags.DB_STATEMENT]: statement
        }
      }))
github RisingStack / opentracing-auto / src / instrumentation / mongodbCore.js View on Github external
const spans = tracers.map((tracer) => cls.startChildSpan(tracer, operationName, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.DB_TYPE]: DB_TYPE,
          [Tags.DB_STATEMENT]: statement
        }
      }))
github RisingStack / opentracing-auto / src / instrumentation / redis.js View on Github external
const spans = tracers.map((tracer) => cls.startChildSpan(tracer, operationName, {
        tags: {
          [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
          [Tags.DB_TYPE]: DB_TYPE,
          [Tags.DB_STATEMENT]: statement
        }
      }))
github artsy / metaphysics / src / lib / tracer.ts View on Github external
const createCommand = (command: string) => (
  promise: Promise
): Promise => {
  const parentScope = tracer.scopeManager().active()
  const span = tracer.startSpan("memcached", {
    childOf: parentScope && parentScope.span(),
    tags: {
      [Tags.SPAN_KIND]: Tags.SPAN_KIND_RPC_CLIENT,
      [Tags.DB_TYPE]: "memcached",
      "service.name": `${DD_TRACER_SERVICE_NAME}.memcached`,
      "resource.name": command,
      "span.type": "memcached",
    },
  })

  return promise.then(
    result => {
      span.finish()
      return result
    },
    err => {
      const tags = {
        "error.type": err.name,
        "error.msg": err.message,