libdatadog 18.1.0.1.0 → 21.0.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 +1 -1
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +435 -229
- data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +366 -223
- data/vendor/{libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/crashtracker.h +10 -34
- data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/data-pipeline.h +16 -3
- data/vendor/libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/ddsketch.h +89 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/library-config.h +2 -2
- data/vendor/libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/log.h +63 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +3 -2
- data/vendor/libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.debug +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/libdatadog-21.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/libdatadog_v21.0.0.tar +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +435 -229
- data/vendor/{libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +366 -223
- data/vendor/{libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/crashtracker.h +10 -34
- data/vendor/{libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/data-pipeline.h +16 -3
- data/vendor/libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/ddsketch.h +89 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/library-config.h +2 -2
- data/vendor/libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/log.h +63 -0
- data/vendor/{libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +3 -2
- data/vendor/libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.debug +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/libdatadog-21.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/libdatadog_v21.0.0.tar +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +435 -229
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +366 -223
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/crashtracker.h +10 -34
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/data-pipeline.h +16 -3
- data/vendor/libdatadog-21.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/ddsketch.h +89 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/library-config.h +2 -2
- data/vendor/libdatadog-21.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/log.h +63 -0
- data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-21.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/profiling.h +3 -2
- data/vendor/libdatadog-21.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.debug +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/libdatadog-21.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/libdatadog_v21.0.0.tar +0 -0
- data/vendor/libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +435 -229
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/common.h +366 -223
- data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/crashtracker.h +10 -34
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/data-pipeline.h +16 -3
- data/vendor/libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/ddsketch.h +89 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/library-config.h +2 -2
- data/vendor/libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/log.h +63 -0
- data/vendor/{libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +3 -2
- data/vendor/libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.debug +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/libdatadog-21.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/libdatadog_v21.0.0.tar +0 -0
- metadata +57 -53
- data/vendor/libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -202
- data/vendor/libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE-3rdparty.yml +0 -47687
- data/vendor/libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -4
- data/vendor/libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -202
- data/vendor/libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE-3rdparty.yml +0 -47687
- data/vendor/libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -4
- data/vendor/libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -202
- data/vendor/libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +0 -47687
- data/vendor/libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -4
- data/vendor/libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -202
- data/vendor/libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE-3rdparty.yml +0 -47687
- data/vendor/libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -4
- data/vendor/libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- /data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
- /data/vendor/{libdatadog-18.1.0 → libdatadog-21.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +0 -0
@@ -372,13 +372,6 @@ typedef enum ddog_VoidResult_Tag {
|
|
372
372
|
typedef struct ddog_VoidResult {
|
373
373
|
ddog_VoidResult_Tag tag;
|
374
374
|
union {
|
375
|
-
struct {
|
376
|
-
/**
|
377
|
-
* Do not use the value of Ok. This value only exists to overcome
|
378
|
-
* Rust -> C code generation.
|
379
|
-
*/
|
380
|
-
bool ok;
|
381
|
-
};
|
382
375
|
struct {
|
383
376
|
struct ddog_Error err;
|
384
377
|
};
|
@@ -799,9 +792,9 @@ typedef struct ddog_prof_FunctionId_Result {
|
|
799
792
|
* A value of 0 means "no string" or "empty string" (they are synonymous).
|
800
793
|
*/
|
801
794
|
typedef struct OpaqueStringId {
|
802
|
-
uint32_t
|
795
|
+
uint32_t offset;
|
803
796
|
} OpaqueStringId;
|
804
|
-
#define OpaqueStringId_ZERO (OpaqueStringId){
|
797
|
+
#define OpaqueStringId_ZERO (OpaqueStringId){ }
|
805
798
|
|
806
799
|
typedef struct OpaqueStringId OpaqueStringId;
|
807
800
|
|
@@ -1231,6 +1224,320 @@ typedef struct ddog_ContextKey {
|
|
1231
1224
|
enum ddog_MetricType _1;
|
1232
1225
|
} ddog_ContextKey;
|
1233
1226
|
|
1227
|
+
/**
|
1228
|
+
* Represent error codes that `Error` struct can hold
|
1229
|
+
*/
|
1230
|
+
typedef enum ddog_TraceExporterErrorCode {
|
1231
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_ADDRESS_IN_USE,
|
1232
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_ABORTED,
|
1233
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_REFUSED,
|
1234
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_RESET,
|
1235
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_BODY_FORMAT,
|
1236
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_BODY_TOO_LONG,
|
1237
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_CLIENT,
|
1238
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_EMPTY_BODY,
|
1239
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_PARSE,
|
1240
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_SERVER,
|
1241
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_UNKNOWN,
|
1242
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_WRONG_STATUS,
|
1243
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_ARGUMENT,
|
1244
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_DATA,
|
1245
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_INPUT,
|
1246
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_URL,
|
1247
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_IO_ERROR,
|
1248
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_NETWORK_UNKNOWN,
|
1249
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_SERDE,
|
1250
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_SHUTDOWN,
|
1251
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_TIMED_OUT,
|
1252
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_TELEMETRY,
|
1253
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_INTERNAL,
|
1254
|
+
DDOG_TRACE_EXPORTER_ERROR_CODE_PANIC,
|
1255
|
+
} ddog_TraceExporterErrorCode;
|
1256
|
+
|
1257
|
+
/**
|
1258
|
+
* Structure containing the agent response to a trace payload
|
1259
|
+
* MUST be freed with `ddog_trace_exporter_response_free`
|
1260
|
+
*
|
1261
|
+
* If the agent payload version is enabled on the trace exporter, and
|
1262
|
+
* the agent response indicates that the payload version hasn't changed,
|
1263
|
+
* the body will be empty.
|
1264
|
+
*/
|
1265
|
+
typedef struct ddog_TraceExporterResponse ddog_TraceExporterResponse;
|
1266
|
+
|
1267
|
+
typedef struct ddog_TraceExporter ddog_TraceExporter;
|
1268
|
+
|
1269
|
+
/**
|
1270
|
+
* The TraceExporterConfig object will hold the configuration properties for the TraceExporter.
|
1271
|
+
* Once the configuration is passed to the TraceExporter constructor the config is no longer
|
1272
|
+
* needed by the handle and it can be freed.
|
1273
|
+
*/
|
1274
|
+
typedef struct ddog_TraceExporterConfig ddog_TraceExporterConfig;
|
1275
|
+
|
1276
|
+
/**
|
1277
|
+
* Structure that contains error information that `TraceExporter` API can return.
|
1278
|
+
*/
|
1279
|
+
typedef struct ddog_TraceExporterError {
|
1280
|
+
enum ddog_TraceExporterErrorCode code;
|
1281
|
+
char *msg;
|
1282
|
+
} ddog_TraceExporterError;
|
1283
|
+
|
1284
|
+
/**
|
1285
|
+
* FFI compatible configuration for the TelemetryClient.
|
1286
|
+
*/
|
1287
|
+
typedef struct ddog_TelemetryClientConfig {
|
1288
|
+
/**
|
1289
|
+
* How often telemetry should be sent, in milliseconds.
|
1290
|
+
*/
|
1291
|
+
uint64_t interval;
|
1292
|
+
/**
|
1293
|
+
* A V4 UUID that represents a tracer session. This ID should:
|
1294
|
+
* - Be generated when the tracer starts
|
1295
|
+
* - Be identical within the context of a host (i.e. multiple threads/processes that belong to
|
1296
|
+
* a single instrumented app should share the same runtime_id)
|
1297
|
+
* - Be associated with traces to allow correlation between traces and telemetry data
|
1298
|
+
*/
|
1299
|
+
ddog_CharSlice runtime_id;
|
1300
|
+
/**
|
1301
|
+
* Whether to enable debug mode for telemetry.
|
1302
|
+
* When enabled, sets the DD-Telemetry-Debug-Enabled header to true.
|
1303
|
+
* Defaults to false.
|
1304
|
+
*/
|
1305
|
+
bool debug_enabled;
|
1306
|
+
} ddog_TelemetryClientConfig;
|
1307
|
+
|
1308
|
+
typedef enum ddog_LibraryConfigSource {
|
1309
|
+
DDOG_LIBRARY_CONFIG_SOURCE_LOCAL_STABLE_CONFIG = 0,
|
1310
|
+
DDOG_LIBRARY_CONFIG_SOURCE_FLEET_STABLE_CONFIG = 1,
|
1311
|
+
} ddog_LibraryConfigSource;
|
1312
|
+
|
1313
|
+
typedef struct ddog_Configurator ddog_Configurator;
|
1314
|
+
|
1315
|
+
/**
|
1316
|
+
* Ffi safe type representing a borrowed null-terminated C array
|
1317
|
+
* Equivalent to a std::ffi::CStr
|
1318
|
+
*/
|
1319
|
+
typedef struct ddog_CStr {
|
1320
|
+
/**
|
1321
|
+
* Null terminated char array
|
1322
|
+
*/
|
1323
|
+
char *ptr;
|
1324
|
+
/**
|
1325
|
+
* Length of the array, not counting the null-terminator
|
1326
|
+
*/
|
1327
|
+
uintptr_t length;
|
1328
|
+
} ddog_CStr;
|
1329
|
+
|
1330
|
+
typedef struct ddog_Slice_CharSlice {
|
1331
|
+
/**
|
1332
|
+
* Should be non-null and suitably aligned for the underlying type. It is
|
1333
|
+
* allowed but not recommended for the pointer to be null when the len is
|
1334
|
+
* zero.
|
1335
|
+
*/
|
1336
|
+
const ddog_CharSlice *ptr;
|
1337
|
+
/**
|
1338
|
+
* The number of elements (not bytes) that `.ptr` points to. Must be less
|
1339
|
+
* than or equal to [isize::MAX].
|
1340
|
+
*/
|
1341
|
+
uintptr_t len;
|
1342
|
+
} ddog_Slice_CharSlice;
|
1343
|
+
|
1344
|
+
typedef struct ddog_ProcessInfo {
|
1345
|
+
struct ddog_Slice_CharSlice args;
|
1346
|
+
struct ddog_Slice_CharSlice envp;
|
1347
|
+
ddog_CharSlice language;
|
1348
|
+
} ddog_ProcessInfo;
|
1349
|
+
|
1350
|
+
/**
|
1351
|
+
* Ffi safe type representing an owned null-terminated C array
|
1352
|
+
* Equivalent to a std::ffi::CString
|
1353
|
+
*/
|
1354
|
+
typedef struct ddog_CString {
|
1355
|
+
/**
|
1356
|
+
* Null terminated char array
|
1357
|
+
*/
|
1358
|
+
char *ptr;
|
1359
|
+
/**
|
1360
|
+
* Length of the array, not counting the null-terminator
|
1361
|
+
*/
|
1362
|
+
uintptr_t length;
|
1363
|
+
} ddog_CString;
|
1364
|
+
|
1365
|
+
typedef struct ddog_LibraryConfig {
|
1366
|
+
struct ddog_CString name;
|
1367
|
+
struct ddog_CString value;
|
1368
|
+
enum ddog_LibraryConfigSource source;
|
1369
|
+
struct ddog_CString config_id;
|
1370
|
+
} ddog_LibraryConfig;
|
1371
|
+
|
1372
|
+
/**
|
1373
|
+
* Holds the raw parts of a Rust Vec; it should only be created from Rust,
|
1374
|
+
* never from C.
|
1375
|
+
*/
|
1376
|
+
typedef struct ddog_Vec_LibraryConfig {
|
1377
|
+
const struct ddog_LibraryConfig *ptr;
|
1378
|
+
uintptr_t len;
|
1379
|
+
uintptr_t capacity;
|
1380
|
+
} ddog_Vec_LibraryConfig;
|
1381
|
+
|
1382
|
+
/**
|
1383
|
+
* A result type that includes debug/log messages along with the data
|
1384
|
+
*/
|
1385
|
+
typedef struct ddog_OkResult {
|
1386
|
+
struct ddog_Vec_LibraryConfig value;
|
1387
|
+
struct ddog_CString logs;
|
1388
|
+
} ddog_OkResult;
|
1389
|
+
|
1390
|
+
typedef enum ddog_LibraryConfigLoggedResult_Tag {
|
1391
|
+
DDOG_LIBRARY_CONFIG_LOGGED_RESULT_OK,
|
1392
|
+
DDOG_LIBRARY_CONFIG_LOGGED_RESULT_ERR,
|
1393
|
+
} ddog_LibraryConfigLoggedResult_Tag;
|
1394
|
+
|
1395
|
+
typedef struct ddog_LibraryConfigLoggedResult {
|
1396
|
+
ddog_LibraryConfigLoggedResult_Tag tag;
|
1397
|
+
union {
|
1398
|
+
struct {
|
1399
|
+
struct ddog_OkResult ok;
|
1400
|
+
};
|
1401
|
+
struct {
|
1402
|
+
struct ddog_Error err;
|
1403
|
+
};
|
1404
|
+
};
|
1405
|
+
} ddog_LibraryConfigLoggedResult;
|
1406
|
+
|
1407
|
+
/**
|
1408
|
+
* C-compatible representation of an anonymous file handle
|
1409
|
+
*/
|
1410
|
+
typedef struct ddog_TracerMemfdHandle {
|
1411
|
+
/**
|
1412
|
+
* File descriptor (relevant only on Linux)
|
1413
|
+
*/
|
1414
|
+
int fd;
|
1415
|
+
} ddog_TracerMemfdHandle;
|
1416
|
+
|
1417
|
+
/**
|
1418
|
+
* A generic result type for when an operation may fail,
|
1419
|
+
* or may return <T> in case of success.
|
1420
|
+
*/
|
1421
|
+
typedef enum ddog_Result_TracerMemfdHandle_Tag {
|
1422
|
+
DDOG_RESULT_TRACER_MEMFD_HANDLE_OK_TRACER_MEMFD_HANDLE,
|
1423
|
+
DDOG_RESULT_TRACER_MEMFD_HANDLE_ERR_TRACER_MEMFD_HANDLE,
|
1424
|
+
} ddog_Result_TracerMemfdHandle_Tag;
|
1425
|
+
|
1426
|
+
typedef struct ddog_Result_TracerMemfdHandle {
|
1427
|
+
ddog_Result_TracerMemfdHandle_Tag tag;
|
1428
|
+
union {
|
1429
|
+
struct {
|
1430
|
+
struct ddog_TracerMemfdHandle ok;
|
1431
|
+
};
|
1432
|
+
struct {
|
1433
|
+
struct ddog_Error err;
|
1434
|
+
};
|
1435
|
+
};
|
1436
|
+
} ddog_Result_TracerMemfdHandle;
|
1437
|
+
|
1438
|
+
/**
|
1439
|
+
* Log level for filtering log events.
|
1440
|
+
*/
|
1441
|
+
typedef enum ddog_LogEventLevel {
|
1442
|
+
/**
|
1443
|
+
* The "trace" level.
|
1444
|
+
*
|
1445
|
+
* Designates very low priority, often extremely verbose, information.
|
1446
|
+
*/
|
1447
|
+
DDOG_LOG_EVENT_LEVEL_TRACE = 0,
|
1448
|
+
/**
|
1449
|
+
* The "debug" level.
|
1450
|
+
*
|
1451
|
+
* Designates lower priority information.
|
1452
|
+
*/
|
1453
|
+
DDOG_LOG_EVENT_LEVEL_DEBUG = 1,
|
1454
|
+
/**
|
1455
|
+
* The "info" level.
|
1456
|
+
*
|
1457
|
+
* Designates useful information.
|
1458
|
+
*/
|
1459
|
+
DDOG_LOG_EVENT_LEVEL_INFO = 2,
|
1460
|
+
/**
|
1461
|
+
* The "warn" level.
|
1462
|
+
*
|
1463
|
+
* Designates hazardous situations.
|
1464
|
+
*/
|
1465
|
+
DDOG_LOG_EVENT_LEVEL_WARN = 3,
|
1466
|
+
/**
|
1467
|
+
* The "error" level.
|
1468
|
+
*
|
1469
|
+
* Designates very serious errors.
|
1470
|
+
*/
|
1471
|
+
DDOG_LOG_EVENT_LEVEL_ERROR = 4,
|
1472
|
+
} ddog_LogEventLevel;
|
1473
|
+
|
1474
|
+
/**
|
1475
|
+
* Target for standard stream output.
|
1476
|
+
*/
|
1477
|
+
typedef enum ddog_StdTarget {
|
1478
|
+
/**
|
1479
|
+
* Write to standard output (stdout).
|
1480
|
+
*/
|
1481
|
+
DDOG_STD_TARGET_OUT,
|
1482
|
+
/**
|
1483
|
+
* Write to standard error (stderr).
|
1484
|
+
*/
|
1485
|
+
DDOG_STD_TARGET_ERR,
|
1486
|
+
} ddog_StdTarget;
|
1487
|
+
|
1488
|
+
/**
|
1489
|
+
* Configuration for standard stream output.
|
1490
|
+
*/
|
1491
|
+
typedef struct ddog_StdConfig {
|
1492
|
+
/**
|
1493
|
+
* Target stream (stdout or stderr)
|
1494
|
+
*/
|
1495
|
+
enum ddog_StdTarget target;
|
1496
|
+
} ddog_StdConfig;
|
1497
|
+
|
1498
|
+
/**
|
1499
|
+
* Configuration for file output.
|
1500
|
+
*/
|
1501
|
+
typedef struct ddog_FileConfig {
|
1502
|
+
/**
|
1503
|
+
* Path to the log file
|
1504
|
+
*/
|
1505
|
+
ddog_CharSlice path;
|
1506
|
+
/**
|
1507
|
+
* Maximum total number of files (current + rotated) to keep on disk.
|
1508
|
+
* When this limit is exceeded, the oldest rotated files are deleted.
|
1509
|
+
* Set to 0 to disable file cleanup.
|
1510
|
+
*/
|
1511
|
+
uint64_t max_files;
|
1512
|
+
/**
|
1513
|
+
* Maximum size in bytes for each log file.
|
1514
|
+
* Set to 0 to disable size-based rotation.
|
1515
|
+
*/
|
1516
|
+
uint64_t max_size_bytes;
|
1517
|
+
} ddog_FileConfig;
|
1518
|
+
|
1519
|
+
/**
|
1520
|
+
* This is a minimal DDSketch implementation
|
1521
|
+
*
|
1522
|
+
* This implementation only supports a part of the standard (which is also only the parts dd
|
1523
|
+
* backend supports :shrug:)
|
1524
|
+
* - max length contiguous bin store, with lower bin collapse behavior.
|
1525
|
+
* - Positive or zero values
|
1526
|
+
*
|
1527
|
+
* The default sketch has a 1% relative accuracy, and only accepts positive points
|
1528
|
+
*
|
1529
|
+
* See <https://github.com/DataDog/sketches-go> for the reference implementation
|
1530
|
+
*/
|
1531
|
+
typedef struct ddsketch_DDSketch ddsketch_DDSketch;
|
1532
|
+
|
1533
|
+
/**
|
1534
|
+
* Represents an object that should only be referred to by its handle.
|
1535
|
+
* Do not access its member for any reason, only use the C API functions on this struct.
|
1536
|
+
*/
|
1537
|
+
typedef struct ddsketch_Handle_DDSketch {
|
1538
|
+
struct ddsketch_DDSketch *inner;
|
1539
|
+
} ddsketch_Handle_DDSketch;
|
1540
|
+
|
1234
1541
|
typedef enum ddog_crasht_BuildIdType {
|
1235
1542
|
DDOG_CRASHT_BUILD_ID_TYPE_GNU,
|
1236
1543
|
DDOG_CRASHT_BUILD_ID_TYPE_GO,
|
@@ -1363,6 +1670,12 @@ typedef enum ddog_crasht_StacktraceCollection {
|
|
1363
1670
|
*/
|
1364
1671
|
DDOG_CRASHT_STACKTRACE_COLLECTION_DISABLED,
|
1365
1672
|
DDOG_CRASHT_STACKTRACE_COLLECTION_WITHOUT_SYMBOLS,
|
1673
|
+
/**
|
1674
|
+
* This option uses `backtrace::resolve_frame_unsynchronized()` to gather symbol information
|
1675
|
+
* and also unwind inlined functions. Enabling this feature will not only provide symbolic
|
1676
|
+
* details, but may also yield additional or less stack frames compared to other
|
1677
|
+
* configurations.
|
1678
|
+
*/
|
1366
1679
|
DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_INPROCESS_SYMBOLS,
|
1367
1680
|
DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_SYMBOLS_IN_RECEIVER,
|
1368
1681
|
} ddog_crasht_StacktraceCollection;
|
@@ -1424,6 +1737,9 @@ typedef struct ddog_crasht_Config {
|
|
1424
1737
|
struct ddog_crasht_Slice_I32 signals;
|
1425
1738
|
/**
|
1426
1739
|
* Timeout in milliseconds before the signal handler starts tearing things down to return.
|
1740
|
+
* If 0, uses the default timeout as specified in
|
1741
|
+
* `datadog_crashtracker::shared::constants::DD_CRASHTRACK_DEFAULT_TIMEOUT`. Otherwise, uses
|
1742
|
+
* the specified timeout value.
|
1427
1743
|
* This is given as a uint32_t, but the actual timeout needs to fit inside of an i32 (max
|
1428
1744
|
* 2^31-1). This is a limitation of the various interfaces used to guarantee the timeout.
|
1429
1745
|
*/
|
@@ -1525,6 +1841,23 @@ typedef struct ddog_crasht_Handle_CrashInfoBuilder {
|
|
1525
1841
|
struct ddog_crasht_CrashInfoBuilder *inner;
|
1526
1842
|
} ddog_crasht_Handle_CrashInfoBuilder;
|
1527
1843
|
|
1844
|
+
typedef enum ddog_crasht_CrashInfoBuilder_NewResult_Tag {
|
1845
|
+
DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_OK,
|
1846
|
+
DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_ERR,
|
1847
|
+
} ddog_crasht_CrashInfoBuilder_NewResult_Tag;
|
1848
|
+
|
1849
|
+
typedef struct ddog_crasht_CrashInfoBuilder_NewResult {
|
1850
|
+
ddog_crasht_CrashInfoBuilder_NewResult_Tag tag;
|
1851
|
+
union {
|
1852
|
+
struct {
|
1853
|
+
struct ddog_crasht_Handle_CrashInfoBuilder ok;
|
1854
|
+
};
|
1855
|
+
struct {
|
1856
|
+
struct ddog_Error err;
|
1857
|
+
};
|
1858
|
+
};
|
1859
|
+
} ddog_crasht_CrashInfoBuilder_NewResult;
|
1860
|
+
|
1528
1861
|
typedef enum ddog_crasht_CrashInfo_NewResult_Tag {
|
1529
1862
|
DDOG_CRASHT_CRASH_INFO_NEW_RESULT_OK,
|
1530
1863
|
DDOG_CRASHT_CRASH_INFO_NEW_RESULT_ERR,
|
@@ -1606,232 +1939,35 @@ typedef struct ddog_crasht_StackFrame_NewResult {
|
|
1606
1939
|
};
|
1607
1940
|
} ddog_crasht_StackFrame_NewResult;
|
1608
1941
|
|
1609
|
-
|
1610
|
-
|
1611
|
-
|
1612
|
-
|
1613
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_ADDRESS_IN_USE,
|
1614
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_ABORTED,
|
1615
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_REFUSED,
|
1616
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_CONNECTION_RESET,
|
1617
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_BODY_FORMAT,
|
1618
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_BODY_TOO_LONG,
|
1619
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_CLIENT,
|
1620
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_EMPTY_BODY,
|
1621
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_PARSE,
|
1622
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_SERVER,
|
1623
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_UNKNOWN,
|
1624
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_HTTP_WRONG_STATUS,
|
1625
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_ARGUMENT,
|
1626
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_DATA,
|
1627
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_INPUT,
|
1628
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_INVALID_URL,
|
1629
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_IO_ERROR,
|
1630
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_NETWORK_UNKNOWN,
|
1631
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_SERDE,
|
1632
|
-
DDOG_TRACE_EXPORTER_ERROR_CODE_TIMED_OUT,
|
1633
|
-
} ddog_TraceExporterErrorCode;
|
1634
|
-
|
1635
|
-
/**
|
1636
|
-
* Structure containing the agent response to a trace payload
|
1637
|
-
* MUST be freed with `ddog_trace_exporter_response_free`
|
1638
|
-
*/
|
1639
|
-
typedef struct ddog_TraceExporterResponse ddog_TraceExporterResponse;
|
1640
|
-
|
1641
|
-
/**
|
1642
|
-
* The TraceExporter ingest traces from the tracers serialized as messagepack and forward them to
|
1643
|
-
* the agent while applying some transformation.
|
1644
|
-
*
|
1645
|
-
* # Proxy
|
1646
|
-
* If the input format is set as `Proxy`, the exporter will forward traces to the agent without
|
1647
|
-
* deserializing them.
|
1648
|
-
*
|
1649
|
-
* # Features
|
1650
|
-
* When the input format is set to `V04` the TraceExporter will deserialize the traces and perform
|
1651
|
-
* some operation before sending them to the agent. The available operations are described below.
|
1652
|
-
*
|
1653
|
-
* ## V07 Serialization
|
1654
|
-
* The Trace exporter can serialize the traces to V07 before sending them to the agent.
|
1655
|
-
*
|
1656
|
-
* ## Stats computation
|
1657
|
-
* The Trace Exporter can compute stats on traces. In this case the trace exporter will start
|
1658
|
-
* another task to send stats when a time bucket expire. When this feature is enabled the
|
1659
|
-
* TraceExporter drops all spans that may not be sampled by the agent.
|
1660
|
-
*/
|
1661
|
-
typedef struct ddog_TraceExporter ddog_TraceExporter;
|
1662
|
-
|
1663
|
-
/**
|
1664
|
-
* The TraceExporterConfig object will hold the configuration properties for the TraceExporter.
|
1665
|
-
* Once the configuration is passed to the TraceExporter constructor the config is no longer
|
1666
|
-
* needed by the handle and it can be freed.
|
1667
|
-
*/
|
1668
|
-
typedef struct ddog_TraceExporterConfig ddog_TraceExporterConfig;
|
1669
|
-
|
1670
|
-
/**
|
1671
|
-
* Stucture that contains error information that `TraceExporter` API can return.
|
1672
|
-
*/
|
1673
|
-
typedef struct ddog_TraceExporterError {
|
1674
|
-
enum ddog_TraceExporterErrorCode code;
|
1675
|
-
char *msg;
|
1676
|
-
} ddog_TraceExporterError;
|
1677
|
-
|
1678
|
-
/**
|
1679
|
-
* FFI compatible configuration for the TelemetryClient.
|
1680
|
-
*/
|
1681
|
-
typedef struct ddog_TelemetryClientConfig {
|
1682
|
-
/**
|
1683
|
-
* How often telemetry should be sent, in milliseconds.
|
1684
|
-
*/
|
1685
|
-
uint64_t interval;
|
1686
|
-
/**
|
1687
|
-
* A V4 UUID that represents a tracer session. This ID should:
|
1688
|
-
* - Be generated when the tracer starts
|
1689
|
-
* - Be identical within the context of a host (i.e. multiple threads/processes that belong to
|
1690
|
-
* a single instrumented app should share the same runtime_id)
|
1691
|
-
* - Be associated with traces to allow correlation between traces and telemetry data
|
1692
|
-
*/
|
1693
|
-
ddog_CharSlice runtime_id;
|
1694
|
-
/**
|
1695
|
-
* Whether to enable debug mode for telemetry.
|
1696
|
-
* When enabled, sets the DD-Telemetry-Debug-Enabled header to true.
|
1697
|
-
* Defaults to false.
|
1698
|
-
*/
|
1699
|
-
bool debug_enabled;
|
1700
|
-
} ddog_TelemetryClientConfig;
|
1701
|
-
|
1702
|
-
typedef enum ddog_LibraryConfigSource {
|
1703
|
-
DDOG_LIBRARY_CONFIG_SOURCE_LOCAL_STABLE_CONFIG = 0,
|
1704
|
-
DDOG_LIBRARY_CONFIG_SOURCE_FLEET_STABLE_CONFIG = 1,
|
1705
|
-
} ddog_LibraryConfigSource;
|
1706
|
-
|
1707
|
-
typedef struct ddog_Configurator ddog_Configurator;
|
1942
|
+
typedef enum ddog_crasht_StackTrace_NewResult_Tag {
|
1943
|
+
DDOG_CRASHT_STACK_TRACE_NEW_RESULT_OK,
|
1944
|
+
DDOG_CRASHT_STACK_TRACE_NEW_RESULT_ERR,
|
1945
|
+
} ddog_crasht_StackTrace_NewResult_Tag;
|
1708
1946
|
|
1709
|
-
|
1710
|
-
|
1711
|
-
* Equivalent to a std::ffi::CStr
|
1712
|
-
*/
|
1713
|
-
typedef struct ddog_CStr {
|
1714
|
-
/**
|
1715
|
-
* Null terminated char array
|
1716
|
-
*/
|
1717
|
-
char *ptr;
|
1718
|
-
/**
|
1719
|
-
* Length of the array, not counting the null-terminator
|
1720
|
-
*/
|
1721
|
-
uintptr_t length;
|
1722
|
-
} ddog_CStr;
|
1723
|
-
|
1724
|
-
typedef struct ddog_Slice_CharSlice {
|
1725
|
-
/**
|
1726
|
-
* Should be non-null and suitably aligned for the underlying type. It is
|
1727
|
-
* allowed but not recommended for the pointer to be null when the len is
|
1728
|
-
* zero.
|
1729
|
-
*/
|
1730
|
-
const ddog_CharSlice *ptr;
|
1731
|
-
/**
|
1732
|
-
* The number of elements (not bytes) that `.ptr` points to. Must be less
|
1733
|
-
* than or equal to [isize::MAX].
|
1734
|
-
*/
|
1735
|
-
uintptr_t len;
|
1736
|
-
} ddog_Slice_CharSlice;
|
1737
|
-
|
1738
|
-
typedef struct ddog_ProcessInfo {
|
1739
|
-
struct ddog_Slice_CharSlice args;
|
1740
|
-
struct ddog_Slice_CharSlice envp;
|
1741
|
-
ddog_CharSlice language;
|
1742
|
-
} ddog_ProcessInfo;
|
1743
|
-
|
1744
|
-
/**
|
1745
|
-
* Ffi safe type representing an owned null-terminated C array
|
1746
|
-
* Equivalent to a std::ffi::CString
|
1747
|
-
*/
|
1748
|
-
typedef struct ddog_CString {
|
1749
|
-
/**
|
1750
|
-
* Null terminated char array
|
1751
|
-
*/
|
1752
|
-
char *ptr;
|
1753
|
-
/**
|
1754
|
-
* Length of the array, not counting the null-terminator
|
1755
|
-
*/
|
1756
|
-
uintptr_t length;
|
1757
|
-
} ddog_CString;
|
1758
|
-
|
1759
|
-
typedef struct ddog_LibraryConfig {
|
1760
|
-
struct ddog_CString name;
|
1761
|
-
struct ddog_CString value;
|
1762
|
-
enum ddog_LibraryConfigSource source;
|
1763
|
-
struct ddog_CString config_id;
|
1764
|
-
} ddog_LibraryConfig;
|
1765
|
-
|
1766
|
-
/**
|
1767
|
-
* Holds the raw parts of a Rust Vec; it should only be created from Rust,
|
1768
|
-
* never from C.
|
1769
|
-
*/
|
1770
|
-
typedef struct ddog_Vec_LibraryConfig {
|
1771
|
-
const struct ddog_LibraryConfig *ptr;
|
1772
|
-
uintptr_t len;
|
1773
|
-
uintptr_t capacity;
|
1774
|
-
} ddog_Vec_LibraryConfig;
|
1775
|
-
|
1776
|
-
/**
|
1777
|
-
* A generic result type for when an operation may fail,
|
1778
|
-
* or may return <T> in case of success.
|
1779
|
-
*/
|
1780
|
-
typedef enum ddog_Result_VecLibraryConfig_Tag {
|
1781
|
-
DDOG_RESULT_VEC_LIBRARY_CONFIG_OK_VEC_LIBRARY_CONFIG,
|
1782
|
-
DDOG_RESULT_VEC_LIBRARY_CONFIG_ERR_VEC_LIBRARY_CONFIG,
|
1783
|
-
} ddog_Result_VecLibraryConfig_Tag;
|
1784
|
-
|
1785
|
-
typedef struct ddog_Result_VecLibraryConfig {
|
1786
|
-
ddog_Result_VecLibraryConfig_Tag tag;
|
1787
|
-
union {
|
1788
|
-
struct {
|
1789
|
-
struct ddog_Vec_LibraryConfig ok;
|
1790
|
-
};
|
1791
|
-
struct {
|
1792
|
-
struct ddog_Error err;
|
1793
|
-
};
|
1794
|
-
};
|
1795
|
-
} ddog_Result_VecLibraryConfig;
|
1796
|
-
|
1797
|
-
/**
|
1798
|
-
* C-compatible representation of an anonymous file handle
|
1799
|
-
*/
|
1800
|
-
typedef struct ddog_TracerMemfdHandle {
|
1801
|
-
/**
|
1802
|
-
* File descriptor (relevant only on Linux)
|
1803
|
-
*/
|
1804
|
-
int fd;
|
1805
|
-
} ddog_TracerMemfdHandle;
|
1806
|
-
|
1807
|
-
/**
|
1808
|
-
* A generic result type for when an operation may fail,
|
1809
|
-
* or may return <T> in case of success.
|
1810
|
-
*/
|
1811
|
-
typedef enum ddog_Result_TracerMemfdHandle_Tag {
|
1812
|
-
DDOG_RESULT_TRACER_MEMFD_HANDLE_OK_TRACER_MEMFD_HANDLE,
|
1813
|
-
DDOG_RESULT_TRACER_MEMFD_HANDLE_ERR_TRACER_MEMFD_HANDLE,
|
1814
|
-
} ddog_Result_TracerMemfdHandle_Tag;
|
1815
|
-
|
1816
|
-
typedef struct ddog_Result_TracerMemfdHandle {
|
1817
|
-
ddog_Result_TracerMemfdHandle_Tag tag;
|
1947
|
+
typedef struct ddog_crasht_StackTrace_NewResult {
|
1948
|
+
ddog_crasht_StackTrace_NewResult_Tag tag;
|
1818
1949
|
union {
|
1819
1950
|
struct {
|
1820
|
-
struct
|
1951
|
+
struct ddog_crasht_Handle_StackTrace ok;
|
1821
1952
|
};
|
1822
1953
|
struct {
|
1823
1954
|
struct ddog_Error err;
|
1824
1955
|
};
|
1825
1956
|
};
|
1826
|
-
}
|
1957
|
+
} ddog_crasht_StackTrace_NewResult;
|
1827
1958
|
|
1828
1959
|
#ifdef __cplusplus
|
1829
1960
|
extern "C" {
|
1830
1961
|
#endif // __cplusplus
|
1831
1962
|
|
1832
1963
|
/**
|
1964
|
+
* Drops the error. It should not be used after this, though the
|
1965
|
+
* implementation tries to limit the damage in the case of use-after-free and
|
1966
|
+
* double-free scenarios.
|
1967
|
+
*
|
1833
1968
|
* # Safety
|
1834
|
-
*
|
1969
|
+
*
|
1970
|
+
* Only pass null or a pointer to a valid, mutable `ddog_Error`.
|
1835
1971
|
*/
|
1836
1972
|
void ddog_Error_drop(struct ddog_Error *error);
|
1837
1973
|
|
@@ -1937,16 +2073,23 @@ struct ddog_Option_U32 ddog_Option_U32_some(uint32_t v);
|
|
1937
2073
|
struct ddog_Option_U32 ddog_Option_U32_none(void);
|
1938
2074
|
|
1939
2075
|
/**
|
2076
|
+
* Drops a `ddog_StringWrapper`. It should not be used after this, though the
|
2077
|
+
* implementation tries to limit the damage in the case of use-after-free and
|
2078
|
+
* double-free scenarios.
|
2079
|
+
*
|
1940
2080
|
* # Safety
|
1941
|
-
*
|
2081
|
+
*
|
2082
|
+
* Only pass null or a pointer to a valid, mutable `ddog_StringWrapper`.
|
1942
2083
|
*/
|
1943
2084
|
void ddog_StringWrapper_drop(struct ddog_StringWrapper *s);
|
1944
2085
|
|
1945
2086
|
/**
|
1946
|
-
* Returns a CharSlice of the message
|
1947
|
-
*
|
2087
|
+
* Returns a CharSlice of the message.
|
2088
|
+
*
|
1948
2089
|
* # Safety
|
2090
|
+
*
|
1949
2091
|
* Only pass null or a valid reference to a `ddog_StringWrapper`.
|
2092
|
+
* The string should not be mutated nor dropped while the CharSlice is alive.
|
1950
2093
|
*/
|
1951
2094
|
ddog_CharSlice ddog_StringWrapper_message(const struct ddog_StringWrapper *s);
|
1952
2095
|
|