Comments (9)
I'd suggest that ping isn't a great solution for this, as you might (probably will!) have hosts with multiple services. Containers, or just multiple apps on a single host fit this model. If you have (say) Plex, Sonarr and Radarr on one host, you'd want the indicator to show separate statuses for each, but ping would just show the underlying host.
If the goal is maximum flexibility, then I'd suggest a monitored item should have a "monitor URL" - which defaults to the main URL - and the HTTP status code for a HEAD {URI} operation should govern status. 200 is green, 30x to a 200 is green. 400/500 are the errors.
from heimdall.
The problem with this idea is that its scale to be truly useful is considerable.
For example you will need to be able to test various flavors of service, TCP, UDP, ICMP... then you quickly need to understand HTTP error codes... but that leads to being able to check content as a blank page with 200 code is still an error.
And then there is "IF THENS". For example there no point alarming that all your web links are down if all that means is your internet connection broke.
On top of that we need to be able to handle the various authentications that will be required.
For sure some basic HTTP 200 test of the shortcut is up could be useful but IMHO it would be far better to find a proper project that does this and tie into their api
from heimdall.
Hmm, it's an interesting request, I'll definitely put some thought into this. It would probably have an option when adding the app as to whether to monitor it, as you probably wouldn't want to monitor everything.
from heimdall.
Yes Exactly! This sounds good!
from heimdall.
A simple ping health monitor would probably work. Or you could see about uptime robot integration if it isn't too complex. I'm sure there's something out there that's opensource you could implement.
from heimdall.
A way to set the health check url as well would be awesome!
from heimdall.
We should by default try and think of ways to do this via Enhanced App. i.e. is there a project that monitors services and has an api that can be used to provide info to Heimdall on status.
If there isnt a suitable upstream project then we should start looking into this because what at first seems like as simple idea will very quickly prove not to be. IMHO anyway.
from heimdall.
Many years ago I wrote a little php ping app, may be useful although the code is terrible :)
https://github.com/zag2me/PHP-Server-Monitor
from heimdall.
Oh I didn't think of that, as most of my services have their own IP.
So querying HTTP status codes is probably a better idea!
from heimdall.
Related Issues (20)
- enhanced apps not working/autoloading HOT 2
- Hide the config buttons from the login screen HOT 1
- apps.heimdall.site does not show all applications HOT 3
- Upgrade from 2.4.0 to 2.6.1 HOT 1
- Upgrade to 2.6.x fails with refused connections HOT 3
- Unable to re-order when Tags as Categories selected HOT 6
- [BUG] - Can't clear cache with php artisan:optimize - Tag routes are declared twice HOT 1
- chrome://bookmarks does not work as a URL HOT 1
- Not loading correctly when run on a remote server HOT 2
- Support Kagi Search HOT 3
- Js 设置标题无效 HOT 1
- /resource/lang dir shoud be change to /lang in README.md HOT 1
- PWA Support HOT 1
- Update Immich Logo
- Hide Setting Bars if no login
- Unable to automatically log in to qBittorrent
- [FEAT] - Multi-Language description
- redis extension missing
- Add Microbin
- ERROR on Login - Runtime Exception PHP 8.3.6 10.44.0 This password does not use the Bcrypt algorithm.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from heimdall.