Community: Coordinating applications: Community Bridge Q3-Q4 round is open for the project applications

Created on 1 Sep 2020  路  28Comments  路  Source: open-telemetry/community

This issue is to help coordinate applications and mentors who want to participate.

If you are active on OpenTelemetry (ideally approver or maintainer) and want to mentor somebody as part of Community Bridge, please comment on this issue.

If you have an idea for the project, please also do it in this issue before submitting to the Community Bridge repository. Ideally project should be contained and student should be able to finish it in a few weeks. Project MUST NOT be on critical path for important milestone like GA.

If you have both - project idea and ready to mentor - this is a double win!

Greetings everyone!

CNCF is happy to announce that the Community Bridge mentorship program is open for the project applications for the Q3-Q4'2020 cycle. The full program description you may find at the CNCF mentoring repo.

Project maintainers and/or potential mentors are welcome to submit their ideas via submitting a PR to GitHub here.

Please do it by September 7.

As a reminder, we had two successful mentorship rounds earlier this year (Q1, Q2), with almost 30 mentees and 16 CNCF projects participating in total!

All 28 comments

CC:

  • @open-telemetry/dotnet-approvers
  • @open-telemetry/php-approvers
  • @open-telemetry/javascript-approvers
  • @open-telemetry/java-instrumentation-approvers
  • @open-telemetry/java-approvers
  • @open-telemetry/go-approvers
  • @open-telemetry/ruby-approvers
  • @open-telemetry/swift-approvers
  • @open-telemetry/cpp-approvers
  • @open-telemetry/collector-approvers
  • @open-telemetry/erlang-approvers
  • @open-telemetry/python-approvers
  • @open-telemetry/opentelemetry-python-contrib-approvers
  • @open-telemetry/rust-approvers
  • @open-telemetry/docs-approvers
  • @open-telemetry/docs-cn-approvers
  • @open-telemetry/technical-committee

Project

Add exporter for ETW (Event Tracing for Windows) as one of the optional recommended exporters that languages may decide to implement as part of SDK. With initial implementation proposed for:

  • C++
  • C#

Logical Reasoning

Application logs, service logs, even Docker-on-Windows logs can be directed to ETW (ref. https://docs.docker.com/config/containers/logging/etwlogs/ ). Many products running on Windows (most Microsoft products, Intel products, Docker, etc.) - rely on ETW channel. Adding support for ETW for Windows platforms in SDK would allow any cross-platform codebase to be instrumented with OpenTelemetry instead of using Win32 API directly, e.g. replacing Docker etwlogs driver with structured ETW traces emitted using OpenTelemetry C++ SDK. Final product demo could be the Docker using OpenTelemetry C++ SDK for traces, and Docker on Windows - using OpenTelemetry C++ SDK with ETW exporter.

Extra bonus points

Two 'extra' pieces that can be covered in addition to the main exporter piece:

  • Writing a projection layer for other languages (e.g. Java or node on Windows), that allows to dispatch traces to OpenTelemetry C++ SDK with ETW exporter. That flow would allow Java and node services / servers running on Windows hosts to route their telemetry to ETW listener agent.

  • Separate effort that implements ETW Provider listener (Agent), that subsequently uses OpenTelemetry .NET SDK to dispatch all telemetry collected to OTLP exporter (or any other exporter supported by .NET SDK). Very nice and simple example how to implement a listener: https://github.com/fireeye/SilkETW

Add exporter for ETW (Event Tracing for Windows) as one of the optional recommended exporters that languages may decide to implement as part of SDK. With initial implementation proposed for:

Neat idea. Would it make more sense when we have logging APIs? Or you envision ETW exporter for Traces, Metrics would be useful by itself? Do you have end-to-end demo in mind, perhaps some consumer of ETW?

Would message pack exporter be a similar step? I can see how we can demo it with FluentBit consuming OpenTelemetry.

Would it make more sense when we have logging APIs?

I was thinking about defining how we can express Traces and Metrics over that channel, and yes - Logging is the next step, but we do not have to wait for the formal Logging API. I think exporter for Traces and Metrics would be useful too.

Do you have end-to-end demo in mind, perhaps some consumer of ETW?

There are several customers that I am aware of are gonna be interested in deploying this in production. We can do end-to-end demo with some exporter, for example, Application Insights, Grafana, or Google Cloud exporter. I do not have a preference of where to / what Agent (FluentBit or our own 'test agent') is gonna send the data, as long as we implement the 1st part of the flow (process to SDK to ETW), the rest of the flow from ETW listener can be bound to any destination.

Would message pack exporter be a similar step?

It is conceptually similar - we can add that too. But - it's a bit semantically different. ETW itself allows for structured logs traces, and there is a number of tools (e.g. https://docs.microsoft.com/en-us/windows-hardware/test/wpt/ ) that allow to visually inspect the structured ETW logs ... ahem... TRACES 馃榿 .. today.

Basically there could be two tracks:

  • standard structured ETW event. Pros: compatible with existing tools. Cons: flat list - key-value property bag, requires "unflattening".
  • ETW event that carries MsgPack encoded event. Pros: carries structured tree. Cons: incompatible with WPT tools.

Basically both methods could be implemented. Adding MsgPack in addition to regular structured ETW would be rather trivial (at least I can speak of C++ SDK, gonna be relatively trivial).

I'd love to have some mentees work on the opentelemetry-php project, finishing some of the milestones for our releases.

please submit a PR like this cncf/mentoring#280 asap. Deadline was yesterday

Thanks @SergeyKanzhelev - added here

@SergeyKanzhelev Thanks for adding my proposal!! Looking forward to make it happen.

the process last time was that there will be candidates and CNCF will tell us how many spots we have for OpenTelemetry. Than we will need to match candidates and projects. I'll close this issue and will reach out when it's time for the next steps.

I don't have a proposal but I'm always open to act as a mentor if someone who is interested in Erlang/Elixir (or any BEAM language really, bindings for https://gleam.run/ would be interesting for example).

@maxgolov @bobstrecansky can you please create an issues for the proposed projects today?

@SergeyKanzhelev - work item for OT C++ SDK: https://github.com/open-telemetry/opentelemetry-cpp/issues/326

Created one for php as well. https://github.com/cncf/mentoring/pull/289

@SergeyKanzhelev my apologies, missed the notification for this. Thank you for opening that issue.

@SergeyKanzhelev my apologies, missed the notification for this. Thank you for opening that issue.

it was a very short notice, no worries at all. I thought we would only need issues when the project would be picked, but turned out it is needed earlier

@maxgolov @bobstrecansky can you please apply to be a mentor on Community Bridge? OpenTelemetry got a spot.

Can you please ask them to apply directly via the Community Bridge platform ("Become a Mentor" link on the top of https://people.communitybridge.org/)?

I'm working as a man in the middle here. Please apply to be an OpenTelemetry mentor on the platform. I will do it tonight so will know later how exactly to do it. Shouldn't be too hard

I see myself listed as a Mentor for the OpenTelemetry project: https://people.communitybridge.org/project/f1275c0e-7152-4e09-8d8b-6b14598afbc3

@SergeyKanzhelev Can we not work for the ETW exporter project? I cannot find that project at CommunityBridge

@SergeyKanzhelev @bobstrecansky - would you guys please also add me as mentor? Just applied.

@shivam-51 - It's the OpenTelemetry project listed above. The task is in the opentelemetry-cpp GitHub repo:
https://github.com/open-telemetry/opentelemetry-cpp/issues/326

CC: @idvoretskyi

@maxgolov when did you apply for the mentorship?

@maxgolov when did you apply for the mentorship?

@SergeyKanzhelev Yesterday.

image

@maxgolov I haven't received it for some reason. Can you please email me to 'ihor at cncf.io' with your email address and real name - I'll invite you.

Thanks.

@maxgolov confirmed that it's fixed.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lalitb picture lalitb  路  3Comments

dashpole picture dashpole  路  3Comments

punya picture punya  路  4Comments

tigrannajaryan picture tigrannajaryan  路  3Comments

blumamir picture blumamir  路  4Comments