Giter Site home page Giter Site logo

Comments (6)

tedsuo avatar tedsuo commented on July 29, 2024 2

Sounds like there is agreement that we should not close the child spans (I agree as well).

Also, I feel this is a spec (cross-language) issue, and it should work the same in all languages.

from opentelemetry-js.

mayurkale22 avatar mayurkale22 commented on July 29, 2024

This looks like a legacy implementation and I am not sure about the logic. I think we should not close child spans forcefully (by default), and like the idea of passing an option to force child spans to end.

Few questions floated in my mind,

  • Does it cause memory leakage if anyone failed to end the span, due to bad code?
  • How does it get visualized in Zipkin, Jaeger etc exporters? Does it create separate orphan span?

from opentelemetry-js.

SergeyKanzhelev avatar SergeyKanzhelev commented on July 29, 2024

it is a good point that cross languages spec needs to document this decision. As an experiment, I've added spec-needed label and corresponding issue: open-telemetry/opentelemetry-specification#18

from opentelemetry-js.

rochdev avatar rochdev commented on July 29, 2024

There are tons of valid use cases for a child span to finish after its parent, and in some cases even start after its parent is finished. This is especially true in Node where everything happens asynchronously.

What is the use case for the configuration option? When would you want to auto finish the children?

from opentelemetry-js.

hekike avatar hekike commented on July 29, 2024

+1 on not closing child spans automatically. For the same reason, I find it hard to get span ending casualty right around closing an operation.

from opentelemetry-js.

mayurkale22 avatar mayurkale22 commented on July 29, 2024

Closed via open-telemetry/opentelemetry-specification#18

from opentelemetry-js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.