{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Specialized Event Classes: ErrorEvent, PseudonymEvent, SreEvent\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Overview of specialized Event Classes with further data." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**ErrorEvent**" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2025-07-04T08:29:47.373152Z", "start_time": "2025-07-04T08:29:47.353933Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "received\n", "processing\n", "failed\n", "ErrorEvent(data={'@timestamp': '2025-07-28T06:33:20.184077+00:00', 'reason': \"Field 'data' has to be a string!\", 'original': b'data: 1', 'event': b\"{'data': 1}\"}, state=receiving)\n" ] } ], "source": [ "from logprep.ng.event.error_event import ErrorEvent\n", "from logprep.ng.event.log_event import LogEvent\n", "\n", "log_event = LogEvent({\"data\": 1}, original=b\"data: 1\")\n", "\n", "# Simulate log_event state to FAILED\n", "print(log_event.state.next_state())\n", "print(log_event.state.next_state())\n", "print(log_event.state.next_state(success=False))\n", "\n", "error_event = ErrorEvent(log_event=log_event, reason=TypeError(\"Field 'data' has to be a string!\"))\n", "\n", "print(error_event)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**SreEvent** and **PseudonymEvent** don't have any additional data; they only serve to distinguish between the event types." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-04T08:32:18.392509Z", "start_time": "2025-07-04T08:32:18.379941Z" } }, "outputs": [ { "ename": "TypeError", "evalue": "ExtraDataEvent.__init__() missing 1 required keyword-only argument: 'outputs'", "output_type": "error", "traceback": [ "\u001b[31m---------------------------------------------------------------------------\u001b[39m", "\u001b[31mTypeError\u001b[39m Traceback (most recent call last)", "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[2]\u001b[39m\u001b[32m, line 3\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mlogprep\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mng\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mevent\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msre_event\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m SreEvent\n\u001b[32m----> \u001b[39m\u001b[32m3\u001b[39m sre_event = \u001b[43mSreEvent\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m=\u001b[49m\u001b[43m{\u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43mdata\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m:\u001b[49m\u001b[43m \u001b[49m\u001b[32;43m1\u001b[39;49m\u001b[43m}\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 5\u001b[39m \u001b[38;5;66;03m# Simulate log_event states\u001b[39;00m\n\u001b[32m 6\u001b[39m \u001b[38;5;28mprint\u001b[39m(sre_event.state.next_state()) \u001b[38;5;66;03m# RECEIVED\u001b[39;00m\n", "\u001b[31mTypeError\u001b[39m: ExtraDataEvent.__init__() missing 1 required keyword-only argument: 'outputs'" ] } ], "source": [ "from logprep.ng.event.sre_event import SreEvent\n", "\n", "outputs = ({\"output\": \"output1\"}, {\"output\": \"output2\"})\n", "\n", "sre_event = SreEvent(data={\"data\": 1}, outputs=outputs)\n", "\n", "# Simulate log_event states\n", "print(sre_event.state.next_state()) # RECEIVED\n", "print(sre_event.state.next_state()) # PROCESSING\n", "print(sre_event.state.next_state(success=True)) # successfully PROCESSED\n", "print(sre_event.state.next_state()) # STORED_IN_OUTPUT\n", "print(sre_event.state.next_state(success=True)) # successfully DELIVERED\n", "print(sre_event.state.next_state()) # ACKED" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.3" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }