MCPcopy Create free account
hub / github.com/TheSecuredAnalyst/security-suite / export

Method export

modules/siem/webhook.py:190–225  ·  view source on GitHub ↗

Export event via webhook. Args: event: Event to export Returns: True if successful

(self, event: SIEMEvent)

Source from the content-addressed store, hash-verified

188 async def export(self, event: SIEMEvent) -> bool:
189 """Export event via webhook.
190
191 Args:
192 event: Event to export
193
194 Returns:
195 True if successful
196 """
197 if not self._should_send(event):
198 self.logger.debug(f"Event below severity threshold: {event.severity}")
199 return True # Not an error, just filtered
200
201 payload = self._format_payload(event)
202
203 try:
204 async with httpx.AsyncClient(timeout=self.timeout) as client:
205 response = await client.request(
206 method=self.method,
207 url=self.url,
208 json=payload,
209 headers=self._get_headers(),
210 )
211
212 if response.status_code in [200, 201, 202, 204]:
213 self.logger.debug(f"Webhook delivered: {event.event_type}")
214 return True
215 else:
216 self.logger.error(
217 f"Webhook error: {response.status_code} - {response.text}"
218 )
219 return False
220
221 except Exception as e:
222 self.logger.error(f"Webhook export failed: {e}")
223 return False
224
225 async def test_connection(self) -> bool:
226 """Test webhook endpoint.
227
228 Returns:

Callers

nothing calls this directly

Calls 3

_should_sendMethod · 0.95
_format_payloadMethod · 0.95
_get_headersMethod · 0.95

Tested by

no test coverage detected