haixuanTao
70e6d4ce8f
Remove code duplicate for tracing subscriber and use env variable to manage log level.
The intent of this commit is to remove the quantity of log that is being pushed to user.
This commit removes the redeclaration of a set up tracing methods to centralise
the tokio-tracing subscriber within the extension crate. It also add the
feature to filter information based on Environment variable.
This makes it possible to define the log level for tokio tracing like
this:
```
RUST_LOG=debug dora-daemon --run-dataflow dataflow.yml
```
I have also unified the feature flag to make it easier to manage tracing features among the workspace.
I did not change the default behaviour of tracing in our crates and therefore by
using the command above you should get the same tracing log as before.
fix merge conflict generated
3 years ago
Philipp Oppermann
7232a31b57
Send `InputClosed` events to operators too
3 years ago
Philipp Oppermann
df17e2b2cf
Enable tracing subscriber for C and C++ node APIs by default
3 years ago
Philipp Oppermann
52f8957d43
Update operator C header file for new event-based interface
3 years ago
Philipp Oppermann
cdc0be1206
Rename `FfiEvent` to `RawEvent`
3 years ago
Philipp Oppermann
62319f1ec1
Add support for Rust operators again
3 years ago
Philipp Oppermann
d334c6f243
Make `daemon` module of Rust node API private and reexport symbols
3 years ago
Philipp Oppermann
20ffe50389
Use prefixed names for dora event enum variants in C API to avoid name conflicts
3 years ago
Philipp Oppermann
453c40d20b
Update C node API for new daemon API
3 years ago
Philipp Oppermann
df5dcfb342
Merge branch 'main' into unify-nodes-and-operators
3 years ago
Philipp Oppermann
433b7b4ed7
Merge branch 'main' into unify-nodes-and-operators
3 years ago
Philipp Oppermann
d8260d5d2c
Inherit package version from workspace root
This way, we don't need to update the version manually in all sub-crates on every release.
3 years ago
haixuanTao
9a0b303e98
Replace all versions to `v0.1.1`
3 years ago
Philipp Oppermann
201fd228f5
Remove communication layer from dora-node-api
3 years ago
Philipp Oppermann
8e64c60105
Merge pull request #121 from dora-rs/c++-operator-api
Implement a C++ operator API
3 years ago
Philipp Oppermann
5375628930
Allow operators to stop the full dataflow
Useful in case of emergencies.
3 years ago
Philipp Oppermann
34b57e964c
Set default visibility for `EXPORT` symbols on UNIX
3 years ago
Philipp Oppermann
0ac5a722e3
Implement a C++ operator API
Based on Rust API using `cxx` for bridging.
3 years ago
Philipp Oppermann
1c1891446a
Add `uhlc` timestamp to message metadata
3 years ago
Philipp Oppermann
e8c17a864e
Adjust C and python node apis for new input/output API
3 years ago
Philipp Oppermann
7e9c3050f9
Use `tracing` for logging state of nodes, coordinator, and runtimes
3 years ago
Philipp Oppermann
0df06fce86
Send metadata in messages encoded with capnproto
Changes the message format from raw data bytes to a higher-level `Message` struct serialized with capnproto. In addition to the raw data, which is sent as a byte array as before, the `Message` struct features `metadata` field. This metadata field can be used to pass open telemetry contexts, deadlines, etc.
3 years ago
Philipp Oppermann
9c8cbda89d
Fix: Enable `zenoh` feature for C node API
3 years ago
Philipp Oppermann
848e136a75
Move communication layer implementation into separate library
To make it usable for other projects.
3 years ago
Philipp Oppermann
eee7f42b45
Remove debug output again
3 years ago
Philipp Oppermann
02270af151
Use `c_void` for dora C node API
3 years ago
Philipp Oppermann
0f22879776
Add debug output to C node API
3 years ago
Philipp Oppermann
63cb32ed46
Make icoryx and zenoh communication layers optional
3 years ago
Philipp Oppermann
03348c5be8
Redesign communication layer to be synchronous and add support for iceoryx
3 years ago
Philipp Oppermann
9866328bf8
Merge branch 'main' into safer-ffi
3 years ago
Philipp Oppermann
6d5d7bc112
Run cargo fmt
3 years ago
Philipp Oppermann
0cb99e4d4d
Adjust c-dataflow example operator for new API
3 years ago
Philipp Oppermann
99955ad369
Fix C header type assertion
3 years ago
Philipp Oppermann
c54209ff98
Pass `SendOutput` by reference
3 years ago
Philipp Oppermann
89ffece563
Add functions declarations to C header
3 years ago
Philipp Oppermann
a2fd5b0ebd
Autogenerate the `operator_api.h` header file
3 years ago
Philipp Oppermann
79d4b90018
Use else for declaring EXPORT on macOS too
3 years ago
Philipp Oppermann
1f59bd8099
Add `__declspec(dllexport)` attribute in header file instead
3 years ago
Philipp Oppermann
5d334a4c4d
Add docs and safety annotations to the functions of the dora node C API
4 years ago
Philipp Oppermann
4e6b786fa1
Add a node_api.h header file
4 years ago
Philipp Oppermann
0d2394a5eb
Fix: Use `size_t` instead of `int` for length arguments
4 years ago
Philipp Oppermann
5004aa9d6e
Specify a license for the node-api-c crate
4 years ago
Philipp Oppermann
b849d31496
Rename operator API header file to operator_api.h
4 years ago
Philipp Oppermann
3287761393
Mark the C node API functions as no_mangle
4 years ago
Philipp Oppermann
d1a256a47a
Mark most functions as unsafe since they deref the given pointers
4 years ago
Philipp Oppermann
b2577acf14
Implement API functions for reading inputs and sending outputs
4 years ago
Philipp Oppermann
370cadee6b
Start creating a staticlib with a node API for C
4 years ago
haixuanTao
28a902d83a
Moving folders in correspondance with #41
Simply moving crate to mirror our discussion without touching at names
4 years ago