[GH-ISSUE #1726] Host healthchecks #1284

Open
opened 2026-02-26 06:36:33 +03:00 by kerem · 5 comments
Owner

Originally created by @rt87 on GitHub (Jan 4, 2022).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/1726

Is your feature request related to a problem? Please describe.
Only the problem of me messing around with my various services and screwing up occassionally. This leads to the proxy not being able to do its job due to my reckless changes to firewall rules, port or host changes etc, etc.

Describe the solution you'd like

The possibility to add a "periodic healthcheck" to hosts (either all or individually) as a sort of healthcheck. The check should basically send a request to the target host (without any location) and expect a http status of 200 (or 200-ish / "OK"; redirects may be acceptable as well, depending on the use case). If the OK-condition is met, some OK-symbol (green circle, check mark, ...) should be visible from the resp. overview page. If not, a you-screwed-up symbol (red circle, red X, ...) should be displayed instead.
Note: Of course this does not guarantee that each and every location, that I may need in the future, exists and is valid, but at least I would know that my hostname exists and is http-reachable under the given port.

Describe alternatives you've considered
I could of course either write a cron script which curls all the hosts or simply use service that is meant for such checks, e.g. healthchecks.io. However, a somehwat major drawback would be that I would have to keep both NPM and my healthchecks synchronized, which may get tedious in the long run.... I do not need or ask for a fully fledged solution such as healthchecks.io, just some very basic thumbs up/down indicator

Additional context
The column "Status" with current values of either "online" or "disabled" may need some clarification within this context, e.g.
Status: Enabled/Disabled | Active/Inactive
Check: Passed/Failed

Originally created by @rt87 on GitHub (Jan 4, 2022). Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/1726 <!-- Are you in the right place? - If you are looking for support on how to get your upstream server forwarding, please consider asking the community on Reddit. - If you are writing code changes to contribute and need to ask about the internals of the software, Gitter is the best place to ask. - If you think you found a bug with NPM (not Nginx, or your upstream server or MySql) then you are in the *right place.* --> **Is your feature request related to a problem? Please describe.** Only the problem of me messing around with my various services and screwing up occassionally. This leads to the proxy not being able to do its job due to my reckless changes to firewall rules, port or host changes etc, etc. **Describe the solution you'd like** <!-- A clear and concise description of what you want to happen. --> The possibility to add a "periodic healthcheck" to hosts (either all or individually) as a sort of healthcheck. The check should basically send a request to the target host (without any location) and expect a http status of 200 (or 200-ish / "OK"; redirects may be acceptable as well, depending on the use case). If the OK-condition is met, some OK-symbol (green circle, check mark, ...) should be visible from the resp. overview page. If not, a you-screwed-up symbol (red circle, red X, ...) should be displayed instead. **Note:** Of course this does not guarantee that each and every location, that I may need in the future, exists and is valid, but at least I would know that my hostname exists and is http-reachable under the given port. **Describe alternatives you've considered** I could of course either write a cron script which curls all the hosts or simply use service that is meant for such checks, e.g. healthchecks.io. However, a somehwat major drawback would be that I would have to keep both NPM and my healthchecks synchronized, which may get tedious in the long run.... I do not need or ask for a fully fledged solution such as healthchecks.io, just some very basic thumbs up/down indicator **Additional context** The column "Status" with current values of either "online" or "disabled" may need some clarification within this context, e.g. Status: Enabled/Disabled | Active/Inactive Check: Passed/Failed
Author
Owner

@brink668 commented on GitHub (Jan 9, 2022):

I agree with this, Status shows "Online" its misleading. Purposely put in a service that does not exist and it still shows it as "Online"

<!-- gh-comment-id:1008201426 --> @brink668 commented on GitHub (Jan 9, 2022): I agree with this, Status shows "Online" its misleading. Purposely put in a service that does not exist and it still shows it as "Online"
Author
Owner

@TheUntouchable commented on GitHub (Feb 11, 2022):

I just started using npm and was really confused about the "online" status. I played with some commercial proxys in the past already and most of them have such health checks build in by default and I thought it would be the same "online" thing here :D

<!-- gh-comment-id:1036147157 --> @TheUntouchable commented on GitHub (Feb 11, 2022): I just started using npm and was really confused about the "online" status. I played with some commercial proxys in the past already and most of them have such health checks build in by default and I thought it would be the same "online" thing here :D
Author
Owner

@github-actions[bot] commented on GitHub (Feb 28, 2024):

Issue is now considered stale. If you want to keep it open, please comment 👍

<!-- gh-comment-id:1968040290 --> @github-actions[bot] commented on GitHub (Feb 28, 2024): Issue is now considered stale. If you want to keep it open, please comment :+1:
Author
Owner

@wj7998 commented on GitHub (Oct 23, 2024):

I am also confused on "Online" status, in my use case, online status should indicate forwarded port should be active on listening. I would recommend to have following status,
"setting error" - with ! yellow circle
"setting right, but forward port is unreachable" - with red circle
"setting right, but forward port is reachable" - with green circle

<!-- gh-comment-id:2431447008 --> @wj7998 commented on GitHub (Oct 23, 2024): I am also confused on "Online" status, in my use case, online status should indicate forwarded port should be active on listening. I would recommend to have following status, "setting error" - with ! yellow circle "setting right, but forward port is unreachable" - with red circle "setting right, but forward port is reachable" - with green circle
Author
Owner

@github-actions[bot] commented on GitHub (Jun 18, 2025):

Issue is now considered stale. If you want to keep it open, please comment 👍

<!-- gh-comment-id:2982382214 --> @github-actions[bot] commented on GitHub (Jun 18, 2025): Issue is now considered stale. If you want to keep it open, please comment :+1:
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nginx-proxy-manager-NginxProxyManager#1284
No description provided.