|
1 | 1 | // credit @filleduchaos |
2 | 2 |
|
3 | 3 | use crate::{ |
4 | | - UploadProgress, VideoUploadInfo, |
| 4 | + PostHogEvent, UploadProgress, VideoUploadInfo, |
5 | 5 | api::{self, PresignedS3PutRequest, PresignedS3PutRequestMethod, S3VideoMeta, UploadedPart}, |
6 | 6 | async_capture_event, |
7 | 7 | general_settings::GeneralSettingsStore, |
@@ -151,20 +151,13 @@ pub async fn upload_video( |
151 | 151 | tokio::join!(video_fut, thumbnail_fut); |
152 | 152 |
|
153 | 153 | async_capture_event(match &video_result { |
154 | | - Ok(()) => { |
155 | | - let mut e = posthog_rs::Event::new_anon("multipart_upload_complete"); |
156 | | - e.insert_prop("took", start.elapsed().as_millis()) |
157 | | - .map_err(|err| error!("Error adding PostHog property: {err:?}")) |
158 | | - .ok(); |
159 | | - e |
160 | | - } |
161 | | - Err(err) => { |
162 | | - let mut e = posthog_rs::Event::new_anon("multipart_upload_failed"); |
163 | | - e.insert_prop("error", err.to_string()) |
164 | | - .map_err(|err| error!("Error adding PostHog property: {err:?}")) |
165 | | - .ok(); |
166 | | - e |
167 | | - } |
| 154 | + Ok(()) => PostHogEvent::MultpartUploadComplete { |
| 155 | + duration: start.elapsed(), |
| 156 | + }, |
| 157 | + Err(err) => PostHogEvent::MultpartUploadFailed { |
| 158 | + duration: start.elapsed(), |
| 159 | + error: err.to_string(), |
| 160 | + }, |
168 | 161 | }); |
169 | 162 |
|
170 | 163 | let _ = (video_result?, thumbnail_result?); |
@@ -210,7 +203,6 @@ pub async fn upload_image( |
210 | 203 | .map_err(Into::into); |
211 | 204 | } |
212 | 205 |
|
213 | | - let start = Instant::now(); |
214 | 206 | let file_name = file_path |
215 | 207 | .file_name() |
216 | 208 | .and_then(|name| name.to_str()) |
@@ -382,20 +374,13 @@ impl InstantMultipartUpload { |
382 | 374 | ) |
383 | 375 | .await; |
384 | 376 | async_capture_event(match &result { |
385 | | - Ok(()) => { |
386 | | - let mut e = posthog_rs::Event::new_anon("multipart_upload_complete"); |
387 | | - e.insert_prop("took", start.elapsed().as_millis()) |
388 | | - .map_err(|err| error!("Error adding PostHog property: {err:?}")) |
389 | | - .ok(); |
390 | | - e |
391 | | - } |
392 | | - Err(err) => { |
393 | | - let mut e = posthog_rs::Event::new_anon("multipart_upload_failed"); |
394 | | - e.insert_prop("error", err.to_string()) |
395 | | - .map_err(|err| error!("Error adding PostHog property: {err:?}")) |
396 | | - .ok(); |
397 | | - e |
398 | | - } |
| 377 | + Ok(()) => PostHogEvent::MultpartUploadComplete { |
| 378 | + duration: start.elapsed(), |
| 379 | + }, |
| 380 | + Err(err) => PostHogEvent::MultpartUploadFailed { |
| 381 | + duration: start.elapsed(), |
| 382 | + error: err.to_string(), |
| 383 | + }, |
399 | 384 | }); |
400 | 385 |
|
401 | 386 | result.map(|_| ()) |
|
0 commit comments