I am with Mariusz. Displaying the names of the check functions is a bit against the intention of the checks framework. The check ID's are intended to be enough information to reference the problem. This is different to unit tests, where the function names are intended to carry information.
If you want to debug your own checks:
- Write tests for them. For example, use override_settings() in a test case to set a setting to the value that would cause a warning, and check that it returns the correct list of CheckMessage objects.
- You can inspect which check functions are registered with the undocumented get_checks() function of the registry:
In [1]: from django.core.checks.registry import registry
In [2]: registry.get_checks()
Out[2]:
[<function django.core.checks.urls.check_url_config(app_configs, **kwargs)>,
<function django.core.checks.urls.check_url_namespaces_unique(app_configs, **kwargs)>,
...
<function django.contrib.auth.checks.check_user_model(app_configs=None, **kwargs)>]
If you're particularly unconfident that your checks.register() lines don't always work, perhaps because they're conditional, you can also write unit tests that run get_checks() and see your check functions are registered.