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

Add node.js app to distributed tracing sample app #16603

Closed
lmolkova opened this issue Jul 28, 2021 · 2 comments
Closed

Add node.js app to distributed tracing sample app #16603

lmolkova opened this issue Jul 28, 2021 · 2 comments
Assignees
Labels
Azure.Core Client This issue points to a problem in the data-plane of the library.

Comments

@lmolkova
Copy link
Member

lmolkova commented Jul 28, 2021

We're working on distributed tracing sample app between azure sdk and azure monitor. We want to publish it on Azure-Samples and let users play with it. It's also a reasonable testbed for us to test how instrumentation integrates with typical user apps and OTel ecosystem.

Here's a brief plan (internal only) and draft with .NET and Java

Adding new service

  • add HTTP controller, it doesn't have to do anything for now
  • add EventHub consumer: pick a typical way to integrate with EventHub
    • e.g. Java supports messaging through Java APIs, maybe there is something similar in Node.js?
    • or just use vanilla EventHub SDK with handler
    • use checkpointing with Storage
  • Add OpenTelemetry
    • setup OpenTelemtey
    • enable applicable set of auto-instrumentation, make sure to enable popular HTTP clients (including one in Azure SDK), web framework that you use
    • enable Azure SDK collection if needed
    • based on configuration (TELEMETRY_DESTINATION env var), configure either
      • ApplicationInisght SDK
      • or Jaeger

Try to be as idiomatic as possible

  • write code as users would do it
    • open questions: context propagation: users would likely configure async hooks through OTel, but JS SDK needs to call right APIs on OTel
  • pick typical (web) frameworks as users would have
  • configuration should be done through dockerfiles, docker-compose and .env files only

App Logic

  • App should respond to HTTP server calls
  • App should consume messages through EventHub and checkpoint them.

Add app into the draft repo

@lmolkova lmolkova added the Client This issue points to a problem in the data-plane of the library. label Jul 28, 2021
@lmolkova
Copy link
Member Author

/cc @maorleger

@maorleger
Copy link
Member

Closed via lmolkova/azuresdk_tracing_demo#1

@github-actions github-actions bot locked and limited conversation to collaborators Apr 11, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Azure.Core Client This issue points to a problem in the data-plane of the library.
Projects
None yet
Development

No branches or pull requests

3 participants