Add ssh initialization events (#18831)

Release Notes:

- N/A
This commit is contained in:
Joseph T. Lyons 2024-10-07 16:17:43 -04:00 committed by GitHub
parent 5387a6f7f9
commit a15b10986a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 27 additions and 4 deletions

View file

@ -485,7 +485,7 @@ impl Telemetry {
worktree_id: WorktreeId, worktree_id: WorktreeId,
updated_entries_set: &UpdatedEntriesSet, updated_entries_set: &UpdatedEntriesSet,
) { ) {
let project_names: Vec<String> = { let project_type_names: Vec<String> = {
let mut state = self.state.lock(); let mut state = self.state.lock();
state state
.worktree_id_map .worktree_id_map
@ -521,8 +521,8 @@ impl Telemetry {
}; };
// Done on purpose to avoid calling `self.state.lock()` multiple times // Done on purpose to avoid calling `self.state.lock()` multiple times
for project_name in project_names { for project_type_name in project_type_names {
self.report_app_event(format!("open {} project", project_name)); self.report_app_event(format!("open {} project", project_type_name));
} }
} }

View file

@ -279,6 +279,13 @@ impl DevServerProjects {
match connection.await { match connection.await {
Some(_) => this Some(_) => this
.update(&mut cx, |this, cx| { .update(&mut cx, |this, cx| {
let _ = this.workspace.update(cx, |workspace, _| {
workspace
.client()
.telemetry()
.report_app_event("create ssh server".to_string())
});
this.add_ssh_server(connection_options, cx); this.add_ssh_server(connection_options, cx);
this.mode = Mode::Default(None); this.mode = Mode::Default(None);
cx.notify() cx.notify()
@ -422,7 +429,15 @@ impl DevServerProjects {
); );
cx.new_view(|cx| { cx.new_view(|cx| {
Workspace::new(None, project.clone(), app_state.clone(), cx) let workspace =
Workspace::new(None, project.clone(), app_state.clone(), cx);
workspace
.client()
.telemetry()
.report_app_event("create ssh project".to_string());
workspace
}) })
}) })
.log_err(); .log_err();

View file

@ -5575,6 +5575,12 @@ pub fn open_ssh_project(
cx.replace_root_view(|cx| { cx.replace_root_view(|cx| {
let mut workspace = let mut workspace =
Workspace::new(Some(workspace_id), project, app_state.clone(), cx); Workspace::new(Some(workspace_id), project, app_state.clone(), cx);
workspace
.client()
.telemetry()
.report_app_event("open ssh project".to_string());
workspace.set_serialized_ssh_project(serialized_ssh_project); workspace.set_serialized_ssh_project(serialized_ssh_project);
workspace workspace
}); });

View file

@ -528,6 +528,8 @@ fn main() {
session_id, session_id,
cx, cx,
); );
// We should rename these in the future to `first app open`, `first app open for release channel`, and `app open`
if let (Some(system_id), Some(installation_id)) = (&system_id, &installation_id) { if let (Some(system_id), Some(installation_id)) = (&system_id, &installation_id) {
match (&system_id, &installation_id) { match (&system_id, &installation_id) {
(IdType::New(_), IdType::New(_)) => { (IdType::New(_), IdType::New(_)) => {