Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Long running task with streaming gets terminated with "WARNING:asyncio:socket.send() raised exception." #88

Open
@playrth

Description

I'm trying to execute some long running task, but every time when it reaches 6 min or 8 min duration it automatically cuts of connection and shows "WARNING:asyncio:socket.send() raised exception." in logs. I tried in locally its working fine, but on deployed version this is happening, I'm using "app.add_async_task()" as well as "app.complete_async_task()", they are getting triggered and its showing in logs, but in between after 6 min or 8 min it starts showing that error. My code looks something like this:

import os
import asyncio
from datetime import datetime
from strands import Agent, tool
from strands.models import OpenAIModel
from bedrock_agentcore import BedrockAgentCoreApp
@tool
async def background_task(minutes: int = 15) -> str:
 for i in range(minutes):
 await asyncio.sleep(60)
 return f"Background task completed in ~{minutes} minutes."
model = OpenAIModel(
 client_args={"api_key": os.getenv("OPENAI_API_KEY")},
 model_id="gpt-5-mini",
 reasoning={"effort": "medium"},
 text={"verbosity": "low"},
)
agent = Agent(
 model=model,
 tools=[background_task],
 instructions="Call the `background_task` tool for 15 minutes to simulate a long job."
)
app = BedrockAgentCoreApp()
@app.entrypoint
async def agent_invocation(payload):
 task_id = None
 user_message = payload.get("prompt", "No prompt found in input")
 user_message += "\n\nUse background_task for 15 minutes."
 stream = agent.stream_async(user_message)
 task_id = app.add_async_task("Agent_stream")
 try:
 async for event in stream:
 print(event)
 yield event
 finally:
 if task_id:
 app.complete_async_task(task_id)
if __name__ == "__main__":
 app.run()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /