diff --git a/.codecov.yml b/.codecov.yml index ba771bc082..69a6e68e26 100644 --- a/.codecov.yml +++ b/.codecov.yml @@ -88,9 +88,9 @@ component_management: paths: - libdd-trace-utils - component_id: tracer-flare # this is an identifier that should not be changed - name: datadog-tracer-flare # this is a display name, and can be changed freely + name: libdd-tracer-flare # this is a display name, and can be changed freely paths: - - datadog-tracer-flare + - libdd-tracer-flare - component_id: datadog-log name: libdd-log paths: diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ebc802cf5b..a894751d51 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -28,7 +28,6 @@ datadog-remote-config @Datadog/libdatadog-php @Datadog/libdatadog datadog-sidecar @Datadog/libdatadog-php @Datadog/libdatadog-apm datadog-sidecar-ffi @Datadog/libdatadog-php @Datadog/libdatadog-apm datadog-sidecar-macros @Datadog/libdatadog-php -datadog-tracer-flare @Datadog/libdatadog-apm docker-bake.hcl @Datadog/apm-common-components-core docs @Datadog/libdatadog examples @Datadog/libdatadog @@ -48,6 +47,7 @@ libdd-trace-obfuscation @Datadog/serverless @Datadog/libdatadog-apm libdd-trace-protobuf @Datadog/serverless @Datadog/libdatadog-apm libdd-trace-stats @Datadog/apm-common-components-core libdd-trace-utils @Datadog/serverless @Datadog/libdatadog-apm +libdd-tracer-flare @Datadog/libdatadog-apm LICENSE* @Datadog/libdatadog local-linux.Dockerfile @Datadog/libdatadog NOTICE @Datadog/libdatadog diff --git a/Cargo.lock b/Cargo.lock index ea20e4c7ce..8409eb4c05 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1452,22 +1452,6 @@ dependencies = [ "syn 2.0.110", ] -[[package]] -name = "datadog-tracer-flare" -version = "24.0.1" -dependencies = [ - "anyhow", - "datadog-remote-config", - "hyper", - "libdd-common", - "libdd-trace-utils", - "serde_json", - "tempfile", - "tokio", - "walkdir", - "zip", -] - [[package]] name = "debugid" version = "0.8.0" @@ -3052,6 +3036,22 @@ dependencies = [ "zstd", ] +[[package]] +name = "libdd-tracer-flare" +version = "1.0.0" +dependencies = [ + "anyhow", + "datadog-remote-config", + "hyper", + "libdd-common", + "libdd-trace-utils", + "serde_json", + "tempfile", + "tokio", + "walkdir", + "zip", +] + [[package]] name = "libloading" version = "0.8.9" diff --git a/Cargo.toml b/Cargo.toml index b26c0a9de4..5d3c2a56ed 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,7 +28,7 @@ members = [ "libdd-trace-protobuf", "libdd-trace-utils", "libdd-trace-stats", - "datadog-tracer-flare", + "libdd-tracer-flare", "libdd-common", "libdd-common-ffi", "libdd-telemetry", diff --git a/LICENSE-3rdparty.yml b/LICENSE-3rdparty.yml index 98471bbefa..ce8f0c005e 100644 --- a/LICENSE-3rdparty.yml +++ b/LICENSE-3rdparty.yml @@ -1,4 +1,4 @@ -root_name: builder, build_common, tools, libdd-alloc, libdd-crashtracker, libdd-common, libdd-telemetry, libdd-ddsketch, libdd-crashtracker-ffi, libdd-common-ffi, datadog-ffe, datadog-ffe-ffi, datadog-ipc, datadog-ipc-macros, libdd-tinybytes, tarpc, tarpc-plugins, spawn_worker, cc_utils, libdd-library-config, libdd-library-config-ffi, datadog-live-debugger, libdd-data-pipeline, libdd-dogstatsd-client, libdd-trace-protobuf, libdd-trace-stats, libdd-trace-utils, libdd-trace-normalization, libdd-log, datadog-live-debugger-ffi, libdd-profiling, libdd-profiling-protobuf, libdd-profiling-ffi, libdd-data-pipeline-ffi, libdd-ddsketch-ffi, libdd-log-ffi, libdd-telemetry-ffi, symbolizer-ffi, datadog-profiling-replayer, datadog-remote-config, datadog-sidecar, datadog-sidecar-macros, datadog-sidecar-ffi, libdd-trace-obfuscation, datadog-tracer-flare, sidecar_mockgen, test_spawn_from_lib +root_name: builder, build_common, tools, libdd-alloc, libdd-crashtracker, libdd-common, libdd-telemetry, libdd-ddsketch, libdd-crashtracker-ffi, libdd-common-ffi, datadog-ffe, datadog-ffe-ffi, datadog-ipc, datadog-ipc-macros, libdd-tinybytes, tarpc, tarpc-plugins, spawn_worker, cc_utils, libdd-library-config, libdd-library-config-ffi, datadog-live-debugger, libdd-data-pipeline, libdd-dogstatsd-client, libdd-trace-protobuf, libdd-trace-stats, libdd-trace-utils, libdd-trace-normalization, libdd-log, datadog-live-debugger-ffi, libdd-profiling, libdd-profiling-protobuf, libdd-profiling-ffi, libdd-data-pipeline-ffi, libdd-ddsketch-ffi, libdd-log-ffi, libdd-telemetry-ffi, symbolizer-ffi, datadog-profiling-replayer, datadog-remote-config, datadog-sidecar, datadog-sidecar-macros, datadog-sidecar-ffi, libdd-trace-obfuscation, libdd-tracer-flare, sidecar_mockgen, test_spawn_from_lib third_party_libraries: - package_name: addr2line package_version: 0.24.2 @@ -27494,9 +27494,9 @@ third_party_libraries: - package_name: stringmetrics package_version: 2.2.2 repository: https://github.com/pluots/stringmetrics - license: License specified in file ($CARGO_HOME/registry/src/index.crates.io-1949cf8c6b5b557f/stringmetrics-2.2.2/LICENSE) + license: License specified in file ($CARGO_HOME/registry/src/index.crates.io-6f17d22bba15001f/stringmetrics-2.2.2/LICENSE) licenses: - - license: License specified in file ($CARGO_HOME/registry/src/index.crates.io-1949cf8c6b5b557f/stringmetrics-2.2.2/LICENSE) + - license: License specified in file ($CARGO_HOME/registry/src/index.crates.io-6f17d22bba15001f/stringmetrics-2.2.2/LICENSE) text: | Copyright 2022 Trevor Gross diff --git a/datadog-tracer-flare/Cargo.toml b/libdd-tracer-flare/Cargo.toml similarity index 54% rename from datadog-tracer-flare/Cargo.toml rename to libdd-tracer-flare/Cargo.toml index e8b395a512..34084ed733 100644 --- a/datadog-tracer-flare/Cargo.toml +++ b/libdd-tracer-flare/Cargo.toml @@ -1,17 +1,21 @@ [package] -name = "datadog-tracer-flare" +name = "libdd-tracer-flare" +version = "1.0.0" +description = "Rust library for collecting and transmitting Datadog tracer diagnostic flares via remote configuration." rust-version.workspace = true edition.workspace = true license.workspace = true -version.workspace = true autobenches = false publish = false +authors.workspace = true +homepage = "https://github.com/DataDog/libdatadog/tree/main/libdd-tracer-flare" +repository = "https://github.com/DataDog/libdatadog/tree/main/libdd-tracer-flare" [dependencies] anyhow = "1.0" -libdd-common = { path = "../libdd-common" } datadog-remote-config = { path = "../datadog-remote-config", default-features = false } -libdd-trace-utils = { path = "../libdd-trace-utils" } +libdd-common = { version = "1.0.0", path = "../libdd-common" } +libdd-trace-utils = { version = "1.0.0", path = "../libdd-trace-utils" } hyper = { workspace = true} tokio = { version = "1.36.0", features = ["time"] } serde_json = "1.0" diff --git a/libdd-tracer-flare/README.md b/libdd-tracer-flare/README.md new file mode 100644 index 0000000000..236be8658e --- /dev/null +++ b/libdd-tracer-flare/README.md @@ -0,0 +1,15 @@ +# libdd-tracer-flare + +Rust library for collecting and transmitting Datadog tracer diagnostic flares via remote configuration. + +## Overview + +This library collects diagnostic information from Datadog tracers, packages it into a zip archive, and sends it to the Datadog agent. It optionally supports remote configuration to automatically trigger flare collection and control log levels. + +## Features + +- `listener` (default) - Enables remote configuration support + +## License + +Apache-2.0 diff --git a/datadog-tracer-flare/src/error.rs b/libdd-tracer-flare/src/error.rs similarity index 100% rename from datadog-tracer-flare/src/error.rs rename to libdd-tracer-flare/src/error.rs diff --git a/datadog-tracer-flare/src/lib.rs b/libdd-tracer-flare/src/lib.rs similarity index 99% rename from datadog-tracer-flare/src/lib.rs rename to libdd-tracer-flare/src/lib.rs index f1c34cd513..88ff40d653 100644 --- a/datadog-tracer-flare/src/lib.rs +++ b/libdd-tracer-flare/src/lib.rs @@ -421,7 +421,7 @@ impl TryFrom<&RemoteConfigData> for ReturnAction { /// Implementing and using the tracer flare to fetch RemoteConfig from the agent /// /// ```rust no_run -/// use datadog_tracer_flare::{TracerFlareManager, run_remote_config_listener}; +/// use libdd_tracer_flare::{TracerFlareManager, run_remote_config_listener}; /// use std::time::Duration; /// use tokio::time::sleep; /// diff --git a/datadog-tracer-flare/src/zip.rs b/libdd-tracer-flare/src/zip.rs similarity index 99% rename from datadog-tracer-flare/src/zip.rs rename to libdd-tracer-flare/src/zip.rs index 03a1dbc9c0..ee4f944f90 100644 --- a/datadog-tracer-flare/src/zip.rs +++ b/libdd-tracer-flare/src/zip.rs @@ -231,7 +231,7 @@ impl TracerFlareManager { /// # Examples /// /// ```rust no_run - /// use datadog_tracer_flare::{TracerFlareManager, ReturnAction}; + /// use libdd_tracer_flare::{TracerFlareManager, ReturnAction}; /// use datadog_remote_config::config::agent_task::{AgentTaskFile, AgentTask}; /// use std::num::NonZeroU64; /// diff --git a/tools/docker/Dockerfile.build b/tools/docker/Dockerfile.build index e0246a59c5..3903934b33 100644 --- a/tools/docker/Dockerfile.build +++ b/tools/docker/Dockerfile.build @@ -99,7 +99,7 @@ COPY "libdd-trace-obfuscation/Cargo.toml" "libdd-trace-obfuscation/" COPY "libdd-trace-protobuf/Cargo.toml" "libdd-trace-protobuf/" COPY "libdd-trace-utils/Cargo.toml" "libdd-trace-utils/" COPY "libdd-trace-stats/Cargo.toml" "libdd-trace-stats/" -COPY "datadog-tracer-flare/Cargo.toml" "datadog-tracer-flare/" +COPY "libdd-tracer-flare/Cargo.toml" "libdd-tracer-flare/" COPY "tools/Cargo.toml" "tools/" COPY "tools/cc_utils/Cargo.toml" "tools/cc_utils/" COPY "tools/sidecar_mockgen/Cargo.toml" "tools/sidecar_mockgen/"