OML Console is a Unity Game Engine editor extension. It is a replacement to the original console with powerful feature set. It helps developer save lots of time and totally change the experience of viewing logs and solving problems.
Finder in OML allow you to search text by using plain text or regex. Irrelevant logs will be darken to emphasize the result. Match text from logs will be further highlighted or underlined. You can quickly navigate between results with shortcut keys. Filter mode can also be toggled to show only relevant results.
Log with Tags
OML console allow you to tag you log in different ways no matter it is automatic or manually. Once a log is tagged, you can do amazing things with it. Tagged logs not only make them more identifiable, it also help you do different kinds of filtering with just one simple key press or mouse click.
Tag filtering allow you to focus on logs with specific tags or let you hide logs you are not interested. You can define tag groups with only specified tags visible which in turn allow you to quickly switch focus from one category of logs to another. e.g. Game Logic, Networking Events, Scene Events, Audio Events, etc.
Log Session
Reading a pile of logs with out session is just like reading a book without table of content.
Things are hard to find and the reader is easy to get lost.
A log session define a chunk of log by a starting time and an optionally ending time.
You ask OML to start a session by giving a log command and it will start grouping new logs in to the active session. Session row has a different kind of look to make it easier to spot. Most importantly it can be folded to hide logs you are not interested.
Additionally, you can switch into session list view which show you only the session titles.
From there, you could jump in to any session quickly. It is fast, simple and easy.
It works just like the table of content of a book.
Split View
OML Console Pro allow you to open up as much as 5 consoles to watch 5 log stream at the same time.
Its great for people who have plenty of screen space and want to watch different kind of logs without switching the filtering setup.
While wide screen monitor and dual monitor setup is so popular these days, the more information can be present to you at a time, the more productive you are at analyzing log.
OML split-view make sure you get good use of your additional screen space.
Visual Tweaks
OML has some nice tweaks to make logs more easy to you eye.
Smooth scrolling will make scroll on the console not jumpy and prevent losing track of the context.
Smooth appearing make logs appear smoothly instead of popping out suddenly.
A color fading effect also help make new logs appearing more noticeable.
(Note: the smoothness shown here is limited by GIF file format)
Multi-Log Selection
Use Ctrl or Shift key to select multiple logs at the same time.
Operation such as Copy will copy the content accordingly.
You can optionally hold down Atl key to control whether stack trace should be copied to.
The work flow is in its simplest form.
Customize Collapse Rule
Collapse Rule can be set differently for each log type.
A new neighbor state is introduced to only collapse log locally with neighbors.
You could collapse error logs globally and leave warning and info logs to collapse locally to keep the log stream in order while preventing endless error message spamming the console.
Pattern Highlight
You could use regex matching to find text from logs and highlight them and make keywords stand out.
Doing this externally from OML help keep your log message clean from the code.
In the demo, some highlights are turned on one by one for you to see the different.
Customize Log Style
Log style can be customized to certain logs.
You can change their font settings and colors to make certain logs stand out.
Log Channel
Logs can be assigned with channel number for filtering purpose.
Even if some logs have the same format, pattern and tags, you can separate them by using the channel number.
Common use case is the to have multiple instance of the same game running on multiple device.
You can have them use different channel number to send remote logs the OML.
Surrounding Code Peeking
By pressing down the ATL key on console or stacktrace panel, the corresponding source code related to the log will be shown for quick inspection.
Data Watcher
You can observe data with dedicated watch panel come with OML. Data with key and value are pushed to OML with log command.
Export & Freeze Detection
OML Pro allow you to export current logs to text file or html file
You can even set it to auto export when Unity editor freeze is detected. e.g. caused by dead-loop. When editor is hanging, user are not able to interact with anything on the Unity Editor. Auto export help you catch the latest log emitted by your application and give you hints about the issue.
Optimized for High Throughput
The optimized log processing core is carefully separated from the running application.
It does not take away cpu time from Unity main thread.
Even though OML do lots of works on filtering and checking, it minimize impact on your application performance, especially multi-core CPU is generally used on all systems these days.
More is coming…
The features above is just the highlight of OML Pro.
That’s not everything. Some minor functions are not mentioned.
We are improving OML from time to time. The sooner you use, the more time you save!