Skip to content

Commit 3d5be50

Browse files
authored
Update to maintain compatibility with libdatadog (#2661)
Signed-off-by: Bob Weinand <[email protected]>
1 parent 2e11319 commit 3d5be50

7 files changed

Lines changed: 34 additions & 11 deletions

File tree

components-rs/common.h

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,10 +178,22 @@ typedef enum ddog_MetricNamespace {
178178

179179
typedef struct ddog_BlockingTransport_SidecarInterfaceResponse__SidecarInterfaceRequest ddog_BlockingTransport_SidecarInterfaceResponse__SidecarInterfaceRequest;
180180

181+
/**
182+
* `InstanceId` is a structure that holds session and runtime identifiers.
183+
*/
181184
typedef struct ddog_InstanceId ddog_InstanceId;
182185

183186
typedef struct ddog_SidecarActionsBuffer ddog_SidecarActionsBuffer;
184187

188+
/**
189+
* `SidecarTransport` is a type alias for the `BlockingTransport` struct from the `datadog_ipc`
190+
* crate. It is used for sending `SidecarInterfaceRequest` and receiving
191+
* `SidecarInterfaceResponse`.
192+
*
193+
* This transport is used for communication between different parts of the sidecar service.
194+
* It is a blocking transport, meaning that it will block the current thread until the operation is
195+
* complete.
196+
*/
185197
typedef struct ddog_BlockingTransport_SidecarInterfaceResponse__SidecarInterfaceRequest ddog_SidecarTransport;
186198

187199
typedef enum ddog_LogLevel {
@@ -262,7 +274,10 @@ typedef struct ddog_MappedMem_ShmHandle ddog_MappedMem_ShmHandle;
262274
*/
263275
typedef struct ddog_PlatformHandle_File ddog_PlatformHandle_File;
264276

265-
typedef struct ddog_RuntimeMeta ddog_RuntimeMeta;
277+
/**
278+
* `RuntimeMetadata` is a struct that represents the runtime metadata of a language.
279+
*/
280+
typedef struct ddog_RuntimeMetadata ddog_RuntimeMetadata;
266281

267282
typedef struct ddog_ShmHandle ddog_ShmHandle;
268283

components-rs/ddtrace.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@
88
#include "telemetry.h"
99
#include "sidecar.h"
1010

11+
/**
12+
* `QueueId` is a struct that represents a unique identifier for a queue.
13+
* It contains a single field, `inner`, which is a 64-bit unsigned integer.
14+
*/
1115
typedef uint64_t ddog_QueueId;
1216

1317
/**

components-rs/sidecar.h

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
#include <stdio.h>
1212
#include "common.h"
1313

14+
/**
15+
* `QueueId` is a struct that represents a unique identifier for a queue.
16+
* It contains a single field, `inner`, which is a 64-bit unsigned integer.
17+
*/
1418
typedef uint64_t ddog_QueueId;
1519

1620
/**
@@ -73,11 +77,11 @@ void ddog_sidecar_instanceId_drop(struct ddog_InstanceId *instance_id);
7377

7478
ddog_QueueId ddog_sidecar_queueId_generate(void);
7579

76-
struct ddog_RuntimeMeta *ddog_sidecar_runtimeMeta_build(ddog_CharSlice language_name,
77-
ddog_CharSlice language_version,
78-
ddog_CharSlice tracer_version);
80+
struct ddog_RuntimeMetadata *ddog_sidecar_runtimeMeta_build(ddog_CharSlice language_name,
81+
ddog_CharSlice language_version,
82+
ddog_CharSlice tracer_version);
7983

80-
void ddog_sidecar_runtimeMeta_drop(struct ddog_RuntimeMeta *meta);
84+
void ddog_sidecar_runtimeMeta_drop(struct ddog_RuntimeMetadata *meta);
8185

8286
ddog_MaybeError ddog_sidecar_telemetry_enqueueConfig(ddog_SidecarTransport **transport,
8387
const struct ddog_InstanceId *instance_id,
@@ -102,7 +106,7 @@ ddog_MaybeError ddog_sidecar_telemetry_addIntegration(ddog_SidecarTransport **tr
102106
ddog_MaybeError ddog_sidecar_telemetry_flushServiceData(ddog_SidecarTransport **transport,
103107
const struct ddog_InstanceId *instance_id,
104108
const ddog_QueueId *queue_id,
105-
const struct ddog_RuntimeMeta *runtime_meta,
109+
const struct ddog_RuntimeMetadata *runtime_meta,
106110
ddog_CharSlice service_name,
107111
ddog_CharSlice env_name);
108112

components-rs/sidecar.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::ffi::{c_char, CStr, OsStr};
22
#[cfg(unix)]
33
use std::os::unix::ffi::OsStrExt;
44
use datadog_sidecar::config::{self, LogMethod};
5-
use datadog_sidecar::interface::blocking::SidecarTransport;
5+
use datadog_sidecar::service::blocking::SidecarTransport;
66
use ddcommon_ffi::slice::AsBytes;
77
use ddcommon_ffi::{CharSlice, self as ffi, MaybeError};
88
use ddtelemetry_ffi::try_c;

components-rs/telemetry.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
use datadog_sidecar::interface::blocking::SidecarTransport;
2-
use datadog_sidecar::interface::{blocking, InstanceId, QueueId, SidecarAction};
1+
use datadog_sidecar::service::blocking::SidecarTransport;
2+
use datadog_sidecar::service::{blocking, InstanceId, QueueId, SidecarAction};
33
use ddcommon_ffi::slice::AsBytes;
44
use ddcommon_ffi::{CharSlice, MaybeError, self as ffi};
55
use ddcommon::tag::parse_tags;

ext/telemetry.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ void ddtrace_telemetry_finalize(void) {
121121
}
122122

123123
ddog_CharSlice php_version = dd_zend_string_to_CharSlice(Z_STR_P(zend_get_constant_str(ZEND_STRL("PHP_VERSION"))));
124-
struct ddog_RuntimeMeta *meta = ddog_sidecar_runtimeMeta_build(DDOG_CHARSLICE_C("php"), php_version, DDOG_CHARSLICE_C(PHP_DDTRACE_VERSION));
124+
struct ddog_RuntimeMetadata *meta = ddog_sidecar_runtimeMeta_build(DDOG_CHARSLICE_C("php"), php_version, DDOG_CHARSLICE_C(PHP_DDTRACE_VERSION));
125125

126126
ddog_sidecar_telemetry_flushServiceData(&ddtrace_sidecar, ddtrace_sidecar_instance_id, &DDTRACE_G(telemetry_queue_id), meta, service_name, env_name);
127127

libdatadog

Submodule libdatadog updated 95 files

0 commit comments

Comments
 (0)