mirror of
https://github.com/microsoft/onefuzz.git
synced 2025-06-20 05:23:44 +00:00
add node & task heartbeat events (#621)
This adds node & task heartbeats and makes the event data available as a structured data in the logs.
This commit is contained in:
@ -47,6 +47,8 @@ from onefuzztypes.events import (
|
||||
EventNodeStateUpdated,
|
||||
EventNodeCreated,
|
||||
EventNodeDeleted,
|
||||
EventNodeHeartbeat,
|
||||
EventTaskHeartbeat,
|
||||
get_event_type,
|
||||
EventType,
|
||||
)
|
||||
@ -194,6 +196,8 @@ def main():
|
||||
),
|
||||
),
|
||||
EventFileAdded(container=Container("container-name"), filename="example.txt"),
|
||||
EventNodeHeartbeat(machine_id=UUID(int=0), pool_name="example"),
|
||||
EventTaskHeartbeat(task_id=UUID(int=0), job_id=UUID(int=0), config=task_config),
|
||||
]
|
||||
|
||||
for event in Event.__args__:
|
||||
|
@ -63,6 +63,12 @@ class EventTaskStateUpdated(BaseEvent):
|
||||
config: TaskConfig
|
||||
|
||||
|
||||
class EventTaskHeartbeat(BaseEvent):
|
||||
job_id: UUID
|
||||
task_id: UUID
|
||||
config: TaskConfig
|
||||
|
||||
|
||||
class EventPing(BaseResponse):
|
||||
ping_id: UUID
|
||||
|
||||
@ -118,6 +124,12 @@ class EventNodeCreated(BaseEvent):
|
||||
pool_name: PoolName
|
||||
|
||||
|
||||
class EventNodeHeartbeat(BaseEvent):
|
||||
machine_id: UUID
|
||||
scaleset_id: Optional[UUID]
|
||||
pool_name: PoolName
|
||||
|
||||
|
||||
class EventNodeDeleted(BaseEvent):
|
||||
machine_id: UUID
|
||||
scaleset_id: Optional[UUID]
|
||||
@ -148,6 +160,7 @@ Event = Union[
|
||||
EventNodeStateUpdated,
|
||||
EventNodeCreated,
|
||||
EventNodeDeleted,
|
||||
EventNodeHeartbeat,
|
||||
EventPing,
|
||||
EventPoolCreated,
|
||||
EventPoolDeleted,
|
||||
@ -161,6 +174,7 @@ Event = Union[
|
||||
EventTaskStateUpdated,
|
||||
EventTaskCreated,
|
||||
EventTaskStopped,
|
||||
EventTaskHeartbeat,
|
||||
EventCrashReported,
|
||||
EventFileAdded,
|
||||
]
|
||||
@ -187,6 +201,8 @@ class EventType(Enum):
|
||||
task_stopped = "task_stopped"
|
||||
crash_reported = "crash_reported"
|
||||
file_added = "file_added"
|
||||
task_heartbeat = "task_heartbeat"
|
||||
node_heartbeat = "node_heartbeat"
|
||||
|
||||
|
||||
EventTypeMap = {
|
||||
@ -195,6 +211,7 @@ EventTypeMap = {
|
||||
EventType.node_created: EventNodeCreated,
|
||||
EventType.node_deleted: EventNodeDeleted,
|
||||
EventType.node_state_updated: EventNodeStateUpdated,
|
||||
EventType.node_heartbeat: EventNodeHeartbeat,
|
||||
EventType.ping: EventPing,
|
||||
EventType.pool_created: EventPoolCreated,
|
||||
EventType.pool_deleted: EventPoolDeleted,
|
||||
@ -207,6 +224,7 @@ EventTypeMap = {
|
||||
EventType.task_created: EventTaskCreated,
|
||||
EventType.task_failed: EventTaskFailed,
|
||||
EventType.task_state_updated: EventTaskStateUpdated,
|
||||
EventType.task_heartbeat: EventTaskHeartbeat,
|
||||
EventType.task_stopped: EventTaskStopped,
|
||||
EventType.crash_reported: EventCrashReported,
|
||||
EventType.file_added: EventFileAdded,
|
||||
|
Reference in New Issue
Block a user