Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Tristan Sloughter
    @tsloughter
    that was the issue before
    ok
    ioolkos
    @ioolkos
    exactly
    Tristan Sloughter
    @tsloughter
    better to just put this stuff in a sys.config and add the apps to applications in the .app.src :)
    ioolkos
    @ioolkos
    sure, just wanted to be as dynamic and explicit as possible
    great stuff :)
    Tristan Sloughter
    @tsloughter
    cool
    ioolkos
    @ioolkos
    thanks for your help
    ioolkos
    @ioolkos
    I noticed ?set_status(?OTEL_STATUS_OK) doesn't set status.code to 1 in opentelemetry-collector pipeline to jaeger. Always stays 'unset' and 0 in jaeger. But I guess that's an issue of the collector, not otel-erlang. (and there's also a set of deprecated status codes, it seems)
    Peter Saxton
    @CrowdHailer
    Howdy. Was just wondering if I could ask for a few more pointers. Relating to your comment in this issue. https://github.com/open-telemetry/opentelemetry-erlang/issues/160#issuecomment-734831168 stdout exporter is in the example config.exs. I'm looking at the example and can't see where the stdout exporter is set up. Looked at both the phoenix application https://github.com/opentelemetry-beam/opentelemetry-examples/blob/master/phoenix_backend/config/config.exs and the plug application that doesn't have a config file
    Tristan Sloughter
    @tsloughter
    "tdout exporter is in the example config.exs."
    ?
    Peter Saxton
    @CrowdHailer
    I've figured that part out. Was just asking for clarification on the linked comment on github.
    I now have a mostly functioning setup here https://github.com/did-app/glance/pull/2/files
    All that's let is to send the traces to somewhere I can usefully view them. i.e. replace the stdout exporter.
    What would anyone recommend using for local development.
    Peter Saxton
    @CrowdHailer
    I see a datadog setup in the examples repo but cant work out if the locally running agent will show my traces or if I need to send them to an account I have with datadog
    Peter Saxton
    @CrowdHailer
    So it looks like Jaeger and zipkin are my choices for running a collector and ui locally.
    Tristan Sloughter
    @tsloughter
    yea
    Peter Saxton
    @CrowdHailer
    I've also moved on to using the opentelemetry_exporter I can only find docs on jaeger about supporting protobuf.
    From what it says here https://www.jaegertracing.io/docs/1.21/getting-started/ I "think" I need to point the opentelemetry_exporter to use localhost: 14250
    What I'm not sure about is if model.proto means that it accepts the opentelemetry http_protobuf format. I'm guessing it does.
    Tristan Sloughter
    @tsloughter
    hm, don't know. but you can use the zipkin exporter to write to jaeger
    if you don't want to have to to the collector to get to jaeger
    Peter Saxton
    @CrowdHailer
    The zipkin exporter doesn't work with {opentelemetry, 0.5.0}
    What would you use to look at traces generated locally?
    Or perhaps more relevant what services or local things can will accept what https://github.com/open-telemetry/opentelemetry-erlang/tree/master/apps/opentelemetry_exporter is sending
    Tristan Sloughter
    @tsloughter
    not sure what else exists, opentelemetry collector might have a visualization option in its contrib repo
    Tristan Sloughter
    @tsloughter
    and the update to the zipkin exporter to 0.5.0 shouldn't be much to change
    Chulki Lee
    @chulkilee
    Hi - I'm working on improving docs - open-telemetry/opentelemetry-erlang#176 - and I have a few questions. 1) I see this gitter room is mentioned in one of README. Is this the place to join? Then I'll add it to all README
    Chulki Lee
    @chulkilee
    Also.. do we have benchmark? seems like c25ac353602cf1ce8d655e2f5c7e850e147151ce removed code from samples.
    Tristan Sloughter
    @tsloughter
    if I remember correctly the benchmarks were removed because the particular ones didn't make sense anymore and none have been added since
    this gitter is like the official opentelemetry channel for the Erlang SIG. but discussion also happens through the Erlang Ecosystem Foundation observability working group channel in the Erlang slack
    Chulki Lee
    @chulkilee

    When instrumenting a project your application should only depend on the OpenTelemetry API application, found in directory apps/opentelemetry_api of this repo which is published as the hex package opentelemetry_api.

    This is confusing - since to instrumnet my project, isn’t it supposed to use SDK, not API? e.g. SDK actually holds the implementation, and sdk depends on api, not vice versa

    Tristan Sloughter
    @tsloughter
    instrumentation is done with just the API -- meaning just adding calls to create spans and instruments and record metrics
    you then include an SDK that makes the instrumentation actually do something
    phrasing can be better for sure, that or start with definitions of stuff like "instrumenting", so it is clear that just refers to adding those calls like with_span to the code
    Tristan Sloughter
    @tsloughter
    I gotta go but if you leave more questions tomorrow my morning. thanks for the work on docs!
    Chulki Lee
    @chulkilee
    Instrumentation is hooked with just the API - but it’s no-op so end users MUST include an implementation - and opentelemetry provides it. So saying “you should only depned on opentelemetry-api” is definitely incorrect. I’ll make some changes in the PR - open-telemetry/opentelemetry-erlang#176
    Chulki Lee
    @chulkilee

    Aha probably the confusion is whether “application” is of the end-user project (e.g. project to run a web service), or my library package (e.g. HTTP library “application”). Is there any good terminology in Erlang?

    https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/library-guidelines.md uses “final application” vs “third party libraries/frameworks” btw.

    Chulki Lee
    @chulkilee
    Oh… and another source of confusion - we use apps/opentelemetry_api is for API, apps/opentelemetry for SDK.. but opentelemetry module is defined at opentelemetry_api. Hm..
    3 replies
    Tristan Sloughter
    @tsloughter
    yea, we shouldn't use "application" the same way opentelemetry spec does because it has special meaning in OTP.
    Chulki Lee
    @chulkilee

    For traces to actually be tracked, propagated and exported, the opentelemetry Application must be included as a dependency of your project, likely as part of a Release and not as a dependency of an individual Application within the Release.

    What’s the reason? I guess it is to start and supervise opentelemetry application (SDK) at the top level, not a child of a specific application. Is it correct?

    Tristan Sloughter
    @tsloughter
    no, either way it is started at the top level. it is simply to try driving home the fact that you should be depending on only the API unless you are writing something like an exporter
    Tristan Sloughter
    @tsloughter
    meeting tomorrow morning will discuss: open-telemetry/opentelemetry-erlang#188 so the more attendance the better :)
    Tristan Sloughter
    @tsloughter
    yo, I'm on vaca and won't be around for a meeting today.
    Bogdan Drutu
    @bogdandrutu
    @tsloughter can I delete this repo https://github.com/open-telemetry/opentelemetry-erlang-api ?
    Tristan Sloughter
    @tsloughter
    eh... I'd say yes except there is the possibility someone somewhere still points to it in the dependencies and then their build will break
    Bogdan Drutu
    @bogdandrutu
    :))
    so the final answer is?