libdatadog 7.0.0.1.0 → 9.0.0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/lib/libdatadog/version.rb +1 -1
  3. data/lib/libdatadog.rb +8 -0
  4. data/vendor/{libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-9.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +843 -183
  5. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
  6. data/vendor/{libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-9.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +257 -45
  7. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +245 -8
  8. data/vendor/libdatadog-9.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +288 -0
  9. data/vendor/libdatadog-9.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  10. data/vendor/{libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-9.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +843 -183
  11. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  12. data/vendor/{libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-9.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +257 -45
  13. data/vendor/{libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-9.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +245 -8
  14. data/vendor/libdatadog-9.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +288 -0
  15. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  16. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +843 -183
  17. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
  18. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +257 -45
  19. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/profiling.h +245 -8
  20. data/vendor/libdatadog-9.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +288 -0
  21. data/vendor/libdatadog-9.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  22. data/vendor/{libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-9.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/LICENSE-3rdparty.yml +843 -183
  23. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  24. data/vendor/{libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-9.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/common.h +257 -45
  25. data/vendor/{libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-9.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +245 -8
  26. data/vendor/libdatadog-9.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +288 -0
  27. data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  28. metadata +42 -42
  29. data/vendor/libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -290
  30. data/vendor/libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  31. data/vendor/libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -290
  32. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +0 -290
  33. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  34. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +0 -290
  35. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
  36. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
  37. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +0 -0
  38. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  39. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
  40. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
  41. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +0 -0
  42. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  43. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  44. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  45. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +0 -0
  46. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  47. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  48. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
  49. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +0 -0
  50. /data/vendor/{libdatadog-7.0.0 → libdatadog-9.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
@@ -0,0 +1,288 @@
1
+ // Copyright 2021-Present Datadog, Inc. https://www.datadoghq.com/
2
+ // SPDX-License-Identifier: Apache-2.0
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 <stdio.h>
12
+ #include "common.h"
13
+
14
+ /**
15
+ * # Safety
16
+ * * builder should be a non null pointer to a null pointer to a builder
17
+ */
18
+ ddog_MaybeError ddog_telemetry_builder_instantiate(struct ddog_TelemetryWorkerBuilder **out_builder,
19
+ ddog_CharSlice service_name,
20
+ ddog_CharSlice language_name,
21
+ ddog_CharSlice language_version,
22
+ ddog_CharSlice tracer_version);
23
+
24
+ /**
25
+ * # Safety
26
+ * * builder should be a non null pointer to a null pointer to a builder
27
+ */
28
+ ddog_MaybeError ddog_telemetry_builder_instantiate_with_hostname(struct ddog_TelemetryWorkerBuilder **out_builder,
29
+ ddog_CharSlice hostname,
30
+ ddog_CharSlice service_name,
31
+ ddog_CharSlice language_name,
32
+ ddog_CharSlice language_version,
33
+ ddog_CharSlice tracer_version);
34
+
35
+ ddog_MaybeError ddog_telemetry_builder_with_native_deps(struct ddog_TelemetryWorkerBuilder *builder,
36
+ bool include_native_deps);
37
+
38
+ ddog_MaybeError ddog_telemetry_builder_with_rust_shared_lib_deps(struct ddog_TelemetryWorkerBuilder *builder,
39
+ bool include_rust_shared_lib_deps);
40
+
41
+ ddog_MaybeError ddog_telemetry_builder_with_config(struct ddog_TelemetryWorkerBuilder *builder,
42
+ ddog_CharSlice name,
43
+ ddog_CharSlice value,
44
+ enum ddog_ConfigurationOrigin origin);
45
+
46
+ /**
47
+ * Builds the telemetry worker and return a handle to it
48
+ *
49
+ * # Safety
50
+ * * handle should be a non null pointer to a null pointer
51
+ */
52
+ ddog_MaybeError ddog_telemetry_builder_run(struct ddog_TelemetryWorkerBuilder *builder,
53
+ struct ddog_TelemetryWorkerHandle **out_handle);
54
+
55
+ /**
56
+ * Builds the telemetry worker and return a handle to it. The worker will only process and send
57
+ * telemetry metrics and telemetry logs. Any lifecyle/dependency/configuration event will be
58
+ * ignored
59
+ *
60
+ * # Safety
61
+ * * handle should be a non null pointer to a null pointer
62
+ */
63
+ ddog_MaybeError ddog_telemetry_builder_run_metric_logs(struct ddog_TelemetryWorkerBuilder *builder,
64
+ struct ddog_TelemetryWorkerHandle **out_handle);
65
+
66
+ ddog_MaybeError ddog_telemetry_builder_with_str_application_service_version(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
67
+ ddog_CharSlice param);
68
+
69
+ ddog_MaybeError ddog_telemetry_builder_with_str_application_env(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
70
+ ddog_CharSlice param);
71
+
72
+ ddog_MaybeError ddog_telemetry_builder_with_str_application_runtime_name(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
73
+ ddog_CharSlice param);
74
+
75
+ ddog_MaybeError ddog_telemetry_builder_with_str_application_runtime_version(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
76
+ ddog_CharSlice param);
77
+
78
+ ddog_MaybeError ddog_telemetry_builder_with_str_application_runtime_patches(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
79
+ ddog_CharSlice param);
80
+
81
+ ddog_MaybeError ddog_telemetry_builder_with_str_host_container_id(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
82
+ ddog_CharSlice param);
83
+
84
+ ddog_MaybeError ddog_telemetry_builder_with_str_host_os(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
85
+ ddog_CharSlice param);
86
+
87
+ ddog_MaybeError ddog_telemetry_builder_with_str_host_kernel_name(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
88
+ ddog_CharSlice param);
89
+
90
+ ddog_MaybeError ddog_telemetry_builder_with_str_host_kernel_release(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
91
+ ddog_CharSlice param);
92
+
93
+ ddog_MaybeError ddog_telemetry_builder_with_str_host_kernel_version(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
94
+ ddog_CharSlice param);
95
+
96
+ ddog_MaybeError ddog_telemetry_builder_with_str_runtime_id(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
97
+ ddog_CharSlice param);
98
+
99
+ /**
100
+ * Sets a property from it's string value.
101
+ *
102
+ * Available properties:
103
+ *
104
+ * * application.service_version
105
+ *
106
+ * * application.env
107
+ *
108
+ * * application.runtime_name
109
+ *
110
+ * * application.runtime_version
111
+ *
112
+ * * application.runtime_patches
113
+ *
114
+ * * host.container_id
115
+ *
116
+ * * host.os
117
+ *
118
+ * * host.kernel_name
119
+ *
120
+ * * host.kernel_release
121
+ *
122
+ * * host.kernel_version
123
+ *
124
+ * * runtime_id
125
+ *
126
+ *
127
+ */
128
+ ddog_MaybeError ddog_telemetry_builder_with_property_str(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
129
+ enum ddog_TelemetryWorkerBuilderStrProperty property,
130
+ ddog_CharSlice param);
131
+
132
+ /**
133
+ * Sets a property from it's string value.
134
+ *
135
+ * Available properties:
136
+ *
137
+ * * application.service_version
138
+ *
139
+ * * application.env
140
+ *
141
+ * * application.runtime_name
142
+ *
143
+ * * application.runtime_version
144
+ *
145
+ * * application.runtime_patches
146
+ *
147
+ * * host.container_id
148
+ *
149
+ * * host.os
150
+ *
151
+ * * host.kernel_name
152
+ *
153
+ * * host.kernel_release
154
+ *
155
+ * * host.kernel_version
156
+ *
157
+ * * runtime_id
158
+ *
159
+ *
160
+ */
161
+ ddog_MaybeError ddog_telemetry_builder_with_str_named_property(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
162
+ ddog_CharSlice property,
163
+ ddog_CharSlice param);
164
+
165
+ ddog_MaybeError ddog_telemetry_builder_with_bool_config_telemetry_debug_logging_enabled(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
166
+ bool param);
167
+
168
+ /**
169
+ * Sets a property from it's string value.
170
+ *
171
+ * Available properties:
172
+ *
173
+ * * config.telemetry_debug_logging_enabled
174
+ *
175
+ *
176
+ */
177
+ ddog_MaybeError ddog_telemetry_builder_with_property_bool(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
178
+ enum ddog_TelemetryWorkerBuilderBoolProperty property,
179
+ bool param);
180
+
181
+ /**
182
+ * Sets a property from it's string value.
183
+ *
184
+ * Available properties:
185
+ *
186
+ * * config.telemetry_debug_logging_enabled
187
+ *
188
+ *
189
+ */
190
+ ddog_MaybeError ddog_telemetry_builder_with_bool_named_property(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
191
+ ddog_CharSlice property,
192
+ bool param);
193
+
194
+ ddog_MaybeError ddog_telemetry_builder_with_endpoint_config_endpoint(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
195
+ const struct ddog_Endpoint *param);
196
+
197
+ /**
198
+ * Sets a property from it's string value.
199
+ *
200
+ * Available properties:
201
+ *
202
+ * * config.endpoint
203
+ *
204
+ *
205
+ */
206
+ ddog_MaybeError ddog_telemetry_builder_with_property_endpoint(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
207
+ enum ddog_TelemetryWorkerBuilderEndpointProperty property,
208
+ const struct ddog_Endpoint *param);
209
+
210
+ /**
211
+ * Sets a property from it's string value.
212
+ *
213
+ * Available properties:
214
+ *
215
+ * * config.endpoint
216
+ *
217
+ *
218
+ */
219
+ ddog_MaybeError ddog_telemetry_builder_with_endpoint_named_property(struct ddog_TelemetryWorkerBuilder *telemetry_builder,
220
+ ddog_CharSlice property,
221
+ const struct ddog_Endpoint *param);
222
+
223
+ ddog_MaybeError ddog_telemetry_handle_add_dependency(const struct ddog_TelemetryWorkerHandle *handle,
224
+ ddog_CharSlice dependency_name,
225
+ ddog_CharSlice dependency_version);
226
+
227
+ ddog_MaybeError ddog_telemetry_handle_add_integration(const struct ddog_TelemetryWorkerHandle *handle,
228
+ ddog_CharSlice dependency_name,
229
+ ddog_CharSlice dependency_version,
230
+ bool enabled,
231
+ struct ddog_Option_Bool compatible,
232
+ struct ddog_Option_Bool auto_enabled);
233
+
234
+ /**
235
+ * * indentifier: identifies a logging location uniquely. This can for instance be the template
236
+ * using for the log message or the concatenated file + line of the origin of the log
237
+ * * stack_trace: stack trace associated with the log. If no stack trace is available, an empty
238
+ * string should be passed
239
+ */
240
+ ddog_MaybeError ddog_telemetry_handle_add_log(const struct ddog_TelemetryWorkerHandle *handle,
241
+ ddog_CharSlice indentifier,
242
+ ddog_CharSlice message,
243
+ enum ddog_LogLevel level,
244
+ ddog_CharSlice stack_trace);
245
+
246
+ ddog_MaybeError ddog_telemetry_handle_start(const struct ddog_TelemetryWorkerHandle *handle);
247
+
248
+ struct ddog_TelemetryWorkerHandle *ddog_telemetry_handle_clone(const struct ddog_TelemetryWorkerHandle *handle);
249
+
250
+ ddog_MaybeError ddog_telemetry_handle_stop(const struct ddog_TelemetryWorkerHandle *handle);
251
+
252
+ /**
253
+ * * compatible: should be false if the metric is language specific, true otherwise
254
+ */
255
+ struct ddog_ContextKey ddog_telemetry_handle_register_metric_context(const struct ddog_TelemetryWorkerHandle *handle,
256
+ ddog_CharSlice name,
257
+ enum ddog_MetricType metric_type,
258
+ struct ddog_Vec_Tag tags,
259
+ bool common,
260
+ enum ddog_MetricNamespace namespace_);
261
+
262
+ ddog_MaybeError ddog_telemetry_handle_add_point(const struct ddog_TelemetryWorkerHandle *handle,
263
+ const struct ddog_ContextKey *context_key,
264
+ double value);
265
+
266
+ ddog_MaybeError ddog_telemetry_handle_add_point_with_tags(const struct ddog_TelemetryWorkerHandle *handle,
267
+ const struct ddog_ContextKey *context_key,
268
+ double value,
269
+ struct ddog_Vec_Tag extra_tags);
270
+
271
+ /**
272
+ * This function takes ownership of the handle. It should not be used after calling it
273
+ */
274
+ void ddog_telemetry_handle_wait_for_shutdown(struct ddog_TelemetryWorkerHandle *handle);
275
+
276
+ /**
277
+ * This function takes ownership of the handle. It should not be used after calling it
278
+ */
279
+ void ddog_telemetry_handle_wait_for_shutdown_ms(struct ddog_TelemetryWorkerHandle *handle,
280
+ uint64_t wait_for_ms);
281
+
282
+ /**
283
+ * Drops the handle without waiting for shutdown. The worker will continue running in the
284
+ * background until it exits by itself
285
+ */
286
+ void ddog_telemetry_handle_drop(struct ddog_TelemetryWorkerHandle *handle);
287
+
288
+ #endif /* DDOG_TELEMETRY_H */