Skip to content

Commit 0ee3fb4

Browse files
authored
Merge pull request #705 from Pythagora-io/fix-stats
fix gathering and printing stats
2 parents 13eba24 + 9d1bfae commit 0ee3fb4

File tree

3 files changed

+5
-46
lines changed

3 files changed

+5
-46
lines changed

pilot/helpers/AgentConvo.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ def send_message(self, prompt_path=None, prompt_data=None, function_calls: Funct
104104
self.log_message(message_content)
105105

106106
if self.agent.project.check_ipc():
107-
telemetry.send_project_stats()
107+
telemetry.output_project_stats()
108108
return response
109109

110110
def format_message_content(self, response, function_calls):

pilot/test/utils/test_telemetry.py

+1-25
Original file line numberDiff line numberDiff line change
@@ -123,15 +123,7 @@ def test_telemetry_setup_enable(mock_uuid4, mock_settings):
123123

124124

125125
@patch("utils.telemetry.settings")
126-
def test_set_ignores_data_if_disabled(mock_settings):
127-
mock_settings.telemetry = {"id": "existing-id", "enabled": False}
128-
telemetry = Telemetry()
129-
telemetry.set("model", "fake-model")
130-
assert telemetry.data.get("model") != "fake-model"
131-
132-
133-
@patch("utils.telemetry.settings")
134-
def test_set_updates_data_if_enabled(mock_settings):
126+
def test_set_updates_data(mock_settings):
135127
mock_settings.telemetry = {
136128
"id": "test-id",
137129
"endpoint": "test-endpoint",
@@ -166,14 +158,6 @@ def test_inc_increments_known_data_field(mock_settings):
166158
assert telemetry.data["num_llm_requests"] == 42
167159

168160

169-
@patch("utils.telemetry.settings")
170-
def test_inc_does_not_increment_when_disabled(mock_settings):
171-
mock_settings.telemetry = {"id": "existing-id", "enabled": False}
172-
telemetry = Telemetry()
173-
telemetry.inc("num_llm_requests", 42)
174-
assert telemetry.data["num_llm_requests"] == 0
175-
176-
177161
@patch("utils.telemetry.settings")
178162
def test_inc_ignores_unknown_data_field(mock_settings):
179163
mock_settings.telemetry = {
@@ -186,14 +170,6 @@ def test_inc_ignores_unknown_data_field(mock_settings):
186170
assert "unknown_field" not in telemetry.data
187171

188172

189-
@patch("utils.telemetry.settings")
190-
def test_start_with_telemetry_disabled(mock_settings):
191-
mock_settings.telemetry = {"id": "existing-id", "enabled": False}
192-
telemetry = Telemetry()
193-
telemetry.start()
194-
assert telemetry.start_time is None
195-
196-
197173
@patch("utils.telemetry.time")
198174
@patch("utils.telemetry.settings")
199175
def test_start_with_telemetry_enabled(mock_settings, mock_time):

pilot/utils/telemetry.py

+3-20
Original file line numberDiff line numberDiff line change
@@ -184,9 +184,6 @@ def set(self, name: str, value: Any):
184184
185185
Note: only known data fields may be set, see `Telemetry.clear_data()` for a list.
186186
"""
187-
if not self.enabled:
188-
return
189-
190187
if name not in self.data:
191188
log.error(
192189
f"Telemetry.record(): ignoring unknown telemetry data field: {name}"
@@ -204,9 +201,6 @@ def inc(self, name: str, value: int = 1):
204201
205202
Note: only known data fields may be increased, see `Telemetry.clear_data()` for a list.
206203
"""
207-
if not self.enabled:
208-
return
209-
210204
if name not in self.data:
211205
log.error(
212206
f"Telemetry.increase(): ignoring unknown telemetry data field: {name}"
@@ -219,19 +213,13 @@ def start(self):
219213
"""
220214
Record start of application creation process.
221215
"""
222-
if not self.enabled:
223-
return
224-
225216
self.start_time = time.time()
226217
self.end_time = None
227218

228219
def stop(self):
229220
"""
230221
Record end of application creation process.
231222
"""
232-
if not self.enabled:
233-
return
234-
235223
if self.start_time is None:
236224
log.error("Telemetry.stop(): cannot stop telemetry, it was never started")
237225
return
@@ -302,9 +290,6 @@ def record_llm_request(
302290
:param elapsed_time: time elapsed for the request
303291
:param is_error: whether the request resulted in an error
304292
"""
305-
if not self.enabled:
306-
return
307-
308293
self.inc("num_llm_requests")
309294

310295
if is_error:
@@ -377,14 +362,12 @@ def send(self, event:str = "pilot-telemetry"):
377362
f"Telemetry.send(): failed to send telemetry data: {e}", exc_info=True
378363
)
379364

380-
def send_project_stats(self):
365+
def output_project_stats(self):
381366
"""
382-
Send project statistics to the extension.
367+
Output project statistics to the extension.
383368
384-
Note: this method does not clear any telemetry data.
369+
This does not send the stats to any server.
385370
"""
386-
if not self.enabled:
387-
return
388371

389372
print({
390373
"num_lines": self.data["num_lines"],

0 commit comments

Comments
 (0)