diff --git a/CHANGELOG.md b/CHANGELOG.md index f8e11ef0e..fe8ce3896 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +## [0.22.0-rc1] +### Fixed +- Target observer was not exposed through CLI. + ## [0.22.0-rc0] ### Added - Target observer now allows a docker target, identified by name. diff --git a/Cargo.lock b/Cargo.lock index 5ed040863..29ba0a8cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1387,7 +1387,7 @@ dependencies = [ [[package]] name = "lading" -version = "0.22.0-rc0" +version = "0.22.0-rc1" dependencies = [ "async-pidfd", "average", diff --git a/lading/Cargo.toml b/lading/Cargo.toml index 88e6445ba..5ecdda839 100644 --- a/lading/Cargo.toml +++ b/lading/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lading" -version = "0.22.0-rc0" +version = "0.22.0-rc1" authors = [ "Brian L. Troutwine ", "George Hahn ", diff --git a/lading/src/bin/lading.rs b/lading/src/bin/lading.rs index 147eb08e8..b9729e321 100644 --- a/lading/src/bin/lading.rs +++ b/lading/src/bin/lading.rs @@ -131,7 +131,7 @@ impl FromStr for CliKeyValues { #[clap(group( ArgGroup::new("target") .required(true) - .args(&["target-path", "target-pid", "no-target"]), + .args(&["target-path", "target-pid", "target-container", "no-target"]), ))] #[clap(group( ArgGroup::new("telemetry") @@ -153,6 +153,9 @@ struct Opts { /// measure an externally-launched process by PID #[clap(long)] target_pid: Option, + /// measure an externally-launched container by name + #[clap(long)] + target_container: Option, /// disable target measurement #[clap(long)] no_target: bool, @@ -264,6 +267,10 @@ fn get_config(ops: &Opts, config: Option) -> Result { None } else if let Some(pid) = ops.target_pid { Some(target::Config::Pid(target::PidConfig { pid })) + } else if let Some(name) = &ops.target_container { + Some(target::Config::Docker(target::DockerConfig { + name: name.clone(), + })) } else if let Some(path) = &ops.target_path { Some(target::Config::Binary(target::BinaryConfig { command: path.clone(),