libdatadog 18.1.0.1.0 → 22.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 +1 -1
 - data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +9547 -10780
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/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-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +386 -223
 - data/vendor/{libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-22.0.1/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-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/data-pipeline.h +16 -3
 - data/vendor/libdatadog-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/ddsketch.h +89 -0
 - data/vendor/libdatadog-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/library-config.h +113 -0
 - data/vendor/libdatadog-22.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/log.h +63 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +3 -2
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
 - data/vendor/{libdatadog-18.1.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +9547 -10780
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/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-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +386 -223
 - data/vendor/{libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-22.0.1/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-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/data-pipeline.h +16 -3
 - data/vendor/libdatadog-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/ddsketch.h +89 -0
 - data/vendor/libdatadog-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/library-config.h +113 -0
 - data/vendor/libdatadog-22.0.1/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-22.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +3 -2
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +9547 -10780
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +435 -229
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +386 -223
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/crashtracker.h +10 -34
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/data-pipeline.h +16 -3
 - data/vendor/libdatadog-22.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/ddsketch.h +89 -0
 - data/vendor/libdatadog-22.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/library-config.h +113 -0
 - data/vendor/libdatadog-22.0.1/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-22.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/profiling.h +3 -2
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
 - data/vendor/{libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/LICENSE-3rdparty.yml +9547 -10780
 - data/vendor/libdatadog-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +435 -229
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/common.h +386 -223
 - data/vendor/{libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/crashtracker.h +10 -34
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/data-pipeline.h +16 -3
 - data/vendor/libdatadog-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/ddsketch.h +89 -0
 - data/vendor/libdatadog-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/library-config.h +113 -0
 - data/vendor/libdatadog-22.0.1/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-22.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +3 -2
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
 - data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
 - metadata +61 -53
 - data/vendor/libdatadog-18.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/library-config.h +0 -73
 - data/vendor/libdatadog-18.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/library-config.h +0 -73
 - data/vendor/libdatadog-18.1.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/library-config.h +0 -73
 - 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/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/library-config.h +0 -73
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
 - /data/vendor/{libdatadog-18.1.0 → libdatadog-22.0.1}/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,340 @@ 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 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1314 
     | 
    
         
            +
             * Represents the types of metadata that can be set on a `TracerMetadata` object.
         
     | 
| 
      
 1315 
     | 
    
         
            +
             */
         
     | 
| 
      
 1316 
     | 
    
         
            +
            typedef enum ddog_MetadataKind {
         
     | 
| 
      
 1317 
     | 
    
         
            +
              DDOG_METADATA_KIND_RUNTIME_ID = 0,
         
     | 
| 
      
 1318 
     | 
    
         
            +
              DDOG_METADATA_KIND_TRACER_LANGUAGE = 1,
         
     | 
| 
      
 1319 
     | 
    
         
            +
              DDOG_METADATA_KIND_TRACER_VERSION = 2,
         
     | 
| 
      
 1320 
     | 
    
         
            +
              DDOG_METADATA_KIND_HOSTNAME = 3,
         
     | 
| 
      
 1321 
     | 
    
         
            +
              DDOG_METADATA_KIND_SERVICE_NAME = 4,
         
     | 
| 
      
 1322 
     | 
    
         
            +
              DDOG_METADATA_KIND_SERVICE_ENV = 5,
         
     | 
| 
      
 1323 
     | 
    
         
            +
              DDOG_METADATA_KIND_SERVICE_VERSION = 6,
         
     | 
| 
      
 1324 
     | 
    
         
            +
              DDOG_METADATA_KIND_PROCESS_TAGS = 7,
         
     | 
| 
      
 1325 
     | 
    
         
            +
              DDOG_METADATA_KIND_CONTAINER_ID = 8,
         
     | 
| 
      
 1326 
     | 
    
         
            +
            } ddog_MetadataKind;
         
     | 
| 
      
 1327 
     | 
    
         
            +
             
     | 
| 
      
 1328 
     | 
    
         
            +
            typedef struct ddog_Configurator ddog_Configurator;
         
     | 
| 
      
 1329 
     | 
    
         
            +
             
     | 
| 
      
 1330 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1331 
     | 
    
         
            +
             * This struct MUST be backward compatible.
         
     | 
| 
      
 1332 
     | 
    
         
            +
             */
         
     | 
| 
      
 1333 
     | 
    
         
            +
            typedef struct ddog_TracerMetadata ddog_TracerMetadata;
         
     | 
| 
      
 1334 
     | 
    
         
            +
             
     | 
| 
      
 1335 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1336 
     | 
    
         
            +
             * Ffi safe type representing a borrowed null-terminated C array
         
     | 
| 
      
 1337 
     | 
    
         
            +
             * Equivalent to a std::ffi::CStr
         
     | 
| 
      
 1338 
     | 
    
         
            +
             */
         
     | 
| 
      
 1339 
     | 
    
         
            +
            typedef struct ddog_CStr {
         
     | 
| 
      
 1340 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1341 
     | 
    
         
            +
               * Null terminated char array
         
     | 
| 
      
 1342 
     | 
    
         
            +
               */
         
     | 
| 
      
 1343 
     | 
    
         
            +
              char *ptr;
         
     | 
| 
      
 1344 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1345 
     | 
    
         
            +
               * Length of the array, not counting the null-terminator
         
     | 
| 
      
 1346 
     | 
    
         
            +
               */
         
     | 
| 
      
 1347 
     | 
    
         
            +
              uintptr_t length;
         
     | 
| 
      
 1348 
     | 
    
         
            +
            } ddog_CStr;
         
     | 
| 
      
 1349 
     | 
    
         
            +
             
     | 
| 
      
 1350 
     | 
    
         
            +
            typedef struct ddog_Slice_CharSlice {
         
     | 
| 
      
 1351 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1352 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 1353 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 1354 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 1355 
     | 
    
         
            +
               */
         
     | 
| 
      
 1356 
     | 
    
         
            +
              const ddog_CharSlice *ptr;
         
     | 
| 
      
 1357 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1358 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 1359 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 1360 
     | 
    
         
            +
               */
         
     | 
| 
      
 1361 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1362 
     | 
    
         
            +
            } ddog_Slice_CharSlice;
         
     | 
| 
      
 1363 
     | 
    
         
            +
             
     | 
| 
      
 1364 
     | 
    
         
            +
            typedef struct ddog_ProcessInfo {
         
     | 
| 
      
 1365 
     | 
    
         
            +
              struct ddog_Slice_CharSlice args;
         
     | 
| 
      
 1366 
     | 
    
         
            +
              struct ddog_Slice_CharSlice envp;
         
     | 
| 
      
 1367 
     | 
    
         
            +
              ddog_CharSlice language;
         
     | 
| 
      
 1368 
     | 
    
         
            +
            } ddog_ProcessInfo;
         
     | 
| 
      
 1369 
     | 
    
         
            +
             
     | 
| 
      
 1370 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1371 
     | 
    
         
            +
             * Ffi safe type representing an owned null-terminated C array
         
     | 
| 
      
 1372 
     | 
    
         
            +
             * Equivalent to a std::ffi::CString
         
     | 
| 
      
 1373 
     | 
    
         
            +
             */
         
     | 
| 
      
 1374 
     | 
    
         
            +
            typedef struct ddog_CString {
         
     | 
| 
      
 1375 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1376 
     | 
    
         
            +
               * Null terminated char array
         
     | 
| 
      
 1377 
     | 
    
         
            +
               */
         
     | 
| 
      
 1378 
     | 
    
         
            +
              char *ptr;
         
     | 
| 
      
 1379 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1380 
     | 
    
         
            +
               * Length of the array, not counting the null-terminator
         
     | 
| 
      
 1381 
     | 
    
         
            +
               */
         
     | 
| 
      
 1382 
     | 
    
         
            +
              uintptr_t length;
         
     | 
| 
      
 1383 
     | 
    
         
            +
            } ddog_CString;
         
     | 
| 
      
 1384 
     | 
    
         
            +
             
     | 
| 
      
 1385 
     | 
    
         
            +
            typedef struct ddog_LibraryConfig {
         
     | 
| 
      
 1386 
     | 
    
         
            +
              struct ddog_CString name;
         
     | 
| 
      
 1387 
     | 
    
         
            +
              struct ddog_CString value;
         
     | 
| 
      
 1388 
     | 
    
         
            +
              enum ddog_LibraryConfigSource source;
         
     | 
| 
      
 1389 
     | 
    
         
            +
              struct ddog_CString config_id;
         
     | 
| 
      
 1390 
     | 
    
         
            +
            } ddog_LibraryConfig;
         
     | 
| 
      
 1391 
     | 
    
         
            +
             
     | 
| 
      
 1392 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1393 
     | 
    
         
            +
             * Holds the raw parts of a Rust Vec; it should only be created from Rust,
         
     | 
| 
      
 1394 
     | 
    
         
            +
             * never from C.
         
     | 
| 
      
 1395 
     | 
    
         
            +
             */
         
     | 
| 
      
 1396 
     | 
    
         
            +
            typedef struct ddog_Vec_LibraryConfig {
         
     | 
| 
      
 1397 
     | 
    
         
            +
              const struct ddog_LibraryConfig *ptr;
         
     | 
| 
      
 1398 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1399 
     | 
    
         
            +
              uintptr_t capacity;
         
     | 
| 
      
 1400 
     | 
    
         
            +
            } ddog_Vec_LibraryConfig;
         
     | 
| 
      
 1401 
     | 
    
         
            +
             
     | 
| 
      
 1402 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1403 
     | 
    
         
            +
             * A result type that includes debug/log messages along with the data
         
     | 
| 
      
 1404 
     | 
    
         
            +
             */
         
     | 
| 
      
 1405 
     | 
    
         
            +
            typedef struct ddog_OkResult {
         
     | 
| 
      
 1406 
     | 
    
         
            +
              struct ddog_Vec_LibraryConfig value;
         
     | 
| 
      
 1407 
     | 
    
         
            +
              struct ddog_CString logs;
         
     | 
| 
      
 1408 
     | 
    
         
            +
            } ddog_OkResult;
         
     | 
| 
      
 1409 
     | 
    
         
            +
             
     | 
| 
      
 1410 
     | 
    
         
            +
            typedef enum ddog_LibraryConfigLoggedResult_Tag {
         
     | 
| 
      
 1411 
     | 
    
         
            +
              DDOG_LIBRARY_CONFIG_LOGGED_RESULT_OK,
         
     | 
| 
      
 1412 
     | 
    
         
            +
              DDOG_LIBRARY_CONFIG_LOGGED_RESULT_ERR,
         
     | 
| 
      
 1413 
     | 
    
         
            +
            } ddog_LibraryConfigLoggedResult_Tag;
         
     | 
| 
      
 1414 
     | 
    
         
            +
             
     | 
| 
      
 1415 
     | 
    
         
            +
            typedef struct ddog_LibraryConfigLoggedResult {
         
     | 
| 
      
 1416 
     | 
    
         
            +
              ddog_LibraryConfigLoggedResult_Tag tag;
         
     | 
| 
      
 1417 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1418 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1419 
     | 
    
         
            +
                  struct ddog_OkResult ok;
         
     | 
| 
      
 1420 
     | 
    
         
            +
                };
         
     | 
| 
      
 1421 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1422 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1423 
     | 
    
         
            +
                };
         
     | 
| 
      
 1424 
     | 
    
         
            +
              };
         
     | 
| 
      
 1425 
     | 
    
         
            +
            } ddog_LibraryConfigLoggedResult;
         
     | 
| 
      
 1426 
     | 
    
         
            +
             
     | 
| 
      
 1427 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1428 
     | 
    
         
            +
             * C-compatible representation of an anonymous file handle
         
     | 
| 
      
 1429 
     | 
    
         
            +
             */
         
     | 
| 
      
 1430 
     | 
    
         
            +
            typedef struct ddog_TracerMemfdHandle {
         
     | 
| 
      
 1431 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1432 
     | 
    
         
            +
               * File descriptor (relevant only on Linux)
         
     | 
| 
      
 1433 
     | 
    
         
            +
               */
         
     | 
| 
      
 1434 
     | 
    
         
            +
              int fd;
         
     | 
| 
      
 1435 
     | 
    
         
            +
            } ddog_TracerMemfdHandle;
         
     | 
| 
      
 1436 
     | 
    
         
            +
             
     | 
| 
      
 1437 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1438 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 1439 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 1440 
     | 
    
         
            +
             */
         
     | 
| 
      
 1441 
     | 
    
         
            +
            typedef enum ddog_Result_TracerMemfdHandle_Tag {
         
     | 
| 
      
 1442 
     | 
    
         
            +
              DDOG_RESULT_TRACER_MEMFD_HANDLE_OK_TRACER_MEMFD_HANDLE,
         
     | 
| 
      
 1443 
     | 
    
         
            +
              DDOG_RESULT_TRACER_MEMFD_HANDLE_ERR_TRACER_MEMFD_HANDLE,
         
     | 
| 
      
 1444 
     | 
    
         
            +
            } ddog_Result_TracerMemfdHandle_Tag;
         
     | 
| 
      
 1445 
     | 
    
         
            +
             
     | 
| 
      
 1446 
     | 
    
         
            +
            typedef struct ddog_Result_TracerMemfdHandle {
         
     | 
| 
      
 1447 
     | 
    
         
            +
              ddog_Result_TracerMemfdHandle_Tag tag;
         
     | 
| 
      
 1448 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1449 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1450 
     | 
    
         
            +
                  struct ddog_TracerMemfdHandle ok;
         
     | 
| 
      
 1451 
     | 
    
         
            +
                };
         
     | 
| 
      
 1452 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1453 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1454 
     | 
    
         
            +
                };
         
     | 
| 
      
 1455 
     | 
    
         
            +
              };
         
     | 
| 
      
 1456 
     | 
    
         
            +
            } ddog_Result_TracerMemfdHandle;
         
     | 
| 
      
 1457 
     | 
    
         
            +
             
     | 
| 
      
 1458 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1459 
     | 
    
         
            +
             * Log level for filtering log events.
         
     | 
| 
      
 1460 
     | 
    
         
            +
             */
         
     | 
| 
      
 1461 
     | 
    
         
            +
            typedef enum ddog_LogEventLevel {
         
     | 
| 
      
 1462 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1463 
     | 
    
         
            +
               * The "trace" level.
         
     | 
| 
      
 1464 
     | 
    
         
            +
               *
         
     | 
| 
      
 1465 
     | 
    
         
            +
               * Designates very low priority, often extremely verbose, information.
         
     | 
| 
      
 1466 
     | 
    
         
            +
               */
         
     | 
| 
      
 1467 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_TRACE = 0,
         
     | 
| 
      
 1468 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1469 
     | 
    
         
            +
               * The "debug" level.
         
     | 
| 
      
 1470 
     | 
    
         
            +
               *
         
     | 
| 
      
 1471 
     | 
    
         
            +
               * Designates lower priority information.
         
     | 
| 
      
 1472 
     | 
    
         
            +
               */
         
     | 
| 
      
 1473 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_DEBUG = 1,
         
     | 
| 
      
 1474 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1475 
     | 
    
         
            +
               * The "info" level.
         
     | 
| 
      
 1476 
     | 
    
         
            +
               *
         
     | 
| 
      
 1477 
     | 
    
         
            +
               * Designates useful information.
         
     | 
| 
      
 1478 
     | 
    
         
            +
               */
         
     | 
| 
      
 1479 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_INFO = 2,
         
     | 
| 
      
 1480 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1481 
     | 
    
         
            +
               * The "warn" level.
         
     | 
| 
      
 1482 
     | 
    
         
            +
               *
         
     | 
| 
      
 1483 
     | 
    
         
            +
               * Designates hazardous situations.
         
     | 
| 
      
 1484 
     | 
    
         
            +
               */
         
     | 
| 
      
 1485 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_WARN = 3,
         
     | 
| 
      
 1486 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1487 
     | 
    
         
            +
               * The "error" level.
         
     | 
| 
      
 1488 
     | 
    
         
            +
               *
         
     | 
| 
      
 1489 
     | 
    
         
            +
               * Designates very serious errors.
         
     | 
| 
      
 1490 
     | 
    
         
            +
               */
         
     | 
| 
      
 1491 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_ERROR = 4,
         
     | 
| 
      
 1492 
     | 
    
         
            +
            } ddog_LogEventLevel;
         
     | 
| 
      
 1493 
     | 
    
         
            +
             
     | 
| 
      
 1494 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1495 
     | 
    
         
            +
             * Target for standard stream output.
         
     | 
| 
      
 1496 
     | 
    
         
            +
             */
         
     | 
| 
      
 1497 
     | 
    
         
            +
            typedef enum ddog_StdTarget {
         
     | 
| 
      
 1498 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1499 
     | 
    
         
            +
               * Write to standard output (stdout).
         
     | 
| 
      
 1500 
     | 
    
         
            +
               */
         
     | 
| 
      
 1501 
     | 
    
         
            +
              DDOG_STD_TARGET_OUT,
         
     | 
| 
      
 1502 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1503 
     | 
    
         
            +
               * Write to standard error (stderr).
         
     | 
| 
      
 1504 
     | 
    
         
            +
               */
         
     | 
| 
      
 1505 
     | 
    
         
            +
              DDOG_STD_TARGET_ERR,
         
     | 
| 
      
 1506 
     | 
    
         
            +
            } ddog_StdTarget;
         
     | 
| 
      
 1507 
     | 
    
         
            +
             
     | 
| 
      
 1508 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1509 
     | 
    
         
            +
             * Configuration for standard stream output.
         
     | 
| 
      
 1510 
     | 
    
         
            +
             */
         
     | 
| 
      
 1511 
     | 
    
         
            +
            typedef struct ddog_StdConfig {
         
     | 
| 
      
 1512 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1513 
     | 
    
         
            +
               * Target stream (stdout or stderr)
         
     | 
| 
      
 1514 
     | 
    
         
            +
               */
         
     | 
| 
      
 1515 
     | 
    
         
            +
              enum ddog_StdTarget target;
         
     | 
| 
      
 1516 
     | 
    
         
            +
            } ddog_StdConfig;
         
     | 
| 
      
 1517 
     | 
    
         
            +
             
     | 
| 
      
 1518 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1519 
     | 
    
         
            +
             * Configuration for file output.
         
     | 
| 
      
 1520 
     | 
    
         
            +
             */
         
     | 
| 
      
 1521 
     | 
    
         
            +
            typedef struct ddog_FileConfig {
         
     | 
| 
      
 1522 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1523 
     | 
    
         
            +
               * Path to the log file
         
     | 
| 
      
 1524 
     | 
    
         
            +
               */
         
     | 
| 
      
 1525 
     | 
    
         
            +
              ddog_CharSlice path;
         
     | 
| 
      
 1526 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1527 
     | 
    
         
            +
               * Maximum total number of files (current + rotated) to keep on disk.
         
     | 
| 
      
 1528 
     | 
    
         
            +
               * When this limit is exceeded, the oldest rotated files are deleted.
         
     | 
| 
      
 1529 
     | 
    
         
            +
               * Set to 0 to disable file cleanup.
         
     | 
| 
      
 1530 
     | 
    
         
            +
               */
         
     | 
| 
      
 1531 
     | 
    
         
            +
              uint64_t max_files;
         
     | 
| 
      
 1532 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1533 
     | 
    
         
            +
               * Maximum size in bytes for each log file.
         
     | 
| 
      
 1534 
     | 
    
         
            +
               * Set to 0 to disable size-based rotation.
         
     | 
| 
      
 1535 
     | 
    
         
            +
               */
         
     | 
| 
      
 1536 
     | 
    
         
            +
              uint64_t max_size_bytes;
         
     | 
| 
      
 1537 
     | 
    
         
            +
            } ddog_FileConfig;
         
     | 
| 
      
 1538 
     | 
    
         
            +
             
     | 
| 
      
 1539 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1540 
     | 
    
         
            +
             * This is a minimal DDSketch implementation
         
     | 
| 
      
 1541 
     | 
    
         
            +
             *
         
     | 
| 
      
 1542 
     | 
    
         
            +
             * This implementation only supports a part of the standard (which is also only the parts dd
         
     | 
| 
      
 1543 
     | 
    
         
            +
             * backend supports :shrug:)
         
     | 
| 
      
 1544 
     | 
    
         
            +
             * - max length contiguous bin store, with lower bin collapse behavior.
         
     | 
| 
      
 1545 
     | 
    
         
            +
             * - Positive or zero values
         
     | 
| 
      
 1546 
     | 
    
         
            +
             *
         
     | 
| 
      
 1547 
     | 
    
         
            +
             * The default sketch has a 1% relative accuracy, and only accepts positive points
         
     | 
| 
      
 1548 
     | 
    
         
            +
             *
         
     | 
| 
      
 1549 
     | 
    
         
            +
             * See <https://github.com/DataDog/sketches-go> for the reference implementation
         
     | 
| 
      
 1550 
     | 
    
         
            +
             */
         
     | 
| 
      
 1551 
     | 
    
         
            +
            typedef struct ddsketch_DDSketch ddsketch_DDSketch;
         
     | 
| 
      
 1552 
     | 
    
         
            +
             
     | 
| 
      
 1553 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1554 
     | 
    
         
            +
             * Represents an object that should only be referred to by its handle.
         
     | 
| 
      
 1555 
     | 
    
         
            +
             * Do not access its member for any reason, only use the C API functions on this struct.
         
     | 
| 
      
 1556 
     | 
    
         
            +
             */
         
     | 
| 
      
 1557 
     | 
    
         
            +
            typedef struct ddsketch_Handle_DDSketch {
         
     | 
| 
      
 1558 
     | 
    
         
            +
              struct ddsketch_DDSketch *inner;
         
     | 
| 
      
 1559 
     | 
    
         
            +
            } ddsketch_Handle_DDSketch;
         
     | 
| 
      
 1560 
     | 
    
         
            +
             
     | 
| 
       1234 
1561 
     | 
    
         
             
            typedef enum ddog_crasht_BuildIdType {
         
     | 
| 
       1235 
1562 
     | 
    
         
             
              DDOG_CRASHT_BUILD_ID_TYPE_GNU,
         
     | 
| 
       1236 
1563 
     | 
    
         
             
              DDOG_CRASHT_BUILD_ID_TYPE_GO,
         
     | 
| 
         @@ -1363,6 +1690,12 @@ typedef enum ddog_crasht_StacktraceCollection { 
     | 
|
| 
       1363 
1690 
     | 
    
         
             
               */
         
     | 
| 
       1364 
1691 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_DISABLED,
         
     | 
| 
       1365 
1692 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_WITHOUT_SYMBOLS,
         
     | 
| 
      
 1693 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1694 
     | 
    
         
            +
               * This option uses `backtrace::resolve_frame_unsynchronized()` to gather symbol information
         
     | 
| 
      
 1695 
     | 
    
         
            +
               * and also unwind inlined functions. Enabling this feature will not only provide symbolic
         
     | 
| 
      
 1696 
     | 
    
         
            +
               * details, but may also yield additional or less stack frames compared to other
         
     | 
| 
      
 1697 
     | 
    
         
            +
               * configurations.
         
     | 
| 
      
 1698 
     | 
    
         
            +
               */
         
     | 
| 
       1366 
1699 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_INPROCESS_SYMBOLS,
         
     | 
| 
       1367 
1700 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_SYMBOLS_IN_RECEIVER,
         
     | 
| 
       1368 
1701 
     | 
    
         
             
            } ddog_crasht_StacktraceCollection;
         
     | 
| 
         @@ -1424,6 +1757,9 @@ typedef struct ddog_crasht_Config { 
     | 
|
| 
       1424 
1757 
     | 
    
         
             
              struct ddog_crasht_Slice_I32 signals;
         
     | 
| 
       1425 
1758 
     | 
    
         
             
              /**
         
     | 
| 
       1426 
1759 
     | 
    
         
             
               * Timeout in milliseconds before the signal handler starts tearing things down to return.
         
     | 
| 
      
 1760 
     | 
    
         
            +
               * If 0, uses the default timeout as specified in
         
     | 
| 
      
 1761 
     | 
    
         
            +
               * `datadog_crashtracker::shared::constants::DD_CRASHTRACK_DEFAULT_TIMEOUT`. Otherwise, uses
         
     | 
| 
      
 1762 
     | 
    
         
            +
               * the specified timeout value.
         
     | 
| 
       1427 
1763 
     | 
    
         
             
               * This is given as a uint32_t, but the actual timeout needs to fit inside of an i32 (max
         
     | 
| 
       1428 
1764 
     | 
    
         
             
               * 2^31-1). This is a limitation of the various interfaces used to guarantee the timeout.
         
     | 
| 
       1429 
1765 
     | 
    
         
             
               */
         
     | 
| 
         @@ -1525,6 +1861,23 @@ typedef struct ddog_crasht_Handle_CrashInfoBuilder { 
     | 
|
| 
       1525 
1861 
     | 
    
         
             
              struct ddog_crasht_CrashInfoBuilder *inner;
         
     | 
| 
       1526 
1862 
     | 
    
         
             
            } ddog_crasht_Handle_CrashInfoBuilder;
         
     | 
| 
       1527 
1863 
     | 
    
         | 
| 
      
 1864 
     | 
    
         
            +
            typedef enum  ddog_crasht_CrashInfoBuilder_NewResult_Tag {
         
     | 
| 
      
 1865 
     | 
    
         
            +
              DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_OK,
         
     | 
| 
      
 1866 
     | 
    
         
            +
              DDOG_CRASHT_CRASH_INFO_BUILDER_NEW_RESULT_ERR,
         
     | 
| 
      
 1867 
     | 
    
         
            +
            }  ddog_crasht_CrashInfoBuilder_NewResult_Tag;
         
     | 
| 
      
 1868 
     | 
    
         
            +
             
     | 
| 
      
 1869 
     | 
    
         
            +
            typedef struct  ddog_crasht_CrashInfoBuilder_NewResult {
         
     | 
| 
      
 1870 
     | 
    
         
            +
               ddog_crasht_CrashInfoBuilder_NewResult_Tag tag;
         
     | 
| 
      
 1871 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1872 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1873 
     | 
    
         
            +
                  struct ddog_crasht_Handle_CrashInfoBuilder ok;
         
     | 
| 
      
 1874 
     | 
    
         
            +
                };
         
     | 
| 
      
 1875 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1876 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1877 
     | 
    
         
            +
                };
         
     | 
| 
      
 1878 
     | 
    
         
            +
              };
         
     | 
| 
      
 1879 
     | 
    
         
            +
            }  ddog_crasht_CrashInfoBuilder_NewResult;
         
     | 
| 
      
 1880 
     | 
    
         
            +
             
     | 
| 
       1528 
1881 
     | 
    
         
             
            typedef enum ddog_crasht_CrashInfo_NewResult_Tag {
         
     | 
| 
       1529 
1882 
     | 
    
         
             
              DDOG_CRASHT_CRASH_INFO_NEW_RESULT_OK,
         
     | 
| 
       1530 
1883 
     | 
    
         
             
              DDOG_CRASHT_CRASH_INFO_NEW_RESULT_ERR,
         
     | 
| 
         @@ -1606,232 +1959,35 @@ typedef struct ddog_crasht_StackFrame_NewResult { 
     | 
|
| 
       1606 
1959 
     | 
    
         
             
              };
         
     | 
| 
       1607 
1960 
     | 
    
         
             
            } ddog_crasht_StackFrame_NewResult;
         
     | 
| 
       1608 
1961 
     | 
    
         | 
| 
       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;
         
     | 
| 
       1708 
     | 
    
         
            -
             
     | 
| 
       1709 
     | 
    
         
            -
            /**
         
     | 
| 
       1710 
     | 
    
         
            -
             * Ffi safe type representing a borrowed null-terminated C array
         
     | 
| 
       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;
         
     | 
| 
      
 1962 
     | 
    
         
            +
            typedef enum  ddog_crasht_StackTrace_NewResult_Tag {
         
     | 
| 
      
 1963 
     | 
    
         
            +
              DDOG_CRASHT_STACK_TRACE_NEW_RESULT_OK,
         
     | 
| 
      
 1964 
     | 
    
         
            +
              DDOG_CRASHT_STACK_TRACE_NEW_RESULT_ERR,
         
     | 
| 
      
 1965 
     | 
    
         
            +
            }  ddog_crasht_StackTrace_NewResult_Tag;
         
     | 
| 
       1775 
1966 
     | 
    
         | 
| 
       1776 
     | 
    
         
            -
             
     | 
| 
       1777 
     | 
    
         
            -
              
     | 
| 
       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;
         
     | 
| 
      
 1967 
     | 
    
         
            +
            typedef struct  ddog_crasht_StackTrace_NewResult {
         
     | 
| 
      
 1968 
     | 
    
         
            +
               ddog_crasht_StackTrace_NewResult_Tag tag;
         
     | 
| 
       1787 
1969 
     | 
    
         
             
              union {
         
     | 
| 
       1788 
1970 
     | 
    
         
             
                struct {
         
     | 
| 
       1789 
     | 
    
         
            -
                  struct  
     | 
| 
      
 1971 
     | 
    
         
            +
                  struct ddog_crasht_Handle_StackTrace ok;
         
     | 
| 
       1790 
1972 
     | 
    
         
             
                };
         
     | 
| 
       1791 
1973 
     | 
    
         
             
                struct {
         
     | 
| 
       1792 
1974 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       1793 
1975 
     | 
    
         
             
                };
         
     | 
| 
       1794 
1976 
     | 
    
         
             
              };
         
     | 
| 
       1795 
     | 
    
         
            -
            } 
     | 
| 
       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;
         
     | 
| 
       1818 
     | 
    
         
            -
              union {
         
     | 
| 
       1819 
     | 
    
         
            -
                struct {
         
     | 
| 
       1820 
     | 
    
         
            -
                  struct ddog_TracerMemfdHandle ok;
         
     | 
| 
       1821 
     | 
    
         
            -
                };
         
     | 
| 
       1822 
     | 
    
         
            -
                struct {
         
     | 
| 
       1823 
     | 
    
         
            -
                  struct ddog_Error err;
         
     | 
| 
       1824 
     | 
    
         
            -
                };
         
     | 
| 
       1825 
     | 
    
         
            -
              };
         
     | 
| 
       1826 
     | 
    
         
            -
            } ddog_Result_TracerMemfdHandle;
         
     | 
| 
      
 1977 
     | 
    
         
            +
            }  ddog_crasht_StackTrace_NewResult;
         
     | 
| 
       1827 
1978 
     | 
    
         | 
| 
       1828 
1979 
     | 
    
         
             
            #ifdef __cplusplus
         
     | 
| 
       1829 
1980 
     | 
    
         
             
            extern "C" {
         
     | 
| 
       1830 
1981 
     | 
    
         
             
            #endif // __cplusplus
         
     | 
| 
       1831 
1982 
     | 
    
         | 
| 
       1832 
1983 
     | 
    
         
             
            /**
         
     | 
| 
      
 1984 
     | 
    
         
            +
             * Drops the error. It should not be used after this, though the
         
     | 
| 
      
 1985 
     | 
    
         
            +
             * implementation tries to limit the damage in the case of use-after-free and
         
     | 
| 
      
 1986 
     | 
    
         
            +
             * double-free scenarios.
         
     | 
| 
      
 1987 
     | 
    
         
            +
             *
         
     | 
| 
       1833 
1988 
     | 
    
         
             
             * # Safety
         
     | 
| 
       1834 
     | 
    
         
            -
             * 
     | 
| 
      
 1989 
     | 
    
         
            +
             *
         
     | 
| 
      
 1990 
     | 
    
         
            +
             * Only pass null or a pointer to a valid, mutable `ddog_Error`.
         
     | 
| 
       1835 
1991 
     | 
    
         
             
             */
         
     | 
| 
       1836 
1992 
     | 
    
         
             
            void ddog_Error_drop(struct ddog_Error *error);
         
     | 
| 
       1837 
1993 
     | 
    
         | 
| 
         @@ -1937,16 +2093,23 @@ struct ddog_Option_U32 ddog_Option_U32_some(uint32_t v); 
     | 
|
| 
       1937 
2093 
     | 
    
         
             
            struct ddog_Option_U32 ddog_Option_U32_none(void);
         
     | 
| 
       1938 
2094 
     | 
    
         | 
| 
       1939 
2095 
     | 
    
         
             
            /**
         
     | 
| 
      
 2096 
     | 
    
         
            +
             * Drops a `ddog_StringWrapper`. It should not be used after this, though the
         
     | 
| 
      
 2097 
     | 
    
         
            +
             * implementation tries to limit the damage in the case of use-after-free and
         
     | 
| 
      
 2098 
     | 
    
         
            +
             * double-free scenarios.
         
     | 
| 
      
 2099 
     | 
    
         
            +
             *
         
     | 
| 
       1940 
2100 
     | 
    
         
             
             * # Safety
         
     | 
| 
       1941 
     | 
    
         
            -
             * 
     | 
| 
      
 2101 
     | 
    
         
            +
             *
         
     | 
| 
      
 2102 
     | 
    
         
            +
             * Only pass null or a pointer to a valid, mutable `ddog_StringWrapper`.
         
     | 
| 
       1942 
2103 
     | 
    
         
             
             */
         
     | 
| 
       1943 
2104 
     | 
    
         
             
            void ddog_StringWrapper_drop(struct ddog_StringWrapper *s);
         
     | 
| 
       1944 
2105 
     | 
    
         | 
| 
       1945 
2106 
     | 
    
         
             
            /**
         
     | 
| 
       1946 
     | 
    
         
            -
             * Returns a CharSlice of the message 
     | 
| 
       1947 
     | 
    
         
            -
             * 
     | 
| 
      
 2107 
     | 
    
         
            +
             * Returns a CharSlice of the message.
         
     | 
| 
      
 2108 
     | 
    
         
            +
             *
         
     | 
| 
       1948 
2109 
     | 
    
         
             
             * # Safety
         
     | 
| 
      
 2110 
     | 
    
         
            +
             *
         
     | 
| 
       1949 
2111 
     | 
    
         
             
             * Only pass null or a valid reference to a `ddog_StringWrapper`.
         
     | 
| 
      
 2112 
     | 
    
         
            +
             * The string should not be mutated nor dropped while the CharSlice is alive.
         
     | 
| 
       1950 
2113 
     | 
    
         
             
             */
         
     | 
| 
       1951 
2114 
     | 
    
         
             
            ddog_CharSlice ddog_StringWrapper_message(const struct ddog_StringWrapper *s);
         
     | 
| 
       1952 
2115 
     | 
    
         |