NAME

zerodds-record - capture and inspect ZeroDDS .zddsrec files

SYNOPSIS

zerodds-record record [-o FILE] [-d DOMAIN] [-t TOPIC]... [--duration DUR] [--max-sample-bytes N] [--decode --type-file IDL] [--map TOPIC=Type]... [--out-json FILE] [--out-sqlite FILE] [--dialect NAME]

zerodds-record info FILE

zerodds-record list FILE

DESCRIPTION

zerodds-record captures live DDS topics into a versioned binary .zddsrec file and reads existing files for inspection.

The record sub-command starts a DCPS runtime, registers a user-reader per --topic flag, and writes every received sample into the output file. Recording stops on SIGINT or after --duration elapses.

info parses the file header and prints time-base, participants and topic list. list counts frames per topic.

OPTIONS FOR record

-o, --output FILE

Output path. Default: capture-<unix-ts>.zddsrec.

-d, --domain ID

DDS Domain ID. Default: 0.

-t, --topic NAME

Topic to subscribe (repeatable, at least one required).

--duration DUR

Recording duration: 5, 30s, 2m, 1h. Default: indefinite (until SIGINT).

--max-sample-bytes N

DoS cap per sample. Default: 1048576.

--config PATH

The base configuration file; its sibling PATH.d/ holds drop-ins. Default: the system configuration directory (/etc/zerodds on Linux, /usr/local/etc/zerodds on macOS).

--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.

DECODED OUTPUT FOR record

The opaque .zddsrec is always written as well.

--decode

Decode samples to typed values. Needs --type-file.

--type-file IDL

Out-of-band IDL providing the types.

--map TOPIC=Type

Override which IDL type decodes a topic (repeatable).

--out-json FILE

Write decoded samples as NDJSON.

--out-sqlite FILE

Write decoded samples to per-topic SQLite. An existing FILE is replaced, as with -o and --out-json.

--dialect NAME

The wire dialect to decode in: cyclone, rti, fastdds, opendds and the others zerodds-idlc generate --dialect takes. Default: the configuration's wire.codec_dialect, itself specification unless set. The decoder does not infer it from the bytes; a sample written in another dialect is reported, not accepted.

GLOBAL OPTIONS

-h, --help

Show help and exit.

-V, --version

Print version and exit.

EXIT STATUS

0

Success.

2

CLI parse error.

3

DDS or I/O error.

FILES

capture-<unix-ts>.zddsrec

Default output filename when --output is not given.

SEE ALSO

zerodds-admin(1), zerodds-replay(1)

Spec: docs/specs/zddsrec-1.0.md

AUTHORS

ZeroDDS Contributors <release@zerodds.org>

BEZEICHNUNG

zerodds-record - ZeroDDS-Dateien .zddsrec aufzeichnen und untersuchen

ÜBERSICHT

zerodds-record record [-o DATEI] [-d DOMÄNE] [-t TOPIC]... [--duration DAUER] [--max-sample-bytes N] [--decode --type-file IDL] [--map TOPIC=Typ]... [--out-json DATEI] [--out-sqlite DATEI] [--dialect NAME]

zerodds-record info DATEI

zerodds-record list DATEI

BESCHREIBUNG

zerodds-record zeichnet laufende DDS-Topics in eine versionierte Binärdatei .zddsrec auf und liest vorhandene Dateien zur Untersuchung.

Der Unterbefehl record startet eine DCPS-Laufzeitumgebung, registriert einen User-Reader je Option --topic und schreibt jedes empfangene Sample in die Ausgabedatei. Die Aufzeichnung endet bei SIGINT oder nach Ablauf von --duration.

info parst den Dateikopf und gibt Zeitbasis, Teilnehmer und Topic-Liste aus. list zählt die Frames je Topic.

OPTIONEN FÜR record

-o, --output DATEI

Ausgabepfad. Standard: capture-<unix-ts>.zddsrec.

-d, --domain ID

DDS-Domain-ID. Standard: 0.

-t, --topic NAME

Topic, das abonniert wird (wiederholbar, mindestens eines ist Pflicht).

--duration DAUER

Dauer der Aufzeichnung: 5, 30s, 2m, 1h. Standard: unbegrenzt (bis SIGINT).

--max-sample-bytes N

Obergrenze je Sample gegen DoS. Standard: 1048576.

--config PFAD

Die Basis-Konfigurationsdatei; das danebenliegende PFAD.d/ enthält Drop-ins. Standard: das System-Konfigurationsverzeichnis (/etc/zerodds unter Linux, /usr/local/etc/zerodds unter macOS).

--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.

DEKODIERTE AUSGABE FÜR record

Die opake Datei .zddsrec wird immer zusätzlich geschrieben.

--decode

Samples in typisierte Werte dekodieren. Braucht --type-file.

--type-file IDL

IDL außerhalb der Aufzeichnung, die die Typen liefert.

--map TOPIC=Typ

Überschreibt, welcher IDL-Typ ein Topic dekodiert (wiederholbar).

--out-json DATEI

Dekodierte Samples als NDJSON schreiben.

--out-sqlite DATEI

Dekodierte Samples in SQLite schreiben, je Topic. Eine vorhandene DATEI wird ersetzt, wie bei -o und --out-json.

--dialect NAME

Der Wire-Dialekt, in dem dekodiert wird: cyclone, rti, fastdds, opendds und die anderen, die zerodds-idlc generate --dialect annimmt. Standard: wire.codec_dialect aus der Konfiguration, selbst specification, solange nicht gesetzt. Der Decoder leitet den Dialekt nicht aus den Bytes ab; ein Sample, das in einem anderen Dialekt geschrieben ist, wird gemeldet, nicht angenommen.

GLOBALE OPTIONEN

-h, --help

Zeigt die Hilfe und beendet sich.

-V, --version

Gibt die Version aus und beendet sich.

EXIT-STATUS

0

Erfolg.

2

Fehler beim Parsen der Kommandozeile.

3

DDS- oder E/A-Fehler.

DATEIEN

capture-<unix-ts>.zddsrec

Standard-Dateiname der Ausgabe, wenn --output nicht angegeben ist.

SIEHE AUCH

zerodds-admin(1), zerodds-replay(1)

Spec: docs/specs/zddsrec-1.0.md

AUTOREN

ZeroDDS Contributors <release@zerodds.org>