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

Zig SIG: current level of interest? #2514

Open
inge4pres opened this issue Jan 14, 2025 · 11 comments
Open

Zig SIG: current level of interest? #2514

inge4pres opened this issue Jan 14, 2025 · 11 comments

Comments

@inge4pres
Copy link

Hey there folks 👋🏼
This card is up to gauge interest in maintaining a Zig implementation.

Zig is a language that is fully inter-operable with C, so producing an API and an SDK in Zig enables Zig and C programmers to onboard OpenTelemetry signals in their applications.

At first, the purpose of this groups would be:

  • create the API with regards to the OpenTelemetry specification
  • provide and maintain an SDK, the official implementation of signals collection and processing
  • provide a Semantic Convention library

Optionally further on, the building blocks listed above and created along the way could be used to complement auto-instrumentation and other parts of OpenTelemetry written in languages speaking the C ABI (BPF-based agents, CGO for Go, Rust FFI, CPython, etc...), because of how Zig compiles to C and BPF natively.

Downside: Zig is not 1.0 yet, so there may be some additional maintenance effort in keeping up to date the code with the language releases.

Currently, there is work-in-progress in unofficial implementations for metrics and traces.

If anyone is interested in progressing this work, please introduce yourself and let's chat :)

@kakkoyun
Copy link

I would be interested and happy to help.

@Drumato
Copy link

Drumato commented Jan 17, 2025

I tried to develop a toy implementation of the OpenTelemetry by Zig that is cited above, and I was invited to this forces by @inge4pres (thanks a lot!).
So I'd be happy to help in any way I can, even if it's just a little.

@inge4pres
Copy link
Author

work in progress is happening in this repo

https://github.com/zig-o11y/opentelemetry-sdk

@svrnm
Copy link
Member

svrnm commented Jan 27, 2025

@inge4pres @kakkoyun @Drumato thanks for raising this issue and your interest in creating a Zig SIG. If you are serious about this endavour, please take a look into the following document that outlines how you can get started with a new project:

https://github.com/open-telemetry/community/blob/main/project-management.md

@devatbosch
Copy link

Hi @inge4pres ,

Seems am little late to the party, just wanted to express my interest for this project and would be happy to help on the associated topics. Would be great if I can be taken up.

Bit about me:
Am a Software Engineer in the automotive domain. Have recently started contributing to open-source but love learning new technologies. Primarily, I have worked with C and Python.

Do let me know if I too can provide any support to your repo.

Thank You!

@inge4pres
Copy link
Author

@devatbosch I invited you as a collaborator in the repo!
Feel free to drop issues and poke into the open PRs 👍🏼

@inge4pres
Copy link
Author

If you are serious about this endavour, please take a look into the following document that outlines how you can get started with a new project:

https://github.com/open-telemetry/community/blob/main/project-management.md

hello @svrnm I read the link you shared, thanks for that!
After reading it I'm not 100% sure what forming a SIG entails, can it be compared to proposing a project?
What would be the outcome: that the project is either approved or dismissed, after community discussion?

@danielgblanco
Copy link
Contributor

The formation/bootstrapping of the SIG would be the project itlsef, with some short term deliverables and proposed timelines (e.g. to deliver API/SDK compliance to a certain version). It helps to have a checkpoint after the project is delivered, and decide on the health of the SIG to continue or not. See an example here.

@kakkoyun
Copy link

The formation/bootstrapping of the SIG would be the project itlsef, with some short term deliverables and proposed timelines (e.g. to deliver API/SDK compliance to a certain version). It helps to have a checkpoint after the project is delivered, and decide on the health of the SIG to continue or not. See an example here.

I think it doesn't hurt to form a SIG and make things official! ➕ ➕ ➕

@inge4pres
Copy link
Author

inge4pres commented Feb 16, 2025

I think it doesn't hurt to form a SIG and make things official! ➕ ➕ ➕

+1, I have the following doubt wrt to the Project Management template.
In the Project Proposal section, one of the minimum requirements is "Two TC/GC members, or community members delegated by the them, to sponsor the project."

How can we get there?
IIUC this means getting 2 people that are already members (and from different companies) to sponsor the project, correct?

@danielgblanco
Copy link
Contributor

Thanks. That's correct. In particular, it'll be important for a TC member to sponsor the creation of a new language SIG, to ensure success of the initial deliverables. After that, the SIG can operate as any other language SIG. The project proposal is a way to communicate the problem to solve and set those initial deliverables, and it's also a more formal commitment by those listed in the PR to work on it after approved.

Having said this, and as we discussed in our last GC/TC meeting on Wed 12th Feb, we (GC/TC) need to be mindful of not committing to more work than we have bandwidth for, so I cannot promise this project would be picked up straight away (see list of active projects). After the PR is open, we can discuss who in the TC and GC would have bandwidth and expertise enough to be able to assist, or if they can delegate to somebody else in the community.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants