[Lldb-commits] [lldb] [LLDB][Telemetry]Define telemetry::CommandInfo (PR #129354)
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Thu Mar 6 13:10:48 PST 2025
================
@@ -66,6 +80,52 @@ struct LLDBBaseTelemetryInfo : public llvm::telemetry::TelemetryInfo {
void serialize(llvm::telemetry::Serializer &serializer) const override;
};
+struct CommandInfo : public LLDBBaseTelemetryInfo {
+ /// If the command is/can be associated with a target entry this field
+ /// contains that target's UUID. <EMPTY> otherwise.
+ UUID target_uuid;
+ /// A unique ID for a command so the manager can match the start entry with
+ /// its end entry. These values only need to be unique within the same
+ /// session. Necessary because we'd send off an entry right before a command's
+ /// execution and another right after. This is to avoid losing telemetry if
+ /// the command does not execute successfully.
+ uint64_t command_id;
+ /// The command name(eg., "breakpoint set")
+ std::string command_name;
+ /// These two fields are not collected by default due to PII risks.
+ /// Vendor may allow them by setting the
+ /// LLDBConfig::detailed_command_telemetry.
+ /// @{
+ std::string original_command;
+ std::string args;
----------------
JDevlieghere wrote:
Would it be worth wrapping these in `std::optional` to make it more obvious that these fields are optional?
(I thought I left this comment in an earlier comment, but I can't find it so maybe I forgot to submit it)
https://github.com/llvm/llvm-project/pull/129354
More information about the lldb-commits
mailing list