deepgram: added request IDs to debug logs

Deepgram request IDs are necessary for investigating behavior at the
request level. This commit adds DEBUG logs that print Deepgram request
IDs when using Deepgram's STT or TTS.
This commit is contained in:
Jason Maldonis
2025-11-17 12:22:52 -06:00
parent 7c497bdc89
commit 7db49b9067
3 changed files with 24 additions and 0 deletions

View File

@@ -244,6 +244,12 @@ class DeepgramFluxSTTService(WebsocketSTTService):
additional_headers={"Authorization": f"Token {self._api_key}"}, additional_headers={"Authorization": f"Token {self._api_key}"},
) )
headers = {
k: v for k, v in self._websocket.response.headers.items()
if k.startswith("dg-")
}
logger.debug(f'{self}: Websocket connection initialized: {{"headers": {headers}}}')
# Creating the receiver task # Creating the receiver task
if not self._receive_task: if not self._receive_task:
self._receive_task = self.create_task( self._receive_task = self.create_task(

View File

@@ -234,6 +234,12 @@ class DeepgramSTTService(STTService):
if not await self._connection.start(options=self._settings, addons=self._addons): if not await self._connection.start(options=self._settings, addons=self._addons):
await self.push_error(error_msg=f"Unable to connect to Deepgram") await self.push_error(error_msg=f"Unable to connect to Deepgram")
else:
headers = {
k: v for k, v in self._connection._socket.response.headers.items()
if k.startswith("dg-")
}
logger.debug(f'{self}: Websocket connection initialized: {{"headers": {headers}}}')
async def _disconnect(self): async def _disconnect(self):
if await self._connection.is_connected(): if await self._connection.is_connected():

View File

@@ -280,6 +280,18 @@ class DeepgramTTSService(WebsocketTTSService):
await self._connect() await self._connect()
await self.start_ttfb_metrics() await self.start_ttfb_metrics()
response = await self._deepgram_client.speak.asyncrest.v("1").stream_raw(
{"text": text}, options
)
headers = {
k: v
for k, v in response.headers.items()
if k.startswith("dg-")
}
logger.debug(f'{self}: HTTP connection initialized: {{"headers": {headers}}}')
await self.start_tts_usage_metrics(text) await self.start_tts_usage_metrics(text)
yield TTSStartedFrame() yield TTSStartedFrame()