[Lldb-commits] [lldb] [LLDB][Telemetry]Define DebuggerTelemetryInfo and related methods (PR #127696)
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Thu Feb 27 09:04:22 PST 2025
================
@@ -761,12 +764,27 @@ void Debugger::InstanceInitialize() {
DebuggerSP Debugger::CreateInstance(lldb::LogOutputCallback log_callback,
void *baton) {
+ lldb_private::telemetry::ScopeTelemetryCollector helper;
DebuggerSP debugger_sp(new Debugger(log_callback, baton));
+
+ if (helper.TelemetryEnabled()) {
+ helper.RunAtScopeExit([&]() {
+ lldb_private::telemetry::TelemetryManager *manager =
+ lldb_private::telemetry::TelemetryManager::GetInstance();
+ lldb_private::telemetry::DebuggerInfo entry;
+ entry.debugger = debugger_sp.get();
+ entry.start_time = helper.GetStartTime();
+ entry.end_time = helper.GetCurrentTime();
+ manager->AtDebuggerStartup(&entry);
----------------
JDevlieghere wrote:
Pavel's suggestion is to fill in the common fields, i.e. the ones in `LLDBBaseTelemetryInfo`. I expressed my dislike for the `AtDebuggerStartup` and friends in another PR, and if the distinction is important, I'd argue that they should be different events. With that, you could do this: https://godbolt.org/z/eazvPWs46
https://github.com/llvm/llvm-project/pull/127696
More information about the lldb-commits
mailing list