Logger is an Apple framework available since Xcode 12 / iOS 14 and it’s the best way to track your app’s behavior.
It offers various levels of logging — info, warning, error, and more — which you sprinkle around your code so that you can monitor the flow in the console.
As your app grows, so does the volume of messages in the console.
Instead of filtering Xcode’s console by keywords or updating search parameters in the Console app, here’s how I keep my console de-cluttered:
Have a Logger instance for each “subsystem” of the app
Explicitly define (and use it) as an optional
Manage which of them are active in a single place - a file that extends Logger
My code here shows that I want to keep seeing health and shoes messages, but CoreData and onboarding are not needed at this time -- I just set them to nil, and comment out the original code.