[Django] #35565: system connectivity diagnostics in admin panel

6 views
Skip to first unread message

Django

unread,
Jun 26, 2024, 10:11:35 PM6/26/24
to django-...@googlegroups.com
#35565: system connectivity diagnostics in admin panel
-----------------------------------------+------------------------
Reporter: Sam Darwin | Owner: nobody
Type: New feature | Status: new
Component: Uncategorized | Version: 5.0
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
-----------------------------------------+------------------------
Hi,
This is a feature idea. Often Django connects to external systems such as:
- database
- memcached
- redis
- celery
- qcluster
- email

Imagine there was a new page built into the admin panel, "system
connectivity", with all those items listed, and they could be "green" or
"red", showing the health of the connections.

Not a long page of internal variables or functions. Rather, a visual,
basic control panel screen with a brief list of systems, and their status.

If no cache (memcached, redis) is available, perhaps a message
recommending the administrator install one.

Each of the connections is tested somehow. Store and retrieve a value
from redis. Or, send an outgoing email. Add the ability to customize the
list by including more systems.

Could the code introspect? "you appear to be using queuing (or caching,
or email), however that system is not online..."
--
Ticket URL: <https://code.djangoproject.com/ticket/35565>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Jun 27, 2024, 4:45:28 AM6/27/24
to django-...@googlegroups.com
#35565: system connectivity diagnostics in admin panel
-------------------------------+--------------------------------------
Reporter: Sam Darwin | Owner: nobody
Type: New feature | Status: closed
Component: Uncategorized | Version: 5.0
Severity: Normal | Resolution: wontfix
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Changes (by Sarah Boyce):

* resolution: => wontfix
* status: new => closed

Comment:

Hi Sam, thank you for raising this ticket I can see why this would be
useful to some of our users

When requesting a new feature for Django, the recommended path forward is
to first propose and discuss the idea with the community and gain
consensus.
Usually we recommend that you would start a new conversation on the
[https://forum.djangoproject.com/c/internals/5 Django Forum], where you'll
reach a wider audience and likely get extra feedback.

I actually think in this case it a third-party package providing this
would be a good approach. You may find that that's also preferable from
being in core (you can add new integrations quicker, iterate etc).

I'll close the ticket for now, but if there is a community agreement for
the feature request, you are welcome to come back to the ticket and point
to the forum topic, so we can then re-open it. For more details, please
see [https://docs.djangoproject.com/en/stable/internals/contributing/bugs-
and-features/#requesting-features the documented guidelines for requesting
features].
--
Ticket URL: <https://code.djangoproject.com/ticket/35565#comment:1>

Django

unread,
Jun 27, 2024, 12:14:18 PM6/27/24
to django-...@googlegroups.com
#35565: system connectivity diagnostics in admin panel
-------------------------------+--------------------------------------
Reporter: Sam Darwin | Owner: nobody
Type: New feature | Status: closed
Component: Uncategorized | Version: 5.0
Severity: Normal | Resolution: wontfix
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Comment (by Natalia Bidart):

It's also worth noting that there are some 3rd party apps that already
implement this feature, for example https://pypi.org/project/django-
health-check/.

Also, I think that a status page like this makes more sense in a location
outside the admin, since it's likely information that is useful for more
users other than staff/superusers.
--
Ticket URL: <https://code.djangoproject.com/ticket/35565#comment:2>

Django

unread,
Jun 27, 2024, 12:37:43 PM6/27/24
to django-...@googlegroups.com
#35565: system connectivity diagnostics in admin panel
-------------------------------+--------------------------------------
Reporter: Sam Darwin | Owner: nobody
Type: New feature | Status: closed
Component: Uncategorized | Version: 5.0
Severity: Normal | Resolution: wontfix
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+--------------------------------------
Comment (by Sam Darwin):

Natalia, ok that is great!!

It's probably the closest implementation of the idea that will be
realized.

I was perhaps thinking this feature would installed automatically in the
admin panel, or by setting one variable to enabled it, and then it would
detect all the services (celery, redis, etc).
But in reality, one must expect to install a plugin. And configure the
plugin, and point it to the services being inspected. That's normal.

Django-health-check looks like the right solution.
--
Ticket URL: <https://code.djangoproject.com/ticket/35565#comment:3>
Reply all
Reply to author
Forward
0 new messages