1
1
![ logo] ( https://assets.gitlab-static.net/uploads/-/system/group/avatar/10553166/logo_white.ico?width=64 )
2
2
3
- # Tracing
3
+ # Debugger implementation
4
4
5
- Implementations of ` tracing ` [ Subscriber ] ( https://docs.rs/tracing/latest/tracing/trait.Subscriber.html ) for use with
6
- BP3D software. Supports traditional logging through bp3d-logger and supports remote profiling through TCP .
5
+ This repository contains the main implementation of bp3d-debug as well as all needed support tools.
6
+ This is the official implementation of bp3d-debug for use within all BP3D software .
7
7
8
- ## Status
8
+ ## BP3D logger
9
+
10
+ A flexible log system intended to be used with BP3D software.
11
+
12
+ ### Main features
13
+ - Asynchronous to avoid blocking any of the application threads.
14
+ - Multithreaded compatible.
15
+ - Local time based logging (configurable).
16
+ - Support for file logging.
17
+ - Support for stdout/stderr logging.
18
+ - Support for in memory logger.
19
+ - Easily switch on/off logging backends.
20
+ - Default logging backends should not panic/abort/crash the software in any way.
21
+
22
+ #### stdout/stderr
23
+ - Error messages are written to stderr instead of stdout (configurable).
24
+ - If write fails, message is ignored; no panic produced.
25
+
26
+ #### file logging
27
+ - If write fails, message is ignored.
28
+
29
+ #### in memory
30
+ - Log is limited to a fixed number of messages (configurable).
31
+
32
+ ## BP3D Tracing
33
+
34
+ This crate contains the actual implementation for bp3d-debug.
35
+ Supports traditional logging through bp3d-logger and supports remote profiling through TCP.
36
+
37
+ ### Status
9
38
10
39
This crate is currently ** highly experimental** and may not work on all systems. Currently, this is fully tested on
11
40
` macOS 12.3.1 ` only. It may work on other ` unix ` systems.
12
41
13
42
Additionally, this is currently broken on ` Windows ` systems.
14
43
15
- ## Usage
44
+ ### Usage
16
45
17
- ### In code
46
+ #### In code
18
47
19
48
``` rust
20
49
fn main () {
@@ -27,7 +56,7 @@ fn main() {
27
56
without first dropping the ` _guard ` guard variable. Failing to do so will result in truncated logs with the logger
28
57
backend and data loss with the profiler backend.
29
58
30
- ### Running
59
+ #### Running
31
60
32
61
To configure the behavior of ` bp3d-tracing ` some environment variables are used:
33
62
0 commit comments