libdatadog 0.9.0.1.0-aarch64-linux → 1.0.1.1.0-aarch64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/libdatadog/version.rb +1 -1
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +217 -15
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +121 -151
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +69 -37
- data/vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +217 -15
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +121 -151
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/profiling.h +69 -37
- data/vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- metadata +17 -19
- data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -78
- data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -78
- data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
@@ -1,16 +1,17 @@
|
|
1
1
|
// Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
|
2
2
|
// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2021-Present Datadog, Inc.
|
3
3
|
|
4
|
-
|
5
4
|
#ifndef DDOG_PROFILING_H
|
6
5
|
#define DDOG_PROFILING_H
|
7
6
|
|
7
|
+
#pragma once
|
8
|
+
|
8
9
|
#include <stdbool.h>
|
9
10
|
#include <stddef.h>
|
10
11
|
#include <stdint.h>
|
11
|
-
#include "
|
12
|
+
#include "common.h"
|
12
13
|
|
13
|
-
void
|
14
|
+
void ddog_prof_Exporter_NewResult_drop(struct ddog_prof_Exporter_NewResult result);
|
14
15
|
|
15
16
|
/**
|
16
17
|
* Creates an endpoint that uses the agent.
|
@@ -27,14 +28,26 @@ struct ddog_Endpoint ddog_Endpoint_agent(ddog_CharSlice base_url);
|
|
27
28
|
*/
|
28
29
|
struct ddog_Endpoint ddog_Endpoint_agentless(ddog_CharSlice site, ddog_CharSlice api_key);
|
29
30
|
|
31
|
+
/**
|
32
|
+
* Creates a new exporter to be used to report profiling data.
|
33
|
+
* # Arguments
|
34
|
+
* * `profiling_library_name` - Profiling library name, usually dd-trace-something, e.g. "dd-trace-rb". See
|
35
|
+
* https://datadoghq.atlassian.net/wiki/spaces/PROF/pages/1538884229/Client#Header-values (Datadog internal link)
|
36
|
+
* for a list of common values.
|
37
|
+
* * `profliling_library_version` - Version used when publishing the profiling library to a package manager
|
38
|
+
* * `family` - Profile family, e.g. "ruby"
|
39
|
+
* * `tags` - Tags to include with every profile reported by this exporter. It's also possible to include
|
40
|
+
* profile-specific tags, see `additional_tags` on `profile_exporter_build`.
|
41
|
+
* * `endpoint` - Configuration for reporting data
|
42
|
+
*/
|
30
43
|
DDOG_CHECK_RETURN
|
31
|
-
struct
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
44
|
+
struct ddog_prof_Exporter_NewResult ddog_prof_Exporter_new(ddog_CharSlice profiling_library_name,
|
45
|
+
ddog_CharSlice profiling_library_version,
|
46
|
+
ddog_CharSlice family,
|
47
|
+
const struct ddog_Vec_Tag *tags,
|
48
|
+
struct ddog_Endpoint endpoint);
|
36
49
|
|
37
|
-
void
|
50
|
+
void ddog_prof_Exporter_drop(struct ddog_prof_Exporter *exporter);
|
38
51
|
|
39
52
|
/**
|
40
53
|
* Builds a Request object based on the profile data supplied.
|
@@ -43,12 +56,14 @@ void ddog_ProfileExporter_delete(struct ddog_ProfileExporter *exporter);
|
|
43
56
|
* The `exporter` and the files inside of the `files` slice need to have been
|
44
57
|
* created by this module.
|
45
58
|
*/
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
59
|
+
DDOG_CHECK_RETURN
|
60
|
+
struct ddog_prof_Exporter_Request *ddog_prof_Exporter_Request_build(struct ddog_prof_Exporter *exporter,
|
61
|
+
struct ddog_Timespec start,
|
62
|
+
struct ddog_Timespec end,
|
63
|
+
struct ddog_prof_Exporter_Slice_File files,
|
64
|
+
const struct ddog_Vec_Tag *additional_tags,
|
65
|
+
const struct ddog_prof_ProfiledEndpointsStats *endpoints_stats,
|
66
|
+
uint64_t timeout_ms);
|
52
67
|
|
53
68
|
/**
|
54
69
|
* Sends the request, returning the HttpStatus.
|
@@ -62,11 +77,11 @@ struct ddog_Request *ddog_ProfileExporter_build(struct ddog_ProfileExporter *exp
|
|
62
77
|
* All non-null arguments MUST have been created by created by apis in this module.
|
63
78
|
*/
|
64
79
|
DDOG_CHECK_RETURN
|
65
|
-
struct
|
66
|
-
|
67
|
-
|
80
|
+
struct ddog_prof_Exporter_SendResult ddog_prof_Exporter_send(struct ddog_prof_Exporter *exporter,
|
81
|
+
struct ddog_prof_Exporter_Request *request,
|
82
|
+
struct ddog_CancellationToken *cancel);
|
68
83
|
|
69
|
-
void
|
84
|
+
void ddog_prof_Exporter_Request_drop(struct ddog_prof_Exporter_Request *_request);
|
70
85
|
|
71
86
|
/**
|
72
87
|
* Can be passed as an argument to send and then be used to asynchronously cancel it from a different thread.
|
@@ -85,7 +100,7 @@ struct ddog_CancellationToken *ddog_CancellationToken_new(void);
|
|
85
100
|
* cancel_t2 = ddog_CancellationToken_clone(cancel_t1);
|
86
101
|
*
|
87
102
|
* // On thread t1:
|
88
|
-
*
|
103
|
+
* ddog_prof_Exporter_send(..., cancel_t1);
|
89
104
|
* ddog_CancellationToken_drop(cancel_t1);
|
90
105
|
*
|
91
106
|
* // On thread t2:
|
@@ -109,11 +124,11 @@ bool ddog_CancellationToken_cancel(struct ddog_CancellationToken *cancel);
|
|
109
124
|
|
110
125
|
void ddog_CancellationToken_drop(struct ddog_CancellationToken *_cancel);
|
111
126
|
|
112
|
-
void
|
127
|
+
void ddog_prof_Exporter_SendResult_drop(struct ddog_prof_Exporter_SendResult result);
|
113
128
|
|
114
129
|
/**
|
115
130
|
* Create a new profile with the given sample types. Must call
|
116
|
-
* `
|
131
|
+
* `ddog_prof_Profile_drop` when you are done with the profile.
|
117
132
|
*
|
118
133
|
* # Arguments
|
119
134
|
* * `sample_types`
|
@@ -126,16 +141,16 @@ void ddog_SendResult_drop(struct ddog_SendResult result);
|
|
126
141
|
* and must have the correct number of elements for the slice.
|
127
142
|
*/
|
128
143
|
DDOG_CHECK_RETURN
|
129
|
-
struct
|
130
|
-
|
131
|
-
|
144
|
+
struct ddog_prof_Profile *ddog_prof_Profile_new(struct ddog_prof_Slice_ValueType sample_types,
|
145
|
+
const struct ddog_prof_Period *period,
|
146
|
+
const struct ddog_Timespec *start_time);
|
132
147
|
|
133
148
|
/**
|
134
149
|
* # Safety
|
135
150
|
* The `profile` must point to an object created by another FFI routine in this
|
136
151
|
* module, such as `ddog_Profile_with_sample_types`.
|
137
152
|
*/
|
138
|
-
void
|
153
|
+
void ddog_prof_Profile_drop(struct ddog_prof_Profile *_profile);
|
139
154
|
|
140
155
|
/**
|
141
156
|
* # Safety
|
@@ -144,7 +159,7 @@ void ddog_Profile_free(struct ddog_Profile *_profile);
|
|
144
159
|
* of this call.
|
145
160
|
* This call is _NOT_ thread-safe.
|
146
161
|
*/
|
147
|
-
uint64_t
|
162
|
+
uint64_t ddog_prof_Profile_add(struct ddog_prof_Profile *profile, struct ddog_prof_Sample sample);
|
148
163
|
|
149
164
|
/**
|
150
165
|
* Associate an endpoint to a given local root span id.
|
@@ -164,13 +179,29 @@ uint64_t ddog_Profile_add(struct ddog_Profile *profile, struct ddog_Sample sampl
|
|
164
179
|
* module.
|
165
180
|
* This call is _NOT_ thread-safe.
|
166
181
|
*/
|
167
|
-
void
|
168
|
-
|
169
|
-
|
182
|
+
void ddog_prof_Profile_set_endpoint(struct ddog_prof_Profile *profile,
|
183
|
+
ddog_CharSlice local_root_span_id,
|
184
|
+
ddog_CharSlice endpoint);
|
185
|
+
|
186
|
+
/**
|
187
|
+
* Count the number of times an endpoint has been seen.
|
188
|
+
*
|
189
|
+
* # Arguments
|
190
|
+
* * `profile` - a reference to the profile that will contain the samples.
|
191
|
+
* * `endpoint` - the endpoint label for which the count will be incremented
|
192
|
+
*
|
193
|
+
* # Safety
|
194
|
+
* The `profile` ptr must point to a valid Profile object created by this
|
195
|
+
* module.
|
196
|
+
* This call is _NOT_ thread-safe.
|
197
|
+
*/
|
198
|
+
void ddog_prof_Profile_add_endpoint_count(struct ddog_prof_Profile *profile,
|
199
|
+
ddog_CharSlice endpoint,
|
200
|
+
int64_t value);
|
170
201
|
|
171
202
|
/**
|
172
203
|
* Serialize the aggregated profile. Don't forget to clean up the result by
|
173
|
-
* calling
|
204
|
+
* calling ddog_prof_Profile_SerializeResult_drop.
|
174
205
|
*
|
175
206
|
* # Arguments
|
176
207
|
* * `profile` - a reference to the profile being serialized.
|
@@ -187,13 +218,13 @@ void ddog_Profile_set_endpoint(struct ddog_Profile *profile,
|
|
187
218
|
* The `end_time` must be null or otherwise point to a valid TimeSpec object.
|
188
219
|
* The `duration_nanos` must be null or otherwise point to a valid i64.
|
189
220
|
*/
|
190
|
-
struct
|
191
|
-
|
192
|
-
|
221
|
+
struct ddog_prof_Profile_SerializeResult ddog_prof_Profile_serialize(const struct ddog_prof_Profile *profile,
|
222
|
+
const struct ddog_Timespec *end_time,
|
223
|
+
const int64_t *duration_nanos);
|
193
224
|
|
194
|
-
void
|
225
|
+
void ddog_prof_Profile_SerializeResult_drop(struct ddog_prof_Profile_SerializeResult _result);
|
195
226
|
|
196
|
-
DDOG_CHECK_RETURN struct
|
227
|
+
DDOG_CHECK_RETURN struct ddog_Slice_U8 ddog_Vec_U8_as_slice(const struct ddog_prof_Vec_U8 *vec);
|
197
228
|
|
198
229
|
/**
|
199
230
|
* Resets all data in `profile` except the sample types and period. Returns
|
@@ -209,6 +240,7 @@ DDOG_CHECK_RETURN struct ddog_Slice_u8 ddog_Vec_u8_as_slice(const struct ddog_Ve
|
|
209
240
|
* can be called across an FFI boundary, the compiler cannot enforce this.
|
210
241
|
* If `time` is not null, it must point to a valid Timespec object.
|
211
242
|
*/
|
212
|
-
bool
|
243
|
+
bool ddog_prof_Profile_reset(struct ddog_prof_Profile *profile,
|
244
|
+
const struct ddog_Timespec *start_time);
|
213
245
|
|
214
246
|
#endif /* DDOG_PROFILING_H */
|
Binary file
|
@@ -10,7 +10,7 @@ includedir=${prefix}/include
|
|
10
10
|
|
11
11
|
Name: datadog_profiling
|
12
12
|
Description: Contains common code used to implement Datadog's Continuous Profilers. (Dynamic linking variant, sets rpath)
|
13
|
-
Version: 0.
|
13
|
+
Version: 1.0.1
|
14
14
|
Requires:
|
15
15
|
Libs: -L${libdir} -ldatadog_profiling -Wl,-rpath,${libdir}
|
16
16
|
Libs.private:
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libdatadog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.1.1.0
|
5
5
|
platform: aarch64-linux
|
6
6
|
authors:
|
7
7
|
- Datadog, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-06 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: libdatadog is a Rust-based utility library for Datadog's ddtrace gem.
|
14
14
|
email:
|
@@ -19,22 +19,20 @@ extra_rdoc_files: []
|
|
19
19
|
files:
|
20
20
|
- lib/libdatadog.rb
|
21
21
|
- lib/libdatadog/version.rb
|
22
|
-
- vendor/libdatadog-0.
|
23
|
-
- vendor/libdatadog-0.
|
24
|
-
- vendor/libdatadog-0.
|
25
|
-
- vendor/libdatadog-0.
|
26
|
-
- vendor/libdatadog-0.
|
27
|
-
- vendor/libdatadog-0.
|
28
|
-
- vendor/libdatadog-0.
|
29
|
-
- vendor/libdatadog-0.
|
30
|
-
- vendor/libdatadog-0.
|
31
|
-
- vendor/libdatadog-0.
|
32
|
-
- vendor/libdatadog-0.
|
33
|
-
- vendor/libdatadog-0.
|
34
|
-
- vendor/libdatadog-0.
|
35
|
-
- vendor/libdatadog-0.
|
36
|
-
- vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so
|
37
|
-
- vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc
|
22
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE
|
23
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE-3rdparty.yml
|
24
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE
|
25
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/common.h
|
26
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/profiling.h
|
27
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so
|
28
|
+
- vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc
|
29
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE
|
30
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE-3rdparty.yml
|
31
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE
|
32
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/common.h
|
33
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h
|
34
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so
|
35
|
+
- vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc
|
38
36
|
homepage: https://docs.datadoghq.com/tracing/
|
39
37
|
licenses:
|
40
38
|
- Apache-2.0
|
@@ -58,7 +56,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
58
56
|
- !ruby/object:Gem::Version
|
59
57
|
version: '0'
|
60
58
|
requirements: []
|
61
|
-
rubygems_version: 3.3.
|
59
|
+
rubygems_version: 3.3.26
|
62
60
|
signing_key:
|
63
61
|
specification_version: 4
|
64
62
|
summary: Library of common code used by Datadog Continuous Profiler for Ruby
|
@@ -1,78 +0,0 @@
|
|
1
|
-
// Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
|
2
|
-
// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2021-Present Datadog, Inc.
|
3
|
-
|
4
|
-
|
5
|
-
#ifndef DDOG_TELEMETRY_H
|
6
|
-
#define DDOG_TELEMETRY_H
|
7
|
-
|
8
|
-
#include <stdbool.h>
|
9
|
-
#include <stddef.h>
|
10
|
-
#include <stdint.h>
|
11
|
-
#include "datadog/common.h"
|
12
|
-
|
13
|
-
/**
|
14
|
-
* # Safety
|
15
|
-
* * builder should be a non null pointer to a null pointer to a builder
|
16
|
-
*/
|
17
|
-
ddog_MaybeError ddog_builder_instantiate(struct ddog_TelemetryWorkerBuilder **builder,
|
18
|
-
ddog_CharSlice service_name,
|
19
|
-
ddog_CharSlice language_name,
|
20
|
-
ddog_CharSlice language_version,
|
21
|
-
ddog_CharSlice tracer_version);
|
22
|
-
|
23
|
-
/**
|
24
|
-
* # Safety
|
25
|
-
* * builder should be a non null pointer to a null pointer to a builder
|
26
|
-
*/
|
27
|
-
ddog_MaybeError ddog_builder_instantiate_with_hostname(struct ddog_TelemetryWorkerBuilder **builder,
|
28
|
-
ddog_CharSlice hostname,
|
29
|
-
ddog_CharSlice service_name,
|
30
|
-
ddog_CharSlice language_name,
|
31
|
-
ddog_CharSlice language_version,
|
32
|
-
ddog_CharSlice tracer_version);
|
33
|
-
|
34
|
-
ddog_MaybeError ddog_builder_with_native_deps(struct ddog_TelemetryWorkerBuilder *builder,
|
35
|
-
bool include_native_deps);
|
36
|
-
|
37
|
-
ddog_MaybeError ddog_builder_with_rust_shared_lib_deps(struct ddog_TelemetryWorkerBuilder *builder,
|
38
|
-
bool include_rust_shared_lib_deps);
|
39
|
-
|
40
|
-
ddog_MaybeError ddog_builder_with_config(struct ddog_TelemetryWorkerBuilder *builder,
|
41
|
-
ddog_CharSlice name,
|
42
|
-
ddog_CharSlice value);
|
43
|
-
|
44
|
-
/**
|
45
|
-
* # Safety
|
46
|
-
* * handle should be a non null pointer to a null pointer
|
47
|
-
*/
|
48
|
-
ddog_MaybeError ddog_builder_run(struct ddog_TelemetryWorkerBuilder *builder,
|
49
|
-
struct ddog_TelemetryWorkerHandle **handle);
|
50
|
-
|
51
|
-
ddog_MaybeError ddog_handle_add_dependency(const struct ddog_TelemetryWorkerHandle *handle,
|
52
|
-
ddog_CharSlice dependency_name,
|
53
|
-
ddog_CharSlice dependency_version);
|
54
|
-
|
55
|
-
ddog_MaybeError ddog_handle_add_integration(const struct ddog_TelemetryWorkerHandle *handle,
|
56
|
-
ddog_CharSlice dependency_name,
|
57
|
-
ddog_CharSlice dependency_version,
|
58
|
-
struct ddog_Option_bool compatible,
|
59
|
-
struct ddog_Option_bool enabled,
|
60
|
-
struct ddog_Option_bool auto_enabled);
|
61
|
-
|
62
|
-
ddog_MaybeError ddog_handle_add_log(const struct ddog_TelemetryWorkerHandle *handle,
|
63
|
-
ddog_CharSlice indentifier,
|
64
|
-
ddog_CharSlice message,
|
65
|
-
enum ddog_LogLevel level,
|
66
|
-
ddog_CharSlice stack_trace);
|
67
|
-
|
68
|
-
ddog_MaybeError ddog_handle_start(const struct ddog_TelemetryWorkerHandle *handle);
|
69
|
-
|
70
|
-
struct ddog_TelemetryWorkerHandle *ddog_handle_clone(const struct ddog_TelemetryWorkerHandle *handle);
|
71
|
-
|
72
|
-
ddog_MaybeError ddog_handle_stop(const struct ddog_TelemetryWorkerHandle *handle);
|
73
|
-
|
74
|
-
void ddog_handle_wait_for_shutdown(struct ddog_TelemetryWorkerHandle *handle);
|
75
|
-
|
76
|
-
void ddog_handle_drop(struct ddog_TelemetryWorkerHandle *handle);
|
77
|
-
|
78
|
-
#endif /* DDOG_TELEMETRY_H */
|
Binary file
|
@@ -1,78 +0,0 @@
|
|
1
|
-
// Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
|
2
|
-
// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2021-Present Datadog, Inc.
|
3
|
-
|
4
|
-
|
5
|
-
#ifndef DDOG_TELEMETRY_H
|
6
|
-
#define DDOG_TELEMETRY_H
|
7
|
-
|
8
|
-
#include <stdbool.h>
|
9
|
-
#include <stddef.h>
|
10
|
-
#include <stdint.h>
|
11
|
-
#include "datadog/common.h"
|
12
|
-
|
13
|
-
/**
|
14
|
-
* # Safety
|
15
|
-
* * builder should be a non null pointer to a null pointer to a builder
|
16
|
-
*/
|
17
|
-
ddog_MaybeError ddog_builder_instantiate(struct ddog_TelemetryWorkerBuilder **builder,
|
18
|
-
ddog_CharSlice service_name,
|
19
|
-
ddog_CharSlice language_name,
|
20
|
-
ddog_CharSlice language_version,
|
21
|
-
ddog_CharSlice tracer_version);
|
22
|
-
|
23
|
-
/**
|
24
|
-
* # Safety
|
25
|
-
* * builder should be a non null pointer to a null pointer to a builder
|
26
|
-
*/
|
27
|
-
ddog_MaybeError ddog_builder_instantiate_with_hostname(struct ddog_TelemetryWorkerBuilder **builder,
|
28
|
-
ddog_CharSlice hostname,
|
29
|
-
ddog_CharSlice service_name,
|
30
|
-
ddog_CharSlice language_name,
|
31
|
-
ddog_CharSlice language_version,
|
32
|
-
ddog_CharSlice tracer_version);
|
33
|
-
|
34
|
-
ddog_MaybeError ddog_builder_with_native_deps(struct ddog_TelemetryWorkerBuilder *builder,
|
35
|
-
bool include_native_deps);
|
36
|
-
|
37
|
-
ddog_MaybeError ddog_builder_with_rust_shared_lib_deps(struct ddog_TelemetryWorkerBuilder *builder,
|
38
|
-
bool include_rust_shared_lib_deps);
|
39
|
-
|
40
|
-
ddog_MaybeError ddog_builder_with_config(struct ddog_TelemetryWorkerBuilder *builder,
|
41
|
-
ddog_CharSlice name,
|
42
|
-
ddog_CharSlice value);
|
43
|
-
|
44
|
-
/**
|
45
|
-
* # Safety
|
46
|
-
* * handle should be a non null pointer to a null pointer
|
47
|
-
*/
|
48
|
-
ddog_MaybeError ddog_builder_run(struct ddog_TelemetryWorkerBuilder *builder,
|
49
|
-
struct ddog_TelemetryWorkerHandle **handle);
|
50
|
-
|
51
|
-
ddog_MaybeError ddog_handle_add_dependency(const struct ddog_TelemetryWorkerHandle *handle,
|
52
|
-
ddog_CharSlice dependency_name,
|
53
|
-
ddog_CharSlice dependency_version);
|
54
|
-
|
55
|
-
ddog_MaybeError ddog_handle_add_integration(const struct ddog_TelemetryWorkerHandle *handle,
|
56
|
-
ddog_CharSlice dependency_name,
|
57
|
-
ddog_CharSlice dependency_version,
|
58
|
-
struct ddog_Option_bool compatible,
|
59
|
-
struct ddog_Option_bool enabled,
|
60
|
-
struct ddog_Option_bool auto_enabled);
|
61
|
-
|
62
|
-
ddog_MaybeError ddog_handle_add_log(const struct ddog_TelemetryWorkerHandle *handle,
|
63
|
-
ddog_CharSlice indentifier,
|
64
|
-
ddog_CharSlice message,
|
65
|
-
enum ddog_LogLevel level,
|
66
|
-
ddog_CharSlice stack_trace);
|
67
|
-
|
68
|
-
ddog_MaybeError ddog_handle_start(const struct ddog_TelemetryWorkerHandle *handle);
|
69
|
-
|
70
|
-
struct ddog_TelemetryWorkerHandle *ddog_handle_clone(const struct ddog_TelemetryWorkerHandle *handle);
|
71
|
-
|
72
|
-
ddog_MaybeError ddog_handle_stop(const struct ddog_TelemetryWorkerHandle *handle);
|
73
|
-
|
74
|
-
void ddog_handle_wait_for_shutdown(struct ddog_TelemetryWorkerHandle *handle);
|
75
|
-
|
76
|
-
void ddog_handle_drop(struct ddog_TelemetryWorkerHandle *handle);
|
77
|
-
|
78
|
-
#endif /* DDOG_TELEMETRY_H */
|