Trace erfasst serielle Byte-Streams in Echtzeit und macht sie als strukturierte Telegramme sichtbar — RS232, USB-Serial, CAN, SPI. Eigene Protokolle beschreibst du rein deklarativ in TrIML, ganz ohne eine Zeile Code.
Trace nimmt den nackten Byte-Strom von der Leitung und liefert vollständig interpretierte Telegramme — mit Feldern, Enums, Prüfsummen und hierarchischen Beschreibungen. Live, persistiert und durchsuchbar.
Erfassen, dekodieren, durchsuchen, triggern, aufzeichnen — und per Relay aus der Ferne. Alles in einer Oberfläche.
Felder, Verzweigungen, Prüfsummen und Enums in XML — die Engine wertet sie zur Laufzeit aus und tauscht laufende Ports per Hot-Swap.
Lock-free SPSC-Ring-Buffer im Hot Path. Jedes Byte bekommt einen atomaren Millisekunden-Zeitstempel — exakte Delta- und Dauerberechnung ohne Sekundengrenzen-Fehler.
Volltextsuche über alle Telegramme mit O(log n)-Navigation, kombinierbaren Port-Filtern und Live-Treffern — direkt im laufenden Stream.
Deklarative Predicates oder NLua-Skripte werten jeden Frame aus — mit eigener Hit-Liste pro Trigger.
Jede Aufnahme liegt komplett in einer .msf-Datei — inklusive fertiger Interpretation. Kein Interpreter nötig zum Öffnen.
Sicherer Zugriff auf Trace-Instanzen hinter NAT/Firewall — Ed25519-signiert, NAT-freundlich, mit Live-Dashboard.
Eine vollständige TrIML-Definition — und der Frame, den die Engine daraus zur Laufzeit erzeugt. Risikofrei testbar über POST /api/interpreters/dryrun.
<?xml version="1.0" encoding="utf-8"?> <Trace-Interpreter-Definition> <interpreter name="My-Interpreter" type="FrameOriented" /> <definition> <!-- Wertetabelle (Enum) --> <valuedescriptor type="byte" name="type-desc"> <descriptor value="0x01" label="Status" /> <descriptor value="0x02" label="Command" /> </valuedescriptor> <!-- Das Telegramm --> <message> <const type="byte" value="0x02" name="STX" /> <byte name="Type" valuedescriptor="type-desc" /> <byte name="Length" /> <array sizeRef="Length" name="Payload" /> <const type="byte" value="0x03" name="ETX" /> <match label="Frame" /> </message> </definition> </Trace-Interpreter-Definition>
Native C99-Capture-Engine, .NET-10-Server mit Interpretern, Echtzeit-Push per SignalR — bis in die WASM-Oberfläche.
Physische Interfaces liefern den rohen Byte-Strom.
Plugins, SPSC-Pipes, Zeitstempel, FileWriter → .bin.
32 Interpreter, 6 Controller, SignalR-Hub, Sessions.
WASM-Oberfläche auf Canvas, CLI und Desktop-App.
Die TrIML-Referenz führt vom ersten Telegramm bis zur vollständigen Element-Referenz — mit Mustern, Beispielen und Live-Test.