Skip to content

Commit d6611a4

Browse files
authored
fix: telemetry data field (#719)
1 parent 565e5f0 commit d6611a4

File tree

1 file changed

+25
-19
lines changed
  • crates/pop-telemetry/src

1 file changed

+25
-19
lines changed

crates/pop-telemetry/src/lib.rs

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -113,11 +113,26 @@ impl Telemetry {
113113

114114
let request_builder = self.client.post(&self.endpoint);
115115

116-
request_builder
116+
log::debug!("send_json payload: {:?}", payload);
117+
match request_builder
117118
.json(&payload)
118119
.send()
119120
.await
120-
.map_err(TelemetryError::NetworkError)?;
121+
.map_err(TelemetryError::NetworkError)
122+
{
123+
Ok(res) => match res.error_for_status() {
124+
Ok(res) => {
125+
let text = res.text().await.unwrap_or_default();
126+
log::debug!("send_json response: {}", text);
127+
},
128+
Err(e) => {
129+
log::debug!("send_json server error: {:?}", e);
130+
},
131+
},
132+
Err(e) => {
133+
log::debug!("send_json network error: {:?}", e);
134+
},
135+
}
121136

122137
Ok(())
123138
}
@@ -127,12 +142,8 @@ impl Telemetry {
127142
/// There is explicitly no reqwest retries on failure to ensure overhead
128143
/// stays to a minimum.
129144
pub async fn record_cli_used(tel: Telemetry) -> Result<()> {
130-
let payload = generate_payload("", "");
131-
132-
let res = tel.send_json(payload).await;
133-
log::debug!("send_cli_used result: {:?}", res);
134-
135-
res
145+
let payload = generate_payload("init", "");
146+
tel.send_json(payload).await
136147
}
137148

138149
/// Reports what CLI command was called to telemetry.
@@ -142,11 +153,7 @@ pub async fn record_cli_used(tel: Telemetry) -> Result<()> {
142153
/// `data`: additional data to record.
143154
pub async fn record_cli_command(tel: Telemetry, event: &str, data: &str) -> Result<()> {
144155
let payload = generate_payload(event, data);
145-
146-
let res = tel.send_json(payload).await;
147-
log::debug!("send_cli_used result: {:?}", res);
148-
149-
res
156+
tel.send_json(payload).await
150157
}
151158

152159
#[derive(PartialEq, Serialize, Deserialize, Debug)]
@@ -213,7 +220,9 @@ fn generate_payload(event: &str, data: &str) -> Value {
213220
"url": "/",
214221
"website": WEBSITE_ID,
215222
"name": event,
216-
"data": data
223+
"data": {
224+
"args": data
225+
}
217226
},
218227
"type": "event"
219228
})
@@ -329,7 +338,7 @@ mod tests {
329338
let temp_dir = TempDir::new().unwrap();
330339
let config_path = temp_dir.path().join("config.json");
331340

332-
let expected_payload = generate_payload("", "").to_string();
341+
let expected_payload = generate_payload("init", "").to_string();
333342

334343
let mock = default_mock(&mut mock_server, expected_payload).await;
335344

@@ -381,10 +390,7 @@ mod tests {
381390

382391
assert!(matches!(tel.send_json(Value::Null).await, Err(TelemetryError::OptedOut)));
383392
assert!(matches!(record_cli_used(tel.clone()).await, Err(TelemetryError::OptedOut)));
384-
assert!(matches!(
385-
record_cli_command(tel.clone(), "foo", "").await,
386-
Err(TelemetryError::OptedOut)
387-
));
393+
assert!(matches!(record_cli_command(tel, "foo", "").await, Err(TelemetryError::OptedOut)));
388394
mock.assert_async().await;
389395
}
390396
}

0 commit comments

Comments
 (0)