libdatadog 40.0.0.2.0 → 44.0.1.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-40.0.0/aarch64-linux-musl → libdatadog-44.0.1/aarch64-linux}/LICENSE-3rdparty.csv +9 -3
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-40.0.0/x86_64-linux-musl → libdatadog-44.0.1/aarch64-linux}/include/datadog/common.h +8 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/data-pipeline.h +53 -9
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/ffe.h +12 -0
- data/vendor/{libdatadog-40.0.0/x86_64-linux-musl → libdatadog-44.0.1/aarch64-linux}/include/datadog/otel-thread-ctx.h +16 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-40.0.0/arm64-darwin → libdatadog-44.0.1/aarch64-linux}/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/{libdatadog-40.0.0/aarch64-linux → libdatadog-44.0.1/aarch64-linux-musl}/LICENSE-3rdparty.csv +9 -3
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-40.0.0/arm64-darwin → libdatadog-44.0.1/aarch64-linux-musl}/include/datadog/common.h +8 -0
- data/vendor/{libdatadog-40.0.0/arm64-darwin → libdatadog-44.0.1/aarch64-linux-musl}/include/datadog/data-pipeline.h +53 -9
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/ffe.h +12 -0
- data/vendor/{libdatadog-40.0.0/arm64-darwin → libdatadog-44.0.1/aarch64-linux-musl}/include/datadog/otel-thread-ctx.h +16 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/LICENSE-3rdparty.csv +9 -3
- data/vendor/{libdatadog-40.0.0/aarch64-linux-musl → libdatadog-44.0.1/arm64-darwin}/include/datadog/common.h +8 -0
- data/vendor/{libdatadog-40.0.0/aarch64-linux-musl → libdatadog-44.0.1/arm64-darwin}/include/datadog/data-pipeline.h +53 -9
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/ffe.h +12 -0
- data/vendor/{libdatadog-40.0.0/aarch64-linux → libdatadog-44.0.1/arm64-darwin}/include/datadog/otel-thread-ctx.h +16 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/lib/libdatadog_profiling.dylib +0 -0
- data/vendor/{libdatadog-40.0.0/x86_64-linux-musl → libdatadog-44.0.1/arm64-darwin}/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/libdatadog-44.0.1/x86_64-linux/LICENSE-3rdparty.csv +560 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/libdatadog-44.0.1/x86_64-linux/include/datadog/common.h +3123 -0
- data/vendor/libdatadog-44.0.1/x86_64-linux/include/datadog/data-pipeline.h +656 -0
- data/vendor/libdatadog-44.0.1/x86_64-linux/include/datadog/ffe.h +191 -0
- data/vendor/libdatadog-44.0.1/x86_64-linux/include/datadog/otel-thread-ctx.h +102 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/lib/libdatadog_profiling.so +0 -0
- data/vendor/libdatadog-44.0.1/x86_64-linux/lib/pkgconfig/datadog_profiling_with_rpath.pc +15 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/LICENSE-3rdparty.csv +9 -3
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-40.0.0/aarch64-linux → libdatadog-44.0.1/x86_64-linux-musl}/include/datadog/common.h +8 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/data-pipeline.h +53 -9
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/ffe.h +12 -0
- data/vendor/{libdatadog-40.0.0/aarch64-linux-musl → libdatadog-44.0.1/x86_64-linux-musl}/include/datadog/otel-thread-ctx.h +16 -0
- data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-40.0.0/aarch64-linux → libdatadog-44.0.1/x86_64-linux-musl}/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- metadata +91 -91
- data/vendor/libdatadog-40.0.0/x86_64-linux/LICENSE-3rdparty.csv +0 -554
- data/vendor/libdatadog-40.0.0/x86_64-linux/include/datadog/common.h +0 -3115
- data/vendor/libdatadog-40.0.0/x86_64-linux/include/datadog/data-pipeline.h +0 -612
- data/vendor/libdatadog-40.0.0/x86_64-linux/include/datadog/ffe.h +0 -179
- data/vendor/libdatadog-40.0.0/x86_64-linux/include/datadog/otel-thread-ctx.h +0 -86
- data/vendor/libdatadog-40.0.0/x86_64-linux/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -15
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/LICENSE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/NOTICE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/crashtracker.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/ddsketch.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/library-config.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/log.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/profiling.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/shared-runtime.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/LICENSE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/NOTICE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/crashtracker.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/ddsketch.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/library-config.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/log.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/profiling.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/shared-runtime.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/LICENSE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/NOTICE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/crashtracker.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/ddsketch.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/library-config.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/log.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/profiling.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/shared-runtime.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/LICENSE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/NOTICE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/crashtracker.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/ddsketch.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/library-config.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/log.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/profiling.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/shared-runtime.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/LICENSE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/NOTICE +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/blazesym.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/crashtracker.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/ddsketch.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/library-config.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/log.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/profiling.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/shared-runtime.h +0 -0
- /data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/telemetry.h +0 -0
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
// Copyright 2025-Present Datadog, Inc. https://www.datadoghq.com/
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
#ifndef DDOG_FFE_H
|
|
6
|
-
#define DDOG_FFE_H
|
|
7
|
-
|
|
8
|
-
#pragma once
|
|
9
|
-
|
|
10
|
-
#include <stdbool.h>
|
|
11
|
-
#include <stddef.h>
|
|
12
|
-
#include <stdint.h>
|
|
13
|
-
#include "common.h"
|
|
14
|
-
|
|
15
|
-
#ifdef __cplusplus
|
|
16
|
-
extern "C" {
|
|
17
|
-
#endif // __cplusplus
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Evaluates a feature flag.
|
|
21
|
-
*
|
|
22
|
-
* # Ownership
|
|
23
|
-
*
|
|
24
|
-
* The caller must call `ddog_ffe_assignment_drop` on the returned value to free resources.
|
|
25
|
-
*
|
|
26
|
-
* # Safety
|
|
27
|
-
*
|
|
28
|
-
* - `config` must be a valid `Configuration` handle
|
|
29
|
-
* - `flag_key` must be a valid C string
|
|
30
|
-
* - `context` must be a valid `EvaluationContext` handle
|
|
31
|
-
*/
|
|
32
|
-
DDOG_CHECK_RETURN
|
|
33
|
-
ddog_ffe_Handle_ResolutionDetails ddog_ffe_get_assignment(ddog_ffe_Handle_Configuration config,
|
|
34
|
-
const char *flag_key,
|
|
35
|
-
enum ddog_ffe_ExpectedFlagType expected_type,
|
|
36
|
-
ddog_ffe_Handle_EvaluationContext context);
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Get value produced by evaluation.
|
|
40
|
-
*
|
|
41
|
-
* # Ownership
|
|
42
|
-
*
|
|
43
|
-
* The returned `VariantValue` borrows from `assignment`. It must not be used after `assignment` is
|
|
44
|
-
* freed.
|
|
45
|
-
*
|
|
46
|
-
* # Safety
|
|
47
|
-
* `assignment` must be a valid handle.
|
|
48
|
-
*/
|
|
49
|
-
struct ddog_ffe_VariantValue ddog_ffe_assignment_get_value(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Get variant key produced by evaluation. Returns `NULL` if evaluation did not produce any value.
|
|
53
|
-
*
|
|
54
|
-
* # Ownership
|
|
55
|
-
*
|
|
56
|
-
* The returned string borrows from `assignment`. It must not be used after `assignment` is
|
|
57
|
-
* freed.
|
|
58
|
-
*
|
|
59
|
-
* # Safety
|
|
60
|
-
* `assignment` must be a valid handle.
|
|
61
|
-
*/
|
|
62
|
-
struct ddog_ffe_BorrowedStr ddog_ffe_assignment_get_variant(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Get allocation key produced by evaluation. Returns `NULL` if evaluation did not produce any
|
|
66
|
-
* value.
|
|
67
|
-
*
|
|
68
|
-
* # Ownership
|
|
69
|
-
*
|
|
70
|
-
* The returned string borrows from `assignment`. It must not be used after `assignment` is
|
|
71
|
-
* freed.
|
|
72
|
-
*
|
|
73
|
-
* # Safety
|
|
74
|
-
* `assignment` must be a valid handle.
|
|
75
|
-
*/
|
|
76
|
-
struct ddog_ffe_BorrowedStr ddog_ffe_assignment_get_allocation_key(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* # Safety
|
|
80
|
-
* `assignment` must be a valid handle.
|
|
81
|
-
*/
|
|
82
|
-
enum ddog_ffe_Reason ddog_ffe_assignment_get_reason(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* # Safety
|
|
86
|
-
* `assignment` must be a valid handle.
|
|
87
|
-
*/
|
|
88
|
-
enum ddog_ffe_ErrorCode ddog_ffe_assignment_get_error_code(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* # Safety
|
|
92
|
-
* `assignment` must be a valid handle.
|
|
93
|
-
*/
|
|
94
|
-
struct ddog_ffe_BorrowedStr ddog_ffe_assignment_get_error_message(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* Get the serial_id produced by evaluation.
|
|
98
|
-
*
|
|
99
|
-
* Returns `None` if the assignment has no serial_id or evaluation did not produce any value.
|
|
100
|
-
*
|
|
101
|
-
* # Safety
|
|
102
|
-
* `assignment` must be a valid handle.
|
|
103
|
-
*/
|
|
104
|
-
struct ddog_Option_I32 ddog_ffe_assignment_get_serial_id(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* # Safety
|
|
108
|
-
* `assignment` must be a valid handle.
|
|
109
|
-
*/
|
|
110
|
-
bool ddog_ffe_assignment_get_do_log(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* # Safety
|
|
114
|
-
* `assignment` must be a valid handle.
|
|
115
|
-
*/
|
|
116
|
-
struct ddog_ffe_ArrayMap_BorrowedStr ddog_ffe_assignnment_get_flag_metadata(ddog_ffe_Handle_ResolutionDetails assignment);
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Frees an Assignment handle.
|
|
120
|
-
*
|
|
121
|
-
* # Safety
|
|
122
|
-
* - `assignment` must be a valid Assignment handle
|
|
123
|
-
*/
|
|
124
|
-
void ddog_ffe_assignment_drop(ddog_ffe_Handle_ResolutionDetails *assignment);
|
|
125
|
-
|
|
126
|
-
/**
|
|
127
|
-
* Creates a new Configuration from JSON bytes.
|
|
128
|
-
*
|
|
129
|
-
* # Ownership
|
|
130
|
-
*
|
|
131
|
-
* The caller must call `ddog_ffe_configuration_drop` to release resources allocated for
|
|
132
|
-
* configuration.
|
|
133
|
-
*
|
|
134
|
-
* # Safety
|
|
135
|
-
*
|
|
136
|
-
* - `json_bytes` must point to valid memory.
|
|
137
|
-
*/
|
|
138
|
-
DDOG_CHECK_RETURN
|
|
139
|
-
struct ddog_ffe_Result_HandleConfiguration ddog_ffe_configuration_new(struct ddog_ffe_BorrowedStr json_bytes);
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Frees a Configuration.
|
|
143
|
-
*
|
|
144
|
-
* # Safety
|
|
145
|
-
*
|
|
146
|
-
* `config` must be a valid Configuration handle created by `ddog_ffe_configuration_new`.
|
|
147
|
-
*/
|
|
148
|
-
void ddog_ffe_configuration_drop(ddog_ffe_Handle_Configuration *config);
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Creates a new EvaluationContext with the given targeting key and attributes.
|
|
152
|
-
*
|
|
153
|
-
* # Ownership
|
|
154
|
-
*
|
|
155
|
-
* `ddog_ffe_evaluation_context_drop` must be called on the result value to free resources.
|
|
156
|
-
*
|
|
157
|
-
* # Safety
|
|
158
|
-
* - `targeting_key` must be a valid C string or NULL.
|
|
159
|
-
* - `attributes` must point to a valid array of valid `AttributePair` structs (can be null if
|
|
160
|
-
* `attributes_count` is 0)
|
|
161
|
-
*/
|
|
162
|
-
DDOG_CHECK_RETURN
|
|
163
|
-
ddog_ffe_Handle_EvaluationContext ddog_ffe_evaluation_context_new(const char *targeting_key,
|
|
164
|
-
const struct ddog_ffe_AttributePair *attributes,
|
|
165
|
-
uintptr_t attributes_count);
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* Frees an EvaluationContext
|
|
169
|
-
*
|
|
170
|
-
* # Safety
|
|
171
|
-
* `context` must be a valid EvaluationContext handle created by `ddog_ffe_evaluation_context_new`
|
|
172
|
-
*/
|
|
173
|
-
void ddog_ffe_evaluation_context_drop(ddog_ffe_Handle_EvaluationContext *context);
|
|
174
|
-
|
|
175
|
-
#ifdef __cplusplus
|
|
176
|
-
} // extern "C"
|
|
177
|
-
#endif // __cplusplus
|
|
178
|
-
|
|
179
|
-
#endif /* DDOG_FFE_H */
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
// Copyright 2026-Present Datadog, Inc. https://www.datadoghq.com/
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
#ifndef DDOG_OTEL_THREAD_CTX_H
|
|
6
|
-
#define DDOG_OTEL_THREAD_CTX_H
|
|
7
|
-
|
|
8
|
-
#pragma once
|
|
9
|
-
|
|
10
|
-
#include <stdbool.h>
|
|
11
|
-
#include <stddef.h>
|
|
12
|
-
#include <stdint.h>
|
|
13
|
-
|
|
14
|
-
#ifdef __cplusplus
|
|
15
|
-
extern "C" {
|
|
16
|
-
#endif // __cplusplus
|
|
17
|
-
|
|
18
|
-
#if defined(DDOG_OTEL_THREAD_CTX_SANITY_CHECK)
|
|
19
|
-
/**
|
|
20
|
-
* Verify that this binary was linked with the correct options such that the thread contexts are
|
|
21
|
-
* visible to an external reader (typically the eBPF profiler).
|
|
22
|
-
*
|
|
23
|
-
* Returns `VoidResult::Ok` if all checks pass, or a `VoidResult::Err` with a
|
|
24
|
-
* diagnostic message on failure.
|
|
25
|
-
*/
|
|
26
|
-
struct ddog_VoidResult ddog_otel_thread_ctx_sanity_check(void);
|
|
27
|
-
#endif
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Allocate and initialise a new thread context, including its W3C trace-flags byte.
|
|
31
|
-
*
|
|
32
|
-
* Returns a non-null owned handle that must eventually be released with
|
|
33
|
-
* `ddog_otel_thread_ctx_free`.
|
|
34
|
-
*/
|
|
35
|
-
struct ddog_ThreadContextHandle *ddog_otel_thread_ctx_new(const uint8_t (*trace_id)[16],
|
|
36
|
-
const uint8_t (*span_id)[8],
|
|
37
|
-
uint8_t trace_flags,
|
|
38
|
-
const uint8_t (*local_root_span_id)[8]);
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Free an owned thread context.
|
|
42
|
-
*
|
|
43
|
-
* # Safety
|
|
44
|
-
*
|
|
45
|
-
* `ctx` must be a valid non-null pointer obtained from `ddog_otel_thread_ctx_new` or
|
|
46
|
-
* `ddog_otel_thread_ctx_detach`, and must not be used after this call. In particular, `ctx`
|
|
47
|
-
* must not be currently attached to a thread.
|
|
48
|
-
*/
|
|
49
|
-
void ddog_otel_thread_ctx_free(struct ddog_ThreadContextHandle *ctx);
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Attach `ctx` to the current thread. Returns the previously attached context if any, or null
|
|
53
|
-
* otherwise.
|
|
54
|
-
*
|
|
55
|
-
* # Safety
|
|
56
|
-
*
|
|
57
|
-
* `ctx` must be a valid non-null pointer obtained from this API. Ownership of `ctx` is
|
|
58
|
-
* transferred to the TLS slot: the caller must not drop `ctx` while it is still actively
|
|
59
|
-
* attached.
|
|
60
|
-
*/
|
|
61
|
-
struct ddog_ThreadContextHandle *ddog_otel_thread_ctx_attach(struct ddog_ThreadContextHandle *ctx);
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Remove the currently attached context from the TLS slot.
|
|
65
|
-
*
|
|
66
|
-
* Returns the detached context (caller now owns it and must release it with
|
|
67
|
-
* `ddog_otel_thread_ctx_free`), or null if the slot was empty.
|
|
68
|
-
*/
|
|
69
|
-
struct ddog_ThreadContextHandle *ddog_otel_thread_ctx_detach(void);
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Update the currently attached context in-place, including its W3C trace-flags byte.
|
|
73
|
-
*
|
|
74
|
-
* If no context is currently attached, one is created and attached, equivalent to calling
|
|
75
|
-
* `ddog_otel_thread_ctx_new` followed by `ddog_otel_thread_ctx_attach`.
|
|
76
|
-
*/
|
|
77
|
-
void ddog_otel_thread_ctx_update(const uint8_t (*trace_id)[16],
|
|
78
|
-
const uint8_t (*span_id)[8],
|
|
79
|
-
uint8_t trace_flags,
|
|
80
|
-
const uint8_t (*local_root_span_id)[8]);
|
|
81
|
-
|
|
82
|
-
#ifdef __cplusplus
|
|
83
|
-
} // extern "C"
|
|
84
|
-
#endif // __cplusplus
|
|
85
|
-
|
|
86
|
-
#endif /* DDOG_OTEL_THREAD_CTX_H */
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# Copyright 2021-Present Datadog, Inc. https://www.datadoghq.com/
|
|
2
|
-
# SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
prefix=${pcfiledir}/../..
|
|
5
|
-
exec_prefix=${prefix}
|
|
6
|
-
libdir=${exec_prefix}/lib
|
|
7
|
-
includedir=${prefix}/include
|
|
8
|
-
|
|
9
|
-
Name: datadog_profiling
|
|
10
|
-
Description: Contains common code used to implement Datadog's Continuous Profilers. (Dynamic linking variant, sets rpath)
|
|
11
|
-
Version: 40.0.0
|
|
12
|
-
Requires:
|
|
13
|
-
Libs: -L${libdir} -ldatadog_profiling -Wl,-rpath,${libdir}
|
|
14
|
-
Libs.private:
|
|
15
|
-
Cflags: -I${includedir}
|
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/blazesym.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/crashtracker.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/ddsketch.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/library-config.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/profiling.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/shared-runtime.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux/include/datadog/telemetry.h
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/blazesym.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/ddsketch.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/log.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/profiling.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/aarch64-linux-musl/include/datadog/telemetry.h
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/blazesym.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/crashtracker.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/ddsketch.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/library-config.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/profiling.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/shared-runtime.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/arm64-darwin/include/datadog/telemetry.h
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/blazesym.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/crashtracker.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/ddsketch.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/library-config.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/profiling.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/shared-runtime.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux/include/datadog/telemetry.h
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/blazesym.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/ddsketch.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/log.h
RENAMED
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/profiling.h
RENAMED
|
File without changes
|
|
File without changes
|
/data/vendor/{libdatadog-40.0.0 → libdatadog-44.0.1}/x86_64-linux-musl/include/datadog/telemetry.h
RENAMED
|
File without changes
|