aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Reinier van der Leer <pwuts@agpt.co> 2023-12-14 02:37:20 +0100
committerGravatar Reinier van der Leer <pwuts@agpt.co> 2023-12-14 02:38:48 +0100
commitefb5fed46281bdd4da613ba511881e893ff593be (patch)
tree97965aa9f44d756287877ebffbbc989c0fc666e8
parenttest: Speed up test_gcs_file_workspace (diff)
downloadAuto-GPT-efb5fed46281bdd4da613ba511881e893ff593be.tar.gz
Auto-GPT-efb5fed46281bdd4da613ba511881e893ff593be.tar.bz2
Auto-GPT-efb5fed46281bdd4da613ba511881e893ff593be.zip
feat(agent/logging): Log warning when action raises error
- Add logging to capture errors raised during execution of actions in the Agent - Move `fmt_kwargs` function from `agent_protocol_server.py` to `logs/utils.py`
-rw-r--r--autogpts/autogpt/autogpt/agents/agent.py4
-rw-r--r--autogpts/autogpt/autogpt/app/agent_protocol_server.py5
-rw-r--r--autogpts/autogpt/autogpt/logs/utils.py4
3 files changed, 9 insertions, 4 deletions
diff --git a/autogpts/autogpt/autogpt/agents/agent.py b/autogpts/autogpt/autogpt/agents/agent.py
index 88e6a46ed..bcb4d1a79 100644
--- a/autogpts/autogpt/autogpt/agents/agent.py
+++ b/autogpts/autogpt/autogpt/agents/agent.py
@@ -26,6 +26,7 @@ from autogpt.logs.log_cycle import (
USER_INPUT_FILE_NAME,
LogCycleHandler,
)
+from autogpt.logs.utils import fmt_kwargs
from autogpt.models.action_history import (
Action,
ActionErrorResult,
@@ -254,6 +255,9 @@ class Agent(
raise
except AgentException as e:
result = ActionErrorResult.from_exception(e)
+ logger.warning(
+ f"{command_name}({fmt_kwargs(command_args)}) raised an error: {e}"
+ )
result_tlength = self.llm_provider.count_tokens(str(result), self.llm.name)
if result_tlength > self.send_token_limit // 3:
diff --git a/autogpts/autogpt/autogpt/app/agent_protocol_server.py b/autogpts/autogpt/autogpt/app/agent_protocol_server.py
index 1ee6f1efa..29ab004a2 100644
--- a/autogpts/autogpt/autogpt/app/agent_protocol_server.py
+++ b/autogpts/autogpt/autogpt/app/agent_protocol_server.py
@@ -39,6 +39,7 @@ from autogpt.file_workspace import (
FileWorkspaceBackendName,
get_workspace,
)
+from autogpt.logs.utils import fmt_kwargs
from autogpt.models.action_history import ActionErrorResult, ActionSuccessResult
logger = logging.getLogger(__name__)
@@ -428,7 +429,3 @@ class AgentProtocolServer:
def task_agent_id(task_id: str | int) -> str:
return f"AutoGPT-{task_id}"
-
-
-def fmt_kwargs(kwargs: dict) -> str:
- return ", ".join(f"{n}={repr(v)}" for n, v in kwargs.items())
diff --git a/autogpts/autogpt/autogpt/logs/utils.py b/autogpts/autogpt/autogpt/logs/utils.py
index 0b92e2967..d9f39af30 100644
--- a/autogpts/autogpt/autogpt/logs/utils.py
+++ b/autogpts/autogpt/autogpt/logs/utils.py
@@ -3,3 +3,7 @@ import re
def remove_color_codes(s: str) -> str:
return re.sub(r"\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])", "", s)
+
+
+def fmt_kwargs(kwargs: dict) -> str:
+ return ", ".join(f"{n}={repr(v)}" for n, v in kwargs.items())