Using Unreal Engine, the logs may or may not have the log level in them.
For example, the following are all valid log entries in Unreal Engine
[2022.04.23-23.24.34:815][ 0]LogWindows: DebugString: PrimaryIsNotTheChoosenAdapter PrimaryIsNotTheChoosenAdapter PrimaryIsNotTheChoosenAdapter GetVideoDriverDetailsInvalid PrimaryIsNotTheChoosenAdapter
[2022.04.23-23.24.38:686][ 0]LogPython: Warning: 'xxxxxxxxx' and 'xxxxxx' have the same name (xxxxxxxxx) when exposed to Python. Rename one of them using 'ScriptName' meta-data.
[2022.04.23-23.27.39:787][864]LogUObjectHash: Compacting FUObjectHashTables data took 1.54ms
[2022.04.23-23.27.43:549][977]SourceControl: fatal: unable to get credential storage lock in 1000 ms: No such file or directory
As you can see, the entries are fairly inconsistent. When doing my own log entries, I made sure to be a bit more consistent. However I cannot seem to come up with a good parser for the inconsistent Unreal (and plugins) logs. I would like the log level to be UNKNOWN when there is no log level found. Currently, because the parser expects a colon and does not find one in log entries without a log level, it combines log entries of 2 (or more) lines into one.
For example, in the following screenshot, because the log level does not exist in the message, the parser gets confused and merged 3 log entries into one.
