@@ -244,56 +244,72 @@ def export_initial_telemetry_log(self, driver_connection_params, user_agent):
244244 "Exporting initial telemetry log for connection %s", self._connection_uuid
245245 )
246246
247- self._driver_connection_params = driver_connection_params
248- self._user_agent = user_agent
249-
250- telemetry_frontend_log = TelemetryFrontendLog(
251- frontend_log_event_id=str(uuid.uuid4()),
252- context=FrontendLogContext(
253- client_context=TelemetryClientContext(
254- timestamp_millis=int(time.time() * 1000),
255- user_agent=self._user_agent,
256- )
257- ),
258- entry=FrontendLogEntry(
259- sql_driver_log=TelemetryEvent(
260- session_id=self._connection_uuid,
261- system_configuration=TelemetryHelper.getDriverSystemConfiguration(),
262- driver_connection_params=self._driver_connection_params,
263- )
264- ),
265- )
247+ try:
248+ self._driver_connection_params = driver_connection_params
249+ self._user_agent = user_agent
250+
251+ telemetry_frontend_log = TelemetryFrontendLog(
252+ frontend_log_event_id=str(uuid.uuid4()),
253+ context=FrontendLogContext(
254+ client_context=TelemetryClientContext(
255+ timestamp_millis=int(time.time() * 1000),
256+ user_agent=self._user_agent,
257+ )
258+ ),
259+ entry=FrontendLogEntry(
260+ sql_driver_log=TelemetryEvent(
261+ session_id=self._connection_uuid,
262+ system_configuration=TelemetryHelper.getDriverSystemConfiguration(),
263+ driver_connection_params=self._driver_connection_params,
264+ )
265+ ),
266+ )
266267
267- self.export_event(telemetry_frontend_log)
268+ self.export_event(telemetry_frontend_log)
269+ except Exception as e:
270+ logger.debug("Failed to export initial telemetry log: %s", e)
268271
269272 def export_failure_log(self, error_name, error_message):
270273 logger.debug("Exporting failure log for connection %s", self._connection_uuid)
271- error_info = DriverErrorInfo(error_name=error_name, stack_trace=error_message)
272- telemetry_frontend_log = TelemetryFrontendLog(
273- frontend_log_event_id=str(uuid.uuid4()),
274- context=FrontendLogContext(
275- client_context=TelemetryClientContext(
276- timestamp_millis=int(time.time() * 1000),
277- user_agent=self._user_agent,
278- )
279- ),
280- entry=FrontendLogEntry(
281- sql_driver_log=TelemetryEvent(
282- session_id=self._connection_uuid,
283- system_configuration=TelemetryHelper.getDriverSystemConfiguration(),
284- driver_connection_params=self._driver_connection_params,
285- error_info=error_info,
286- )
287- ),
288- )
289- self.export_event(telemetry_frontend_log)
274+ try:
275+ error_info = DriverErrorInfo(
276+ error_name=error_name, stack_trace=error_message
277+ )
278+ telemetry_frontend_log = TelemetryFrontendLog(
279+ frontend_log_event_id=str(uuid.uuid4()),
280+ context=FrontendLogContext(
281+ client_context=TelemetryClientContext(
282+ timestamp_millis=int(time.time() * 1000),
283+ user_agent=self._user_agent,
284+ )
285+ ),
286+ entry=FrontendLogEntry(
287+ sql_driver_log=TelemetryEvent(
288+ session_id=self._connection_uuid,
289+ system_configuration=TelemetryHelper.getDriverSystemConfiguration(),
290+ driver_connection_params=self._driver_connection_params,
291+ error_info=error_info,
292+ )
293+ ),
294+ )
295+ self.export_event(telemetry_frontend_log)
296+ except Exception as e:
297+ logger.debug("Failed to export failure log: %s", e)
290298
291299 def close(self):
292300 """Flush remaining events before closing"""
293301 logger.debug("Closing TelemetryClient for connection %s", self._connection_uuid)
294- self.flush()
302+ try:
303+ self.flush()
304+ except Exception as e:
305+ logger.debug("Failed to flush telemetry during close: %s", e)
295306
296- TelemetryClientFactory.close(self._connection_uuid)
307+ try:
308+ TelemetryClientFactory.close(self._connection_uuid)
309+ except Exception as e:
310+ logger.debug(
311+ "Failed to remove telemetry client from telemetry clientfactory: %s", e
312+ )
297313
298314
299315class TelemetryClientFactory:
0 commit comments