NAME
zerodds-grpc-bridged - DDS to gRPC bridge daemon
SYNOPSIS
zerodds-grpc-bridged [--config FILE] [--bind ADDR] [--domain ID] [--reflection] [--topic DDS:SVC]... [-V | -h]
DESCRIPTION
zerodds-grpc-bridged exposes each mapped DDS topic as a gRPC service: Publish writes the Sample payload to the topic, Subscribe returns the next sample (one per call). The payload is opaque bytes, the DDS user data as it is. TLS with ALPN h2, mTLS, bearer and JWT authentication, a topic ACL and the reflection service are served; the grpc-timeout header is not applied. Implements docs/specs/zerodds-grpc-bridge-1.0.md.
OPTIONS
- --config=FILE
-
YAML config (Spec §3). See zerodds-grpc-bridged.yaml(5).
- --bind=ADDR
-
HTTP/2 bind addr. Default: 0.0.0.0:50051.
- --domain=ID
-
DDS Domain ID. Default: 0.
- --tls-cert=FILE
-
TLS cert PEM.
- --tls-key=FILE
-
TLS key PEM.
- --tls-client-ca=FILE
-
CA PEM for client certificates (mTLS).
- --reflection
-
Enable the gRPC reflection service.
- --topic=DDS:SVC
-
Inline topic mapping override.
- --log-level=LEVEL
-
One of trace, debug, info, warn, error.
- --metrics=ADDR
-
Prometheus listen addr.
Test hooks. Real options, documented because the program accepts them and an option nobody can find is one nobody maintains.
- --once
-
Serve one request, then exit.
- --idle-timeout-ms=N
-
Exit after N milliseconds without a request.
- -V, --version
-
Print version.
- -h, --help
-
Show the option synopsis.
- --set PATH=VALUE
-
One setting above every file, repeatable; +PATH=VALUE appends to a list.
- --check-config
-
Validate and print the effective configuration with the origin of every value, then exit: 0 valid, 1 invalid value or unknown key, 2 unreadable file, syntax error or include cycle.
SIGNALS
SIGTERM and SIGINT stop the daemon. SIGHUP reads the configuration again: the TLS certificate and key, the auth settings and the topic ACL apply from then on (the certificate to new connections). Changed binds, domain, topic mappings, reflection or TLS on or off need a restart and are logged. A configuration that does not load changes nothing.
ENVIRONMENT
- OTEL_EXPORTER_OTLP_ENDPOINT
-
Optional OTLP endpoint, such as http://localhost:4318.
EXIT STATUS
0 normal stop, 1 configuration (also an auth mode that cannot be served, such as jwt without auth.jwt.public_key), 2 bind, 3 DDS, 4 TLS.
FILES
/etc/zerodds/grpc-bridged.yaml .
SEE ALSO
zerodds-grpc-bridged.yaml(5), grpcurl(1).
AUTHORS
ZeroDDS Contributors.
BEZEICHNUNG
zerodds-grpc-bridged - Bridge-Daemon von DDS nach gRPC
ÜBERSICHT
zerodds-grpc-bridged [--config DATEI] [--bind ADR] [--domain ID] [--reflection] [--topic DDS:SVC]... [-V | -h]
BESCHREIBUNG
zerodds-grpc-bridged stellt jedes zugeordnete DDS-Topic als gRPC-Dienst bereit: Publish schreibt die Nutzlast von Sample in das Topic, Subscribe gibt das nächste Sample zurück (eines je Aufruf). Die Nutzlast sind opake Bytes, die DDS-Nutzdaten unverändert. TLS mit ALPN h2, mTLS, Bearer- und JWT-Authentifizierung, eine Topic-ACL und der Reflection-Dienst werden bedient; der Header grpc-timeout wird nicht angewendet. Implementiert docs/specs/zerodds-grpc-bridge-1.0.md.
OPTIONEN
- --config=DATEI
-
YAML-Konfiguration (Spec §3). Siehe zerodds-grpc-bridged.yaml(5).
- --bind=ADR
-
HTTP/2-Bind-Adresse. Standard: 0.0.0.0:50051.
- --domain=ID
-
DDS-Domain-ID. Standard: 0.
- --tls-cert=DATEI
-
TLS-Zertifikat, PEM.
- --tls-key=DATEI
-
TLS-Schlüssel, PEM.
- --tls-client-ca=DATEI
-
CA-PEM für Client-Zertifikate (mTLS).
- --reflection
-
Schaltet den gRPC-Reflection-Dienst ein.
- --topic=DDS:SVC
-
Topic-Zuordnung auf der Kommandozeile, überschreibt die Konfiguration.
- --log-level=STUFE
-
Eine von trace, debug, info, warn, error.
- --metrics=ADR
-
Listen-Adresse für Prometheus.
Test-Hooks. Echte Optionen, dokumentiert, weil das Programm sie annimmt und eine Option, die niemand findet, auch niemand pflegt.
- --once
-
Einen Request bedienen, dann beenden.
- --idle-timeout-ms=N
-
Nach N Millisekunden ohne Request beenden.
- -V, --version
-
Gibt die Version aus.
- -h, --help
-
Zeigt die Übersicht der Optionen.
- --set PFAD=WERT
-
Eine Einstellung über allen Dateien, wiederholbar; +PFAD=WERT hängt an eine Liste an.
- --check-config
-
Prüft die wirksame Konfiguration und gibt sie mit der Herkunft jedes Werts aus, dann Ende: 0 gültig, 1 ungültiger Wert oder unbekannter Schlüssel, 2 nicht lesbare Datei, Syntaxfehler oder Include-Zyklus.
SIGNALE
SIGTERM und SIGINT beenden den Daemon. SIGHUP liest die Konfiguration neu: TLS-Zertifikat und -Schlüssel, die Authentifizierungs-Einstellungen und die Topic-ACL gelten ab dann (das Zertifikat für neue Verbindungen). Geänderte Binds, Domäne, Topic-Zuordnungen, Reflection oder TLS an oder aus brauchen einen Neustart und werden protokolliert. Eine Konfiguration, die nicht lädt, ändert nichts.
UMGEBUNGSVARIABLEN
- OTEL_EXPORTER_OTLP_ENDPOINT
-
Optionaler OTLP-Endpunkt, etwa http://localhost:4318.
EXIT-STATUS
0 normales Ende, 1 Konfiguration (auch ein Authentifizierungsmodus, der sich nicht bedienen lässt, etwa jwt ohne auth.jwt.public_key), 2 Bind, 3 DDS, 4 TLS.
DATEIEN
/etc/zerodds/grpc-bridged.yaml .
SIEHE AUCH
zerodds-grpc-bridged.yaml(5), grpcurl(1).
AUTOREN
ZeroDDS Contributors.