It’s incredibly easy to get a log extract in Consolation which contains more than 100,000 entries, and until now the only indication has been that the app is slow at handling so many. It has also been easy, particularly when you first start trying to use it, to accidentally run Consolation from a non-admin account, and wonder why it keeps throwing errors. These are two of the issues addressed in a new version of Consolation, 3.5.
Now, when you open the Consolation app, it performs three checks before going any further:
- Once the app has initialised, it checks its integrity against its code signature, as do all my apps now. This protects you from accidentally corrupted copies, and from any that have been tampered with by malware.
- After that, it checks whether the current user is a member of the admin group 80. If they’re not, it displays an informative alert, following which it quits.
- Finally, it may check to see if there are any updates available.
The second step is new with this version. It does mean that my old workaround app RunConsolation is unlikely to work with this, but by far the best way to address the requirement – which is enforced by macOS as a requirement to obtain extracts from the unified log – is to use fast user switching, and run Consolation from an admin account. That is also most likely to work fully.
If you find this works well, I will introduce the same check to other apps of mine like T2M2 which also rely on log extracts obtained in the same way.
Consolation offers special formatting options for log entries which use colour, and let you customise exactly which fields you wish to see and how. This slows down when trying to work with huge log extracts, and humans find it hard to wade through more than a few thousand at a time. So that you have a more accurate idea as to just how large a log extract is, Consolation now displays this in two ways: as the number of log entries, and as the number of lines of text (paragraphs) which are actually shown in the log view.
This helps you plan what actions to take, and how long to expect them to require: when working in a custom format mode, it can take minutes to reparse and reformat tens or hundreds of thousands of log entries. You can also use this to improve search predicates, and even get basic statistics such as how many entries contain <private>.
I have also taken the opportunity to improve user feedback when Consolation is hard at work. It now displays the ‘busy spinner’, although because much of the processing involves reformatting styled text, this appears to have to take place in the main thread, and locks you out of most interaction with the app, such as scrolling the text output. I am going to be working on further optimisations to try to improve this.
I hope you find this new version an improvement.