Should log_callback be optional (and default to discard_logs)?