@cryptotaxi247 / CoPilot / commits / 3d8ec50b

add label (#72)

add the wazuh agent label to the agent within the `agent_metadata` table so that we can filter on what agents belong to which customers based on the group

taylor_socfortress committed Jul 26, 2023 at 10:59 UTC 3d8ec50bc60c50df8a5de249bb846a99a8271341
1 file changed +6
backend/app/services/agents/agents.py
+6
@@ -153,6 +153,7 @@ class AgentService:
153 existing_agent.ip_address = agent["agent_ip"]
154 existing_agent.os = agent["agent_os"]
155 existing_agent.last_seen = agent_last_seen
156 + existing_agent.label = agent["agent_label"]
157 existing_agent.client_id = agent["client_id"]
158 existing_agent.client_last_seen = agent["client_last_seen"]
159 existing_agent.wazuh_agent_version = agent["wazuh_agent_version"]
@@ -169,6 +170,7 @@ class AgentService:
170 hostname=agent["agent_name"],
171 ip_address=agent["agent_ip"],
172 os=agent["agent_os"],
173 + label=agent["agent_label"],
174 last_seen=agent_last_seen,
175 critical_asset=False,
176 client_id=agent["client_id"],
@@ -287,14 +289,18 @@ class AgentSyncService:
289 if agents_collected.status_code == 200:
290 wazuh_agents_list = []
291 for agent in agents_collected.json()["data"]["affected_items"]:
292 + logger.info(f"Agent: {agent}")
293 os_name = agent.get("os", {}).get("name", "Unknown")
294 last_keep_alive = agent.get("lastKeepAlive", "Unknown")
295 + agent_group_list = agent.get("group", []) # Use get method to access the 'group' list
296 + agent_group = agent_group_list[0] if agent_group_list else "Unknown" # Get the first item of the 'group' list
297 wazuh_agents_list.append(
298 {
299 "agent_id": agent["id"],
300 "agent_name": agent["name"],
301 "agent_ip": agent["ip"],
302 "agent_os": os_name,
303 + "agent_label": agent_group,
304 "agent_last_seen": last_keep_alive,
305 "wazuh_agent_version": agent["version"],
306 },