@@ -8,12 +8,13 @@ This repository is the Dart implementation of the [OpenTelemetry project](https:
8
8
| - | - |
9
9
| Traces | Beta |
10
10
| Metrics | Alpha |
11
- | Logs | Unimplemented |
11
+ | Logs | Beta |
12
12
13
13
## Getting Started
14
14
15
15
This section will show you how to initialize the OpenTelemetry SDK, capture a span, and propagate context.
16
16
17
+ ### Tacers
17
18
### Initialize the OpenTelemetry SDK
18
19
19
20
``` dart
@@ -62,6 +63,45 @@ void main(List<String> args) {
62
63
}
63
64
```
64
65
66
+ ### Logs
67
+ #### Initialize the OpenTelemetry SDK
68
+
69
+ ``` dart
70
+ import 'package:opentelemetry/sdk.dart'
71
+ show
72
+ BatchLogRecordProcessor,
73
+ OTLPLogExporter,
74
+ ConsoleExporter,
75
+ SimpleLogRecordProcessor,
76
+ TracerProviderBase;
77
+ import 'package:opentelemetry/api.dart'
78
+ show registerGlobalLogProvider, globalLogProvider;
79
+
80
+ void main(List<String> args) {
81
+ final logProvider = TracerProviderBase(processors: [
82
+ BatchLogRecordProcessor(
83
+ OTLPLogExporter(Uri.parse('https://my-collector.com/v1/traces'))),
84
+ SimpleLogRecordProcessor(ConsoleLogRecordExporter())
85
+ ]);
86
+
87
+ registerGlobalLogProvider(logProvider);
88
+ final tracer = globalLogProvider.get('logger-name');
89
+ }
90
+ ```
91
+
92
+ ### Capture a Log
93
+ ``` dart
94
+ import 'package:opentelemetry/api.dart' show StatusCode, globalLogProvider;
95
+
96
+ void main(List<String> args) {
97
+ final logger = globalLogProvider.get('logger-name');
98
+
99
+ logger.emit(body: "Hello World!");
100
+ }
101
+ ```
102
+
103
+
104
+
65
105
### Propagate Context
66
106
67
107
### Intra-process
0 commit comments