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

View file

@ -279,6 +279,13 @@ impl DevServerProjects {
match connection.await {
Some(_) => this
.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.mode = Mode::Default(None);
cx.notify()
@ -422,7 +429,15 @@ impl DevServerProjects {
);
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();

View file

@ -5575,6 +5575,12 @@ pub fn open_ssh_project(
cx.replace_root_view(|cx| {
let mut workspace =
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
});

View file

@ -528,6 +528,8 @@ fn main() {
session_id,
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) {
match (&system_id, &installation_id) {
(IdType::New(_), IdType::New(_)) => {