1
📥
Extract system logsAmbil transaksi, approval, dan jejak aktiviti
2
🔍
Filter by user/actionKumpulkan data mengikut pengguna dan jenis tindakan
3
🚩
Flag suspiciousKenal pasti aktiviti tidak biasa untuk audit
📋
Generate audit reportJana laporan audit lengkap untuk pemantauan
import json, datetime
AUDIT_LOGS = "https://api.finance.local/v1/logs"
def fetch_audit_trail(start_date, end_date):
resp = requests.get(AUDIT_LOGS, params={"from": start_date, "to": end_date})
return resp.json().get("events", [])
def filter_by_criteria(logs, user=None, action=None):
return [l for l in logs if (user is None or l["user"]==user) and (action is None or l["action"]==action)]
def flag_suspicious(logs):
return [l for l in logs if l["status"] in ("Blocked", "Suspicious")]
def generate_report(logs, flagged):
return {"total_events": len(logs), "approved": sum(1 for l in logs if l["status"]=="Approved"), "blocked": len(flagged), "timestamp": datetime.now().isoformat()}
logs = fetch_audit_trail("2026-06-01", "2026-06-30")
approved = [l for l in logs if l["status"]=="Approved"]
flagged = flag_suspicious(logs)
print(json.dumps(generate_report(logs, flagged)))