- THROWF(not_found_error, 0, "Bad config key: %s", name.c_str());
+ std::string msg = "Bad config key: " + name + "\nExisting config keys:\n";
+ for (auto const& elm : options)
+ msg += " " + elm.first + ": (" + elm.second->get_type_name() + ")" + elm.second->get_string_value() + "\n";
+ throw std::out_of_range(msg);