mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-10 00:28:31 +00:00
Add event handling for tool usage events
- Introduce event listeners for ToolUsageFinishedEvent and ToolUsageErrorEvent - Log tool usage events with descriptive emoji icons (✅ and ❌) - Update event_listener to track and log tool usage lifecycle
This commit is contained in:
@@ -3,6 +3,7 @@ from pydantic import PrivateAttr
|
|||||||
from crewai.telemetry.telemetry import Telemetry
|
from crewai.telemetry.telemetry import Telemetry
|
||||||
from crewai.utilities import Logger
|
from crewai.utilities import Logger
|
||||||
from crewai.utilities.events.base_event_listener import BaseEventListener
|
from crewai.utilities.events.base_event_listener import BaseEventListener
|
||||||
|
from .tool_usage_events import ToolUsageErrorEvent, ToolUsageFinishedEvent
|
||||||
|
|
||||||
from .agent_events import AgentExecutionCompletedEvent, AgentExecutionStartedEvent
|
from .agent_events import AgentExecutionCompletedEvent, AgentExecutionStartedEvent
|
||||||
from .crew_events import (
|
from .crew_events import (
|
||||||
@@ -14,7 +15,7 @@ from .crew_events import (
|
|||||||
CrewTestStartedEvent,
|
CrewTestStartedEvent,
|
||||||
CrewTrainCompletedEvent,
|
CrewTrainCompletedEvent,
|
||||||
CrewTrainFailedEvent,
|
CrewTrainFailedEvent,
|
||||||
CrewTrainStartedEvent,
|
CrewTrainStartedEvent
|
||||||
)
|
)
|
||||||
from .flow_events import (
|
from .flow_events import (
|
||||||
FlowCreatedEvent,
|
FlowCreatedEvent,
|
||||||
@@ -228,6 +229,23 @@ class EventListener(BaseEventListener):
|
|||||||
event.timestamp,
|
event.timestamp,
|
||||||
color=self.color,
|
color=self.color,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Tool Usage Events
|
||||||
|
@event_bus.on(ToolUsageFinishedEvent)
|
||||||
|
def on_tool_usage_finished(source, event: ToolUsageFinishedEvent):
|
||||||
|
self.logger.log(
|
||||||
|
f"✅ Tool Usage Finished: '{event.tool_name}'",
|
||||||
|
event.timestamp,
|
||||||
|
color=self.color,
|
||||||
|
)
|
||||||
|
|
||||||
|
@event_bus.on(ToolUsageErrorEvent)
|
||||||
|
def on_tool_usage_error(source, event: ToolUsageErrorEvent):
|
||||||
|
self.logger.log(
|
||||||
|
f"❌ Tool Usage Error: '{event.tool_name}'",
|
||||||
|
event.timestamp,
|
||||||
|
color=self.color,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
event_listener = EventListener()
|
event_listener = EventListener()
|
||||||
|
|||||||
Reference in New Issue
Block a user