Add static monitor::create_default_monitor to encapsulate the logic for the default monitor creation and simplify dependent code.