Update capture_event (#2527)

This commit is contained in:
Dev Khant
2025-04-16 10:42:36 +05:30
committed by GitHub
parent f77a084d1b
commit 541030d69c
2 changed files with 75 additions and 75 deletions

View File

@@ -89,7 +89,7 @@ class MemoryClient:
timeout=300,
)
self.user_email = self._validate_api_key()
capture_client_event("client.init", self)
capture_client_event("client.init", self, {"sync_type": "sync"})
def _validate_api_key(self):
"""Validate the API key by making a test request."""
@@ -143,7 +143,7 @@ class MemoryClient:
response.raise_for_status()
if "metadata" in kwargs:
del kwargs["metadata"]
capture_client_event("client.add", self, {"keys": list(kwargs.keys())})
capture_client_event("client.add", self, {"keys": list(kwargs.keys()), "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -162,7 +162,7 @@ class MemoryClient:
params = self._prepare_params()
response = self.client.get(f"/v1/memories/{memory_id}/", params=params)
response.raise_for_status()
capture_client_event("client.get", self, {"memory_id": memory_id})
capture_client_event("client.get", self, {"memory_id": memory_id, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -194,7 +194,7 @@ class MemoryClient:
capture_client_event(
"client.get_all",
self,
{"api_version": version, "keys": list(kwargs.keys())},
{"api_version": version, "keys": list(kwargs.keys()), "sync_type": "sync"},
)
return response.json()
@@ -220,7 +220,7 @@ class MemoryClient:
response.raise_for_status()
if "metadata" in kwargs:
del kwargs["metadata"]
capture_client_event("client.search", self, {"api_version": version, "keys": list(kwargs.keys())})
capture_client_event("client.search", self, {"api_version": version, "keys": list(kwargs.keys()), "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -233,7 +233,7 @@ class MemoryClient:
Returns:
Dict[str, Any]: The response from the server.
"""
capture_client_event("client.update", self, {"memory_id": memory_id})
capture_client_event("client.update", self, {"memory_id": memory_id, "sync_type": "sync"})
params = self._prepare_params()
response = self.client.put(f"/v1/memories/{memory_id}/", json={"text": data}, params=params)
response.raise_for_status()
@@ -255,7 +255,7 @@ class MemoryClient:
params = self._prepare_params()
response = self.client.delete(f"/v1/memories/{memory_id}/", params=params)
response.raise_for_status()
capture_client_event("client.delete", self, {"memory_id": memory_id})
capture_client_event("client.delete", self, {"memory_id": memory_id, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -274,7 +274,7 @@ class MemoryClient:
params = self._prepare_params(kwargs)
response = self.client.delete("/v1/memories/", params=params)
response.raise_for_status()
capture_client_event("client.delete_all", self, {"keys": list(kwargs.keys())})
capture_client_event("client.delete_all", self, {"keys": list(kwargs.keys()), "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -293,7 +293,7 @@ class MemoryClient:
params = self._prepare_params()
response = self.client.get(f"/v1/memories/{memory_id}/history/", params=params)
response.raise_for_status()
capture_client_event("client.history", self, {"memory_id": memory_id})
capture_client_event("client.history", self, {"memory_id": memory_id, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -302,7 +302,7 @@ class MemoryClient:
params = self._prepare_params()
response = self.client.get("/v1/entities/", params=params)
response.raise_for_status()
capture_client_event("client.users", self)
capture_client_event("client.users", self, {"sync_type": "sync"})
return response.json()
@api_error_handler
@@ -354,7 +354,7 @@ class MemoryClient:
response.raise_for_status()
capture_client_event(
"client.delete_users", self, {"user_id": user_id, "agent_id": agent_id, "app_id": app_id, "run_id": run_id}
"client.delete_users", self, {"user_id": user_id, "agent_id": agent_id, "app_id": app_id, "run_id": run_id, "sync_type": "sync"}
)
return {
"message": "Entity deleted successfully."
@@ -378,7 +378,7 @@ class MemoryClient:
# This will also delete the memories
self.delete_users()
capture_client_event("client.reset", self)
capture_client_event("client.reset", self, {"sync_type": "sync"})
return {"message": "Client reset successful. All users and memories deleted."}
@api_error_handler
@@ -399,7 +399,7 @@ class MemoryClient:
response = self.client.put("/v1/batch/", json={"memories": memories})
response.raise_for_status()
capture_client_event("client.batch_update", self)
capture_client_event("client.batch_update", self, {"sync_type": "sync"})
return response.json()
@api_error_handler
@@ -419,7 +419,7 @@ class MemoryClient:
response = self.client.request("DELETE", "/v1/batch/", json={"memories": memories})
response.raise_for_status()
capture_client_event("client.batch_delete", self)
capture_client_event("client.batch_delete", self, {"sync_type": "sync"})
return response.json()
@api_error_handler
@@ -435,7 +435,7 @@ class MemoryClient:
"""
response = self.client.post("/v1/exports/", json={"schema": schema, **self._prepare_params(kwargs)})
response.raise_for_status()
capture_client_event("client.create_memory_export", self, {"schema": schema, "keys": list(kwargs.keys())})
capture_client_event("client.create_memory_export", self, {"schema": schema, "keys": list(kwargs.keys()), "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -450,7 +450,7 @@ class MemoryClient:
"""
response = self.client.post("/v1/exports/get/", json=self._prepare_params(kwargs))
response.raise_for_status()
capture_client_event("client.get_memory_export", self, {"keys": list(kwargs.keys())})
capture_client_event("client.get_memory_export", self, {"keys": list(kwargs.keys()), "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -476,7 +476,7 @@ class MemoryClient:
params=params,
)
response.raise_for_status()
capture_client_event("client.get_project_details", self, {"fields": fields})
capture_client_event("client.get_project_details", self, {"fields": fields, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -515,7 +515,7 @@ class MemoryClient:
capture_client_event(
"client.update_project",
self,
{"custom_instructions": custom_instructions, "custom_categories": custom_categories},
{"custom_instructions": custom_instructions, "custom_categories": custom_categories, "sync_type": "sync"},
)
return response.json()
@@ -544,7 +544,7 @@ class MemoryClient:
response = self.client.get(f"api/v1/webhooks/projects/{project_id}/")
response.raise_for_status()
capture_client_event("client.get_webhook", self)
capture_client_event("client.get_webhook", self, {"sync_type": "sync"})
return response.json()
@api_error_handler
@@ -567,7 +567,7 @@ class MemoryClient:
payload = {"url": url, "name": name, "event_types": event_types}
response = self.client.post(f"api/v1/webhooks/projects/{project_id}/", json=payload)
response.raise_for_status()
capture_client_event("client.create_webhook", self)
capture_client_event("client.create_webhook", self, {"sync_type": "sync"})
return response.json()
@api_error_handler
@@ -596,7 +596,7 @@ class MemoryClient:
payload = {k: v for k, v in {"name": name, "url": url, "event_types": event_types}.items() if v is not None}
response = self.client.put(f"api/v1/webhooks/{webhook_id}/", json=payload)
response.raise_for_status()
capture_client_event("client.update_webhook", self, {"webhook_id": webhook_id})
capture_client_event("client.update_webhook", self, {"webhook_id": webhook_id, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -615,7 +615,7 @@ class MemoryClient:
response = self.client.delete(f"api/v1/webhooks/{webhook_id}/")
response.raise_for_status()
capture_client_event("client.delete_webhook", self, {"webhook_id": webhook_id})
capture_client_event("client.delete_webhook", self, {"webhook_id": webhook_id, "sync_type": "sync"})
return response.json()
@api_error_handler
@@ -632,7 +632,7 @@ class MemoryClient:
response = self.client.post("/v1/feedback/", json=data)
response.raise_for_status()
capture_client_event("client.feedback", self, data)
capture_client_event("client.feedback", self, data, {"sync_type": "sync"})
return response.json()
def _prepare_payload(
@@ -721,7 +721,7 @@ class AsyncMemoryClient:
response.raise_for_status()
if "metadata" in kwargs:
del kwargs["metadata"]
capture_client_event("async_client.add", self.sync_client, {"keys": list(kwargs.keys())})
capture_client_event("client.add", self.sync_client, {"keys": list(kwargs.keys()), "sync_type": "async"})
return response.json()
@api_error_handler
@@ -729,7 +729,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params()
response = await self.async_client.get(f"/v1/memories/{memory_id}/", params=params)
response.raise_for_status()
capture_client_event("async_client.get", self.sync_client, {"memory_id": memory_id})
capture_client_event("client.get", self.sync_client, {"memory_id": memory_id, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -743,7 +743,7 @@ class AsyncMemoryClient:
if "metadata" in kwargs:
del kwargs["metadata"]
capture_client_event(
"async_client.get_all", self.sync_client, {"api_version": version, "keys": list(kwargs.keys())}
"client.get_all", self.sync_client, {"api_version": version, "keys": list(kwargs.keys()), "sync_type": "async"}
)
return response.json()
@@ -756,7 +756,7 @@ class AsyncMemoryClient:
if "metadata" in kwargs:
del kwargs["metadata"]
capture_client_event(
"async_client.search", self.sync_client, {"api_version": version, "keys": list(kwargs.keys())}
"client.search", self.sync_client, {"api_version": version, "keys": list(kwargs.keys()), "sync_type": "async"}
)
return response.json()
@@ -765,7 +765,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params()
response = await self.async_client.put(f"/v1/memories/{memory_id}/", json={"text": data}, params=params)
response.raise_for_status()
capture_client_event("async_client.update", self.sync_client, {"memory_id": memory_id})
capture_client_event("client.update", self.sync_client, {"memory_id": memory_id, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -773,7 +773,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params()
response = await self.async_client.delete(f"/v1/memories/{memory_id}/", params=params)
response.raise_for_status()
capture_client_event("async_client.delete", self.sync_client, {"memory_id": memory_id})
capture_client_event("client.delete", self.sync_client, {"memory_id": memory_id, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -781,7 +781,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params(kwargs)
response = await self.async_client.delete("/v1/memories/", params=params)
response.raise_for_status()
capture_client_event("async_client.delete_all", self.sync_client, {"keys": list(kwargs.keys())})
capture_client_event("client.delete_all", self.sync_client, {"keys": list(kwargs.keys()), "sync_type": "async"})
return response.json()
@api_error_handler
@@ -789,7 +789,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params()
response = await self.async_client.get(f"/v1/memories/{memory_id}/history/", params=params)
response.raise_for_status()
capture_client_event("async_client.history", self.sync_client, {"memory_id": memory_id})
capture_client_event("client.history", self.sync_client, {"memory_id": memory_id, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -797,7 +797,7 @@ class AsyncMemoryClient:
params = self.sync_client._prepare_params()
response = await self.async_client.get("/v1/entities/", params=params)
response.raise_for_status()
capture_client_event("async_client.users", self.sync_client)
capture_client_event("client.users", self.sync_client, {"sync_type": "async"})
return response.json()
@api_error_handler
@@ -848,7 +848,7 @@ class AsyncMemoryClient:
response = await self.async_client.delete(f"/v1/entities/{entity['type']}/{entity['id']}/", params=params)
response.raise_for_status()
capture_client_event("async_client.delete_users", self.sync_client)
capture_client_event("client.delete_users", self.sync_client, {"sync_type": "async"})
return {
"message": "Entity deleted successfully."
if (user_id or agent_id or app_id or run_id)
@@ -858,7 +858,7 @@ class AsyncMemoryClient:
@api_error_handler
async def reset(self) -> Dict[str, str]:
await self.delete_users()
capture_client_event("async_client.reset", self.sync_client)
capture_client_event("client.reset", self.sync_client, {"sync_type": "async"})
return {"message": "Client reset successful. All users and memories deleted."}
@api_error_handler
@@ -879,7 +879,7 @@ class AsyncMemoryClient:
response = await self.async_client.put("/v1/batch/", json={"memories": memories})
response.raise_for_status()
capture_client_event("async_client.batch_update", self.sync_client)
capture_client_event("client.batch_update", self.sync_client, {"sync_type": "async"})
return response.json()
@api_error_handler
@@ -899,7 +899,7 @@ class AsyncMemoryClient:
response = await self.async_client.request("DELETE", "/v1/batch/", json={"memories": memories})
response.raise_for_status()
capture_client_event("async_client.batch_delete", self.sync_client)
capture_client_event("client.batch_delete", self.sync_client, {"sync_type": "async"})
return response.json()
@api_error_handler
@@ -916,7 +916,7 @@ class AsyncMemoryClient:
response = await self.async_client.post("/v1/exports/", json={"schema": schema, **self._prepare_params(kwargs)})
response.raise_for_status()
capture_client_event(
"async_client.create_memory_export", self.sync_client, {"schema": schema, "keys": list(kwargs.keys())}
"client.create_memory_export", self.sync_client, {"schema": schema, "keys": list(kwargs.keys()), "sync_type": "async"}
)
return response.json()
@@ -932,7 +932,7 @@ class AsyncMemoryClient:
"""
response = await self.async_client.post("/v1/exports/get/", json=self._prepare_params(kwargs))
response.raise_for_status()
capture_client_event("async_client.get_memory_export", self.sync_client, {"keys": list(kwargs.keys())})
capture_client_event("client.get_memory_export", self.sync_client, {"keys": list(kwargs.keys()), "sync_type": "async"})
return response.json()
@api_error_handler
@@ -946,7 +946,7 @@ class AsyncMemoryClient:
params=params,
)
response.raise_for_status()
capture_client_event("async_client.get_project", self.sync_client, {"fields": fields})
capture_client_event("client.get_project", self.sync_client, {"fields": fields, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -970,9 +970,9 @@ class AsyncMemoryClient:
)
response.raise_for_status()
capture_client_event(
"async_client.update_project",
"client.update_project",
self.sync_client,
{"custom_instructions": custom_instructions, "custom_categories": custom_categories},
{"custom_instructions": custom_instructions, "custom_categories": custom_categories, "sync_type": "async"},
)
return response.json()
@@ -985,7 +985,7 @@ class AsyncMemoryClient:
f"api/v1/webhooks/projects/{project_id}/",
)
response.raise_for_status()
capture_client_event("async_client.get_webhook", self.sync_client)
capture_client_event("client.get_webhook", self.sync_client, {"sync_type": "async"})
return response.json()
@api_error_handler
@@ -993,7 +993,7 @@ class AsyncMemoryClient:
payload = {"url": url, "name": name, "event_types": event_types}
response = await self.async_client.post(f"api/v1/webhooks/projects/{project_id}/", json=payload)
response.raise_for_status()
capture_client_event("async_client.create_webhook", self.sync_client)
capture_client_event("client.create_webhook", self.sync_client, {"sync_type": "async"})
return response.json()
@api_error_handler
@@ -1007,14 +1007,14 @@ class AsyncMemoryClient:
payload = {k: v for k, v in {"name": name, "url": url, "event_types": event_types}.items() if v is not None}
response = await self.async_client.put(f"api/v1/webhooks/{webhook_id}/", json=payload)
response.raise_for_status()
capture_client_event("async_client.update_webhook", self.sync_client, {"webhook_id": webhook_id})
capture_client_event("client.update_webhook", self.sync_client, {"webhook_id": webhook_id, "sync_type": "async"})
return response.json()
@api_error_handler
async def delete_webhook(self, webhook_id: int) -> Dict[str, str]:
response = await self.async_client.delete(f"api/v1/webhooks/{webhook_id}/")
response.raise_for_status()
capture_client_event("async_client.delete_webhook", self.sync_client, {"webhook_id": webhook_id})
capture_client_event("client.delete_webhook", self.sync_client, {"webhook_id": webhook_id, "sync_type": "async"})
return response.json()
@api_error_handler
@@ -1031,5 +1031,5 @@ class AsyncMemoryClient:
response = await self.async_client.post("/v1/feedback/", json=data)
response.raise_for_status()
capture_client_event("async_client.feedback", self.sync_client, data)
capture_client_event("client.feedback", self.sync_client, data, {"sync_type": "async"})
return response.json()