SIEM API

class netforge_rl.siem.siem_logger.SIEMLogger(seed: int | None = None, latency: int = 0, capture: bool = False)[source]

Bases: object

Stochastic SIEM event generator.

log_action(action_name: str, effect: ActionEffect, global_state: GlobalNetworkState, agent_id: str, target_ip: str | None = None) → str | None[source]

Potentially generate a SIEM log line for this action’s outcome.

log_background_noise(global_state: GlobalNetworkState) → None[source]

Inject benign background network activity every tick.

get_recent_logs(global_state: GlobalNetworkState, n: int = 8) → list[str][source]

Return the N most recent SIEM log lines from the buffer.

get_filtered_logs(global_state: GlobalNetworkState, subnet_tag: str | None = None, n: int = 8) → list[str][source]

Return the N most recent logs filtered by subnet mapping.

release(global_state: GlobalNetworkState) → None[source]

Flush pending logs whose delay has elapsed into the visible buffer.