Skip to content

eclipse-opensovd/dlt-tracing-lib

Repository files navigation

DLT Tracing Library

A Rust library for integrating the tracing framework with COVESA DLT (Diagnostic Log and Trace). This project provides Rust bindings for DLT and a tracing subscriber that allows you to send structured logs and traces to DLT daemon.

📖 Documentation

Overview

This workspace contains three publishable crates:

Crate Description Documentation
dlt-sys Low-level FFI bindings to libdlt README
dlt-rs Safe and idiomatic Rust API for DLT logging README
tracing-dlt Tracing subscriber/layer for DLT integration README

Which crate should you use?

  • Use tracing-dlt for integration with the tracing ecosystem (recommended)
  • Use dlt-rs for direct DLT logging with a safe API (non-tracing applications)
  • Use dlt-sys only if building your own low-level abstraction (not recommended for most users)

See each crate's README for detailed examples and API documentation.

Note: tracing-dlt and dlt-rs can be used together when application registration is done through tracing-dlt.

Quick Start

Prerequisites

  • Rust 1.88.0 or later
  • libdlt must be installed on your system

Development

Building

# Build all crates
cargo build

# Build with DLT load control support
cargo build --features trace_load_ctrl

Running Tests

# Unit tests only (no DLT daemon required)
cargo test

# Integration tests (automatically starts DLT daemon)
cargo test -p integration-tests --features integration-tests

Development Container

A devcontainer is provided with DLT daemon pre-installed. Open the project in VS Code with the Dev Containers extension.

Contributing

See CONTRIBUTING.md for guidelines.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

References

Acknowledgments

This project is part of Eclipse OpenSOVD. See CONTRIBUTORS for the list of contributors.

About

Tracing appender and wrapper for libdlt

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •