Skip to content

About

OpAMP clients for Python, Go, Node.js, Java and .NET on one shared core

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

OpAMP clients

OpAMP client SDKs for Python, Go, Node.js, Java and .NET, on one shared core.

Language Client OpenTelemetry integration
Python python/, docs python/otel/, docs
Go go/opamp/, docs go/opampotel/, docs; also a Collector extension and Supervisor (go/opampextension/, go/opampsupervisor/, docs)
Node.js node/opamp/, docs node/otel/, docs
Java java/opamp/, docs java/opamp-javaagent/, docs
.NET dotnet/, docs docs

docs/how-it-works.md explains how the clients and the core fit together, docs/sdks.md compares the SDKs, and examples/ runs each one.

The core is the state machine every client wraps. It arrives here compiled, as this repository's core/vX.Y.Z releases: the WebAssembly modules Go, Node.js and Java load, the native library Python and .NET load, and the interface (.proto) files the clients generate their types from. opamp-core.lock.json pins one core release and the sha256 of every file in it.

scripts/fetch_core.py fetch                  # download what the lock pins, verify it, put it in place
scripts/fetch_core.py fetch --all-platforms  # and every platform's native library, for packaging
scripts/fetch_core.py check                  # what is in place is what the lock pins
scripts/fetch_core.py lock <version>         # move to another core release

Moving to a new core is one PR: scripts/fetch_core.py lock <version>, then fetch, then scripts/gen_core.py and scripts/gen_sdk_settings.py. It holds the lock, the module copies checked in beside each client and the regenerated types; CI's fetch_core.py check and the generators' --check keep them in step.

This repository is public and holds only what PUBLIC_ALLOWLIST names; see AGENTS.md.

About

OpAMP clients for Python, Go, Node.js, Java and .NET on one shared core

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages