libdatadog 16.0.1.1.0 → 18.1.0.1.0
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 +2 -2
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +8181 -4123
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +585 -123
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/crashtracker.h +108 -14
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/data-pipeline.h +49 -2
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/library-config.h +18 -6
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +357 -42
- data/vendor/{libdatadog-16.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/telemetry.h +27 -30
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +8181 -4123
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +585 -123
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/crashtracker.h +108 -14
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/data-pipeline.h +49 -2
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/library-config.h +18 -6
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +357 -42
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/telemetry.h +27 -30
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-16.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/LICENSE-3rdparty.yml +8181 -4123
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +585 -123
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/crashtracker.h +108 -14
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/data-pipeline.h +49 -2
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/library-config.h +18 -6
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/profiling.h +357 -42
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/telemetry.h +27 -30
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-16.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/LICENSE-3rdparty.yml +8181 -4123
- data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/common.h +585 -123
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/crashtracker.h +108 -14
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/data-pipeline.h +49 -2
- data/vendor/{libdatadog-16.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/library-config.h +18 -6
- data/vendor/{libdatadog-16.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +357 -42
- data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/telemetry.h +27 -30
- data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- metadata +56 -59
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-16.0.1 → libdatadog-18.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
@@ -12,6 +12,13 @@
|
|
12
12
|
#include <stdint.h>
|
13
13
|
#include "common.h"
|
14
14
|
|
15
|
+
#if defined(_WIN32) && defined(_CRASHTRACKING_COLLECTOR)
|
16
|
+
#include <werapi.h>
|
17
|
+
#include <windows.h>
|
18
|
+
#endif
|
19
|
+
|
20
|
+
|
21
|
+
|
15
22
|
typedef enum ddog_crasht_CrashInfoBuilder_NewResult_Tag {
|
16
23
|
DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_OK,
|
17
24
|
DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_ERR,
|
@@ -51,23 +58,32 @@ extern "C" {
|
|
51
58
|
#endif // __cplusplus
|
52
59
|
|
53
60
|
/**
|
54
|
-
*
|
55
|
-
*
|
56
|
-
*
|
57
|
-
*
|
58
|
-
* exit.
|
61
|
+
* Disables the crashtracker.
|
62
|
+
* Note that this does not restore the old signal handlers, but rather turns crash-tracking into a
|
63
|
+
* no-op, and then chains the old handlers. This means that handlers registered after the
|
64
|
+
* crashtracker will continue to work as expected.
|
59
65
|
*
|
60
66
|
* # Preconditions
|
61
|
-
*
|
62
|
-
* initialized.
|
67
|
+
* None
|
63
68
|
* # Safety
|
64
|
-
*
|
65
|
-
* No other crash-handler functions should be called concurrently.
|
69
|
+
* None
|
66
70
|
* # Atomicity
|
67
|
-
* This function is
|
68
|
-
|
71
|
+
* This function is atomic and idempotent. Calling it multiple times is allowed.
|
72
|
+
*/
|
73
|
+
DDOG_CHECK_RETURN struct ddog_VoidResult ddog_crasht_disable(void);
|
74
|
+
|
75
|
+
/**
|
76
|
+
* Enables the crashtracker, if it had been previously disabled.
|
77
|
+
* If crashtracking has not been initialized, this function will have no effect.
|
78
|
+
*
|
79
|
+
* # Preconditions
|
80
|
+
* None
|
81
|
+
* # Safety
|
82
|
+
* None
|
83
|
+
* # Atomicity
|
84
|
+
* This function is atomic and idempotent. Calling it multiple times is allowed.
|
69
85
|
*/
|
70
|
-
DDOG_CHECK_RETURN struct ddog_VoidResult
|
86
|
+
DDOG_CHECK_RETURN struct ddog_VoidResult ddog_crasht_enable(void);
|
71
87
|
|
72
88
|
/**
|
73
89
|
* Reinitialize the crash-tracking infrastructure after a fork.
|
@@ -110,6 +126,24 @@ struct ddog_VoidResult ddog_crasht_init(struct ddog_crasht_Config config,
|
|
110
126
|
struct ddog_crasht_ReceiverConfig receiver_config,
|
111
127
|
struct ddog_crasht_Metadata metadata);
|
112
128
|
|
129
|
+
/**
|
130
|
+
* Reconfigure the crashtracker and re-enables it.
|
131
|
+
* If the crashtracker has not been initialized, this function will have no effect.
|
132
|
+
*
|
133
|
+
* # Preconditions
|
134
|
+
* None.
|
135
|
+
* # Safety
|
136
|
+
* Crash-tracking functions are not reentrant.
|
137
|
+
* No other crash-handler functions should be called concurrently.
|
138
|
+
* # Atomicity
|
139
|
+
* This function is not atomic. A crash during its execution may lead to
|
140
|
+
* unexpected crash-handling behaviour.
|
141
|
+
*/
|
142
|
+
DDOG_CHECK_RETURN
|
143
|
+
struct ddog_VoidResult ddog_crasht_reconfigure(struct ddog_crasht_Config config,
|
144
|
+
struct ddog_crasht_ReceiverConfig receiver_config,
|
145
|
+
struct ddog_crasht_Metadata metadata);
|
146
|
+
|
113
147
|
/**
|
114
148
|
* Initialize the crash-tracking infrastructure without launching the receiver.
|
115
149
|
*
|
@@ -126,6 +160,11 @@ DDOG_CHECK_RETURN
|
|
126
160
|
struct ddog_VoidResult ddog_crasht_init_without_receiver(struct ddog_crasht_Config config,
|
127
161
|
struct ddog_crasht_Metadata metadata);
|
128
162
|
|
163
|
+
/**
|
164
|
+
* Returns a list of signals suitable for use in a crashtracker config.
|
165
|
+
*/
|
166
|
+
struct ddog_crasht_Slice_CInt ddog_crasht_default_signals(void);
|
167
|
+
|
129
168
|
/**
|
130
169
|
* Removes all existing additional tags
|
131
170
|
* Expected to be used after a fork, to reset the additional tags on the child
|
@@ -325,6 +364,61 @@ struct ddog_VoidResult ddog_crasht_remove_trace_id(uint64_t id_high,
|
|
325
364
|
uint64_t id_low,
|
326
365
|
uintptr_t idx);
|
327
366
|
|
367
|
+
#if (defined(_CRASHTRACKING_COLLECTOR) && defined(_WIN32))
|
368
|
+
/**
|
369
|
+
* Initialize the crash-tracking infrastructure.
|
370
|
+
*
|
371
|
+
* # Preconditions
|
372
|
+
* None.
|
373
|
+
* # Safety
|
374
|
+
* Crash-tracking functions are not reentrant.
|
375
|
+
* No other crash-handler functions should be called concurrently.
|
376
|
+
* # Atomicity
|
377
|
+
* This function is not atomic. A crash during its execution may lead to
|
378
|
+
* unexpected crash-handling behaviour.
|
379
|
+
*/
|
380
|
+
DDOG_CHECK_RETURN
|
381
|
+
bool ddog_crasht_init_windows(ddog_CharSlice module,
|
382
|
+
const struct ddog_Endpoint *endpoint,
|
383
|
+
struct ddog_crasht_Metadata metadata);
|
384
|
+
#endif
|
385
|
+
|
386
|
+
#if (defined(_CRASHTRACKING_COLLECTOR) && defined(_WIN32))
|
387
|
+
HRESULT OutOfProcessExceptionEventSignatureCallback(const void *_context,
|
388
|
+
const WER_RUNTIME_EXCEPTION_INFORMATION *_exception_information,
|
389
|
+
int32_t _index,
|
390
|
+
uint16_t *_name,
|
391
|
+
uint32_t *_name_size,
|
392
|
+
uint16_t *_value,
|
393
|
+
uint32_t *_value_size);
|
394
|
+
#endif
|
395
|
+
|
396
|
+
#if (defined(_CRASHTRACKING_COLLECTOR) && defined(_WIN32))
|
397
|
+
HRESULT OutOfProcessExceptionEventDebuggerLaunchCallback(const void *_context,
|
398
|
+
const WER_RUNTIME_EXCEPTION_INFORMATION *_exception_information,
|
399
|
+
BOOL *_is_custom_debugger,
|
400
|
+
uint16_t *_debugger_launch,
|
401
|
+
uint32_t *_debugger_launch_size,
|
402
|
+
BOOL *_is_debugger_auto_launch);
|
403
|
+
#endif
|
404
|
+
|
405
|
+
#if (defined(_CRASHTRACKING_COLLECTOR) && defined(_WIN32))
|
406
|
+
HRESULT OutOfProcessExceptionEventCallback(const void *context,
|
407
|
+
const WER_RUNTIME_EXCEPTION_INFORMATION *exception_information,
|
408
|
+
BOOL *_ownership_claimed,
|
409
|
+
uint16_t *_event_name,
|
410
|
+
uint32_t *_size,
|
411
|
+
uint32_t *_signature_count);
|
412
|
+
#endif
|
413
|
+
|
414
|
+
/**
|
415
|
+
* # Safety
|
416
|
+
* The `crash_info` can be null, but if non-null it must point to a Builder made by this module,
|
417
|
+
* which has not previously been dropped.
|
418
|
+
*/
|
419
|
+
DDOG_CHECK_RETURN
|
420
|
+
struct ddog_VoidResult ddog_crasht_CrashInfo_demangle_names(struct ddog_crasht_Handle_CrashInfo *crash_info);
|
421
|
+
|
328
422
|
/**
|
329
423
|
* # Safety
|
330
424
|
* The `builder` can be null, but if non-null it must point to a Frame
|
@@ -782,7 +876,7 @@ struct ddog_StringWrapperResult ddog_crasht_demangle(ddog_CharSlice name,
|
|
782
876
|
* signal handler is dangerous, so we fork a sidecar to do the stuff we aren't
|
783
877
|
* allowed to do in the handler.
|
784
878
|
*
|
785
|
-
* See comments in [crashtracker/lib.rs] for a full architecture description.
|
879
|
+
* See comments in [datadog-crashtracker/lib.rs] for a full architecture description.
|
786
880
|
* # Safety
|
787
881
|
* No safety concerns
|
788
882
|
*/
|
@@ -796,7 +890,7 @@ DDOG_CHECK_RETURN struct ddog_VoidResult ddog_crasht_receiver_entry_point_stdin(
|
|
796
890
|
* signal handler is dangerous, so we fork a sidecar to do the stuff we aren't
|
797
891
|
* allowed to do in the handler.
|
798
892
|
*
|
799
|
-
* See comments in [
|
893
|
+
* See comments in [datadog-crashtracker/lib.rs] for a full architecture
|
800
894
|
* description.
|
801
895
|
* # Safety
|
802
896
|
* No safety concerns
|
@@ -21,6 +21,18 @@ extern "C" {
|
|
21
21
|
*/
|
22
22
|
void ddog_trace_exporter_error_free(struct ddog_TraceExporterError *error);
|
23
23
|
|
24
|
+
/**
|
25
|
+
* Return a read-only pointer to the response body. This pointer is only valid as long as
|
26
|
+
* `response` is valid.
|
27
|
+
*/
|
28
|
+
const char *ddog_trace_exporter_response_get_body(const struct ddog_TraceExporterResponse *response);
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Free `response` and all its contents. After being called response will not point to a valid
|
32
|
+
* memory address so any further actions on it could lead to undefined behavior.
|
33
|
+
*/
|
34
|
+
void ddog_trace_exporter_response_free(struct ddog_TraceExporterResponse *response);
|
35
|
+
|
24
36
|
void ddog_trace_exporter_config_new(struct ddog_TraceExporterConfig **out_handle);
|
25
37
|
|
26
38
|
/**
|
@@ -79,6 +91,41 @@ struct ddog_TraceExporterError *ddog_trace_exporter_config_set_version(struct dd
|
|
79
91
|
struct ddog_TraceExporterError *ddog_trace_exporter_config_set_service(struct ddog_TraceExporterConfig *config,
|
80
92
|
ddog_CharSlice service);
|
81
93
|
|
94
|
+
/**
|
95
|
+
* Enables metrics.
|
96
|
+
*/
|
97
|
+
struct ddog_TraceExporterError *ddog_trace_exporter_config_enable_telemetry(struct ddog_TraceExporterConfig *config,
|
98
|
+
const struct ddog_TelemetryClientConfig *telemetry_cfg);
|
99
|
+
|
100
|
+
/**
|
101
|
+
* Set client-side stats computation status.
|
102
|
+
*/
|
103
|
+
struct ddog_TraceExporterError *ddog_trace_exporter_config_set_compute_stats(struct ddog_TraceExporterConfig *config,
|
104
|
+
bool is_enabled);
|
105
|
+
|
106
|
+
/**
|
107
|
+
* Sets `Datadog-Client-Computed-Stats` header to `true`.
|
108
|
+
* This indicates that the upstream system has already computed the stats,
|
109
|
+
* and no further stats computation should be performed.
|
110
|
+
*
|
111
|
+
* <div class="warning">
|
112
|
+
* This method must not be used when `compute_stats` is enabled, as it could
|
113
|
+
* result in duplicate stats computation.
|
114
|
+
* </div>
|
115
|
+
*
|
116
|
+
* A common use case is in Application Security Monitoring (ASM) scenarios:
|
117
|
+
* when APM is disabled but ASM is enabled, setting this header to `true`
|
118
|
+
* ensures that no stats are computed at any level (exporter or agent).
|
119
|
+
*/
|
120
|
+
struct ddog_TraceExporterError *ddog_trace_exporter_config_set_client_computed_stats(struct ddog_TraceExporterConfig *config,
|
121
|
+
bool client_computed_stats);
|
122
|
+
|
123
|
+
/**
|
124
|
+
* Sets the `X-Datadog-Test-Session-Token` header. Only used for testing with the test agent.
|
125
|
+
*/
|
126
|
+
struct ddog_TraceExporterError *ddog_trace_exporter_config_set_test_session_token(struct ddog_TraceExporterConfig *config,
|
127
|
+
ddog_CharSlice token);
|
128
|
+
|
82
129
|
/**
|
83
130
|
* Create a new TraceExporter instance.
|
84
131
|
*
|
@@ -109,12 +156,12 @@ void ddog_trace_exporter_free(struct ddog_TraceExporter *handle);
|
|
109
156
|
* TraceExporter. The memory for the trace must be valid for the life of the call to this
|
110
157
|
* function.
|
111
158
|
* * `trace_count` - The number of traces to send to the Datadog Agent.
|
112
|
-
* * `
|
159
|
+
* * `response_out` - Optional handle to store a pointer to the agent response information.
|
113
160
|
*/
|
114
161
|
struct ddog_TraceExporterError *ddog_trace_exporter_send(const struct ddog_TraceExporter *handle,
|
115
162
|
ddog_ByteSlice trace,
|
116
163
|
uintptr_t trace_count,
|
117
|
-
struct
|
164
|
+
struct ddog_TraceExporterResponse **response_out);
|
118
165
|
|
119
166
|
#ifdef __cplusplus
|
120
167
|
} // extern "C"
|
@@ -24,16 +24,12 @@ void ddog_library_configurator_with_fleet_path(struct ddog_Configurator *c,
|
|
24
24
|
void ddog_library_configurator_with_process_info(struct ddog_Configurator *c,
|
25
25
|
struct ddog_ProcessInfo p);
|
26
26
|
|
27
|
+
void ddog_library_configurator_with_detect_process_info(struct ddog_Configurator *c);
|
28
|
+
|
27
29
|
void ddog_library_configurator_drop(struct ddog_Configurator*);
|
28
30
|
|
29
31
|
struct ddog_Result_VecLibraryConfig ddog_library_configurator_get(const struct ddog_Configurator *configurator);
|
30
32
|
|
31
|
-
/**
|
32
|
-
* Returns a static null-terminated string, containing the name of the environment variable
|
33
|
-
* associated with the library configuration
|
34
|
-
*/
|
35
|
-
struct ddog_CStr ddog_library_config_name_to_env(enum ddog_LibraryConfigName name);
|
36
|
-
|
37
33
|
/**
|
38
34
|
* Returns a static null-terminated string, containing the name of the environment variable
|
39
35
|
* associated with the library configuration
|
@@ -54,6 +50,22 @@ struct ddog_CStr ddog_library_config_local_stable_config_path(void);
|
|
54
50
|
|
55
51
|
void ddog_library_config_drop(struct ddog_Vec_LibraryConfig);
|
56
52
|
|
53
|
+
/**
|
54
|
+
* Store tracer metadata to a file handle
|
55
|
+
*
|
56
|
+
* # Safety
|
57
|
+
*
|
58
|
+
* Accepts raw C-compatible strings
|
59
|
+
*/
|
60
|
+
struct ddog_Result_TracerMemfdHandle ddog_store_tracer_metadata(uint8_t schema_version,
|
61
|
+
ddog_CharSlice runtime_id,
|
62
|
+
ddog_CharSlice tracer_language,
|
63
|
+
ddog_CharSlice tracer_version,
|
64
|
+
ddog_CharSlice hostname,
|
65
|
+
ddog_CharSlice service_name,
|
66
|
+
ddog_CharSlice service_env,
|
67
|
+
ddog_CharSlice service_version);
|
68
|
+
|
57
69
|
#ifdef __cplusplus
|
58
70
|
} // extern "C"
|
59
71
|
#endif // __cplusplus
|