libdatadog 11.0.0.1.0 → 13.1.0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/lib/libdatadog/version.rb +1 -1
  3. data/vendor/{libdatadog-11.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-13.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +4473 -593
  4. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
  5. data/vendor/libdatadog-13.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +1230 -0
  6. data/vendor/{libdatadog-11.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-13.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +531 -293
  7. data/vendor/libdatadog-13.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/crashtracker.h +436 -0
  8. data/vendor/{libdatadog-11.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-13.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/profiling.h +10 -275
  9. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  10. data/vendor/{libdatadog-11.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-13.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +4473 -593
  11. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  12. data/vendor/libdatadog-13.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +1230 -0
  13. data/vendor/{libdatadog-11.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-13.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +531 -293
  14. data/vendor/libdatadog-13.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/crashtracker.h +436 -0
  15. data/vendor/{libdatadog-11.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-13.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +10 -275
  16. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  17. data/vendor/{libdatadog-11.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-13.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/LICENSE-3rdparty.yml +4473 -593
  18. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
  19. data/vendor/libdatadog-13.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +1230 -0
  20. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +531 -293
  21. data/vendor/libdatadog-13.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/crashtracker.h +436 -0
  22. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/profiling.h +10 -275
  23. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  24. data/vendor/{libdatadog-11.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-13.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/LICENSE-3rdparty.yml +4473 -593
  25. data/vendor/libdatadog-13.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  26. data/vendor/libdatadog-13.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +1230 -0
  27. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/common.h +531 -293
  28. data/vendor/libdatadog-13.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/crashtracker.h +436 -0
  29. data/vendor/{libdatadog-11.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-13.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +10 -275
  30. data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  31. metadata +46 -42
  32. data/vendor/libdatadog-11.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +0 -1229
  33. data/vendor/libdatadog-11.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +0 -1229
  34. data/vendor/libdatadog-11.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +0 -1229
  35. data/vendor/libdatadog-11.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  36. data/vendor/libdatadog-11.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +0 -1229
  37. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
  38. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
  39. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
  40. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  41. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
  42. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
  43. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -0
  44. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  45. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  46. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  47. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
  48. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
  49. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  50. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
  51. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +0 -0
  52. /data/vendor/{libdatadog-11.0.0 → libdatadog-13.1.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
@@ -16,279 +16,6 @@
16
16
  extern "C" {
17
17
  #endif // __cplusplus
18
18
 
19
- /**
20
- * Cleans up after the crash-tracker:
21
- * Unregister the crash handler, restore the previous handler (if any), and
22
- * shut down the receiver. Note that the use of this function is optional:
23
- * the receiver will automatically shutdown when the pipe is closed on program
24
- * exit.
25
- *
26
- * # Preconditions
27
- * This function assumes that the crash-tracker has previously been
28
- * initialized.
29
- * # Safety
30
- * Crash-tracking functions are not reentrant.
31
- * No other crash-handler functions should be called concurrently.
32
- * # Atomicity
33
- * This function is not atomic. A crash during its execution may lead to
34
- * unexpected crash-handling behaviour.
35
- */
36
- DDOG_CHECK_RETURN struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_shutdown(void);
37
-
38
- /**
39
- * Reinitialize the crash-tracking infrastructure after a fork.
40
- * This should be one of the first things done after a fork, to minimize the
41
- * chance that a crash occurs between the fork, and this call.
42
- * In particular, reset the counters that track the profiler state machine,
43
- * and start a new receiver to collect data from this fork.
44
- * NOTE: An alternative design would be to have a 1:many sidecar listening on a
45
- * socket instead of 1:1 receiver listening on a pipe, but the only real
46
- * advantage would be to have fewer processes in `ps -a`.
47
- *
48
- * # Preconditions
49
- * This function assumes that the crash-tracker has previously been
50
- * initialized.
51
- * # Safety
52
- * Crash-tracking functions are not reentrant.
53
- * No other crash-handler functions should be called concurrently.
54
- * # Atomicity
55
- * This function is not atomic. A crash during its execution may lead to
56
- * unexpected crash-handling behaviour.
57
- */
58
- DDOG_CHECK_RETURN
59
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_update_on_fork(struct ddog_prof_CrashtrackerConfiguration config,
60
- struct ddog_prof_CrashtrackerReceiverConfig receiver_config,
61
- struct ddog_prof_CrashtrackerMetadata metadata);
62
-
63
- /**
64
- * Receives data from a crash collector via a pipe on `stdin`, formats it into
65
- * `CrashInfo` json, and emits it to the endpoint/file defined in `config`.
66
- *
67
- * At a high-level, this exists because doing anything in a
68
- * signal handler is dangerous, so we fork a sidecar to do the stuff we aren't
69
- * allowed to do in the handler.
70
- *
71
- * See comments in [profiling/crashtracker/mod.rs] for a full architecture
72
- * description.
73
- * # Safety
74
- * No safety concerns
75
- */
76
- DDOG_CHECK_RETURN
77
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_receiver_entry_point_stdin(void);
78
-
79
- /**
80
- * Receives data from a crash collector via a pipe on `stdin`, formats it into
81
- * `CrashInfo` json, and emits it to the endpoint/file defined in `config`.
82
- *
83
- * At a high-level, this exists because doing anything in a
84
- * signal handler is dangerous, so we fork a sidecar to do the stuff we aren't
85
- * allowed to do in the handler.
86
- *
87
- * See comments in [profiling/crashtracker/mod.rs] for a full architecture
88
- * description.
89
- * # Safety
90
- * No safety concerns
91
- */
92
- DDOG_CHECK_RETURN
93
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_receiver_entry_point_unix_socket(ddog_CharSlice socket_path);
94
-
95
- /**
96
- * Initialize the crash-tracking infrastructure.
97
- *
98
- * # Preconditions
99
- * None.
100
- * # Safety
101
- * Crash-tracking functions are not reentrant.
102
- * No other crash-handler functions should be called concurrently.
103
- * # Atomicity
104
- * This function is not atomic. A crash during its execution may lead to
105
- * unexpected crash-handling behaviour.
106
- */
107
- DDOG_CHECK_RETURN
108
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_init_with_receiver(struct ddog_prof_CrashtrackerConfiguration config,
109
- struct ddog_prof_CrashtrackerReceiverConfig receiver_config,
110
- struct ddog_prof_CrashtrackerMetadata metadata);
111
-
112
- /**
113
- * Resets all counters to 0.
114
- * Expected to be used after a fork, to reset the counters on the child
115
- * ATOMICITY:
116
- * This is NOT ATOMIC.
117
- * Should only be used when no conflicting updates can occur,
118
- * e.g. after a fork but before profiling ops start on the child.
119
- * # Safety
120
- * No safety concerns.
121
- */
122
- DDOG_CHECK_RETURN struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_reset_counters(void);
123
-
124
- /**
125
- * Atomically increments the count associated with `op`.
126
- * Useful for tracking what operations were occuring when a crash occurred.
127
- *
128
- * # Safety
129
- * No safety concerns.
130
- */
131
- DDOG_CHECK_RETURN
132
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_begin_profiling_op(enum ddog_prof_ProfilingOpTypes op);
133
-
134
- /**
135
- * Atomically decrements the count associated with `op`.
136
- * Useful for tracking what operations were occuring when a crash occurred.
137
- *
138
- * # Safety
139
- * No safety concerns.
140
- */
141
- DDOG_CHECK_RETURN
142
- struct ddog_prof_CrashtrackerResult ddog_prof_Crashtracker_end_profiling_op(enum ddog_prof_ProfilingOpTypes op);
143
-
144
- /**
145
- * Create a new crashinfo, and returns an opaque reference to it.
146
- * # Safety
147
- * No safety issues.
148
- */
149
- DDOG_CHECK_RETURN struct ddog_prof_CrashInfoNewResult ddog_crashinfo_new(void);
150
-
151
- /**
152
- * # Safety
153
- * The `crash_info` can be null, but if non-null it must point to a CrashInfo
154
- * made by this module, which has not previously been dropped.
155
- */
156
- void ddog_crashinfo_drop(struct ddog_prof_CrashInfo *crashinfo);
157
-
158
- /**
159
- * Best effort attempt to normalize all `ip` on the stacktrace.
160
- * `pid` must be the pid of the currently active process where the ips came from.
161
- *
162
- * # Safety
163
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
164
- */
165
- DDOG_CHECK_RETURN
166
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_normalize_ips(struct ddog_prof_CrashInfo *crashinfo,
167
- uint32_t pid);
168
-
169
- /**
170
- * Adds a "counter" variable, with the given value. Useful for determining if
171
- * "interesting" operations were occurring when the crash did.
172
- *
173
- * # Safety
174
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
175
- * `name` should be a valid reference to a utf8 encoded String.
176
- * The string is copied into the crashinfo, so it does not need to outlive this
177
- * call.
178
- */
179
- DDOG_CHECK_RETURN
180
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_add_counter(struct ddog_prof_CrashInfo *crashinfo,
181
- ddog_CharSlice name,
182
- int64_t val);
183
-
184
- /**
185
- * Adds the contents of "file" to the crashinfo
186
- *
187
- * # Safety
188
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
189
- * `name` should be a valid reference to a utf8 encoded String.
190
- * The string is copied into the crashinfo, so it does not need to outlive this
191
- * call.
192
- */
193
- DDOG_CHECK_RETURN
194
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_add_file(struct ddog_prof_CrashInfo *crashinfo,
195
- ddog_CharSlice name);
196
-
197
- /**
198
- * Adds the tag with given "key" and "value" to the crashinfo
199
- *
200
- * # Safety
201
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
202
- * `key` should be a valid reference to a utf8 encoded String.
203
- * `value` should be a valid reference to a utf8 encoded String.
204
- * The string is copied into the crashinfo, so it does not need to outlive this
205
- * call.
206
- */
207
- DDOG_CHECK_RETURN
208
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_add_tag(struct ddog_prof_CrashInfo *crashinfo,
209
- ddog_CharSlice key,
210
- ddog_CharSlice value);
211
-
212
- /**
213
- * Sets the crashinfo metadata
214
- *
215
- * # Safety
216
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
217
- * All references inside `metadata` must be valid.
218
- * Strings are copied into the crashinfo, and do not need to outlive this call.
219
- */
220
- DDOG_CHECK_RETURN
221
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_set_metadata(struct ddog_prof_CrashInfo *crashinfo,
222
- struct ddog_prof_CrashtrackerMetadata metadata);
223
-
224
- /**
225
- * Sets the crashinfo siginfo
226
- *
227
- * # Safety
228
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
229
- * All references inside `metadata` must be valid.
230
- * Strings are copied into the crashinfo, and do not need to outlive this call.
231
- */
232
- DDOG_CHECK_RETURN
233
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_set_siginfo(struct ddog_prof_CrashInfo *crashinfo,
234
- struct ddog_prof_SigInfo siginfo);
235
-
236
- /**
237
- * If `thread_id` is empty, sets `stacktrace` as the default stacktrace.
238
- * Otherwise, adds an additional stacktrace with id "thread_id".
239
- *
240
- * # Safety
241
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
242
- * All references inside `stacktraces` must be valid.
243
- * Strings are copied into the crashinfo, and do not need to outlive this call.
244
- */
245
- DDOG_CHECK_RETURN
246
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_set_stacktrace(struct ddog_prof_CrashInfo *crashinfo,
247
- ddog_CharSlice thread_id,
248
- struct ddog_prof_Slice_StackFrame stacktrace);
249
-
250
- /**
251
- * Sets the timestamp to the given unix timestamp
252
- *
253
- * # Safety
254
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
255
- */
256
- DDOG_CHECK_RETURN
257
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_set_timestamp(struct ddog_prof_CrashInfo *crashinfo,
258
- int64_t secs,
259
- uint32_t nsecs);
260
-
261
- /**
262
- * Sets the timestamp to the current time
263
- *
264
- * # Safety
265
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
266
- */
267
- DDOG_CHECK_RETURN
268
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_set_timestamp_to_now(struct ddog_prof_CrashInfo *crashinfo);
269
-
270
- /**
271
- * Exports `crashinfo` to the backend at `endpoint`
272
- * Note that we support the "file://" endpoint for local file output.
273
- * # Safety
274
- * `crashinfo` must be a valid pointer to a `CrashInfo` object.
275
- */
276
- DDOG_CHECK_RETURN
277
- struct ddog_prof_CrashtrackerResult ddog_crashinfo_upload_to_endpoint(struct ddog_prof_CrashInfo *crashinfo,
278
- struct ddog_prof_CrashtrackerConfiguration config);
279
-
280
- /**
281
- * Demangles the string "name".
282
- * If demangling fails, returns an empty string ""
283
- *
284
- * # Safety
285
- * `name` should be a valid reference to a utf8 encoded String.
286
- * The string is copied into the result, and does not need to outlive this call
287
- */
288
- DDOG_CHECK_RETURN
289
- struct ddog_prof_StringWrapperResult ddog_demangle(ddog_CharSlice name,
290
- enum ddog_prof_DemangleOptions options);
291
-
292
19
  DDOG_CHECK_RETURN struct ddog_prof_Exporter_Slice_File ddog_prof_Exporter_Slice_File_empty(void);
293
20
 
294
21
  /**
@@ -339,6 +66,15 @@ struct ddog_prof_Exporter_NewResult ddog_prof_Exporter_new(ddog_CharSlice profil
339
66
  const struct ddog_Vec_Tag *tags,
340
67
  struct ddog_prof_Endpoint endpoint);
341
68
 
69
+ /**
70
+ * Sets the value for the exporter's timeout.
71
+ * # Arguments
72
+ * * `exporter` - ProfileExporter instance.
73
+ * * `timeout_ms` - timeout in milliseconds.
74
+ */
75
+ ddog_prof_MaybeError ddog_prof_Exporter_set_timeout(struct ddog_prof_Exporter *exporter,
76
+ uint64_t timeout_ms);
77
+
342
78
  /**
343
79
  * # Safety
344
80
  * The `exporter` may be null, but if non-null the pointer must point to a
@@ -374,8 +110,7 @@ struct ddog_prof_Exporter_Request_BuildResult ddog_prof_Exporter_Request_build(s
374
110
  const struct ddog_Vec_Tag *optional_additional_tags,
375
111
  const struct ddog_prof_ProfiledEndpointsStats *optional_endpoints_stats,
376
112
  const ddog_CharSlice *optional_internal_metadata_json,
377
- const ddog_CharSlice *optional_info_json,
378
- uint64_t timeout_ms);
113
+ const ddog_CharSlice *optional_info_json);
379
114
 
380
115
  /**
381
116
  * # Safety