getumbrel / umbrel-apps

The official app repository of the Umbrel App Store. Submit apps and updates here. Learn how → https://github.com/getumbrel/umbrel-apps#readme
https://apps.umbrel.com
517 stars 381 forks source link

Uptime Kuma failure of push monitoring #616

Closed andreaparisi-science closed 1 month ago

andreaparisi-science commented 1 year ago

Uptime Kuma allows for push monitoring. This is typically implemented by sending a GET request to the Uptime Kuma server on port 8385, and is easily achieved adding a curl/wget command in the cron table (on linux servers).

Under umbrel, however, the request seems to be intercepted by the umbrel OS which expects javascript to be enabled. Thus the request fails, the page returned informs of the need to enable javascript, and the monitor cannot succeed. Is there a way to communicate with the app, without umbrel OS demanding an unneeded javascript requirement?

This is the returned html:

<!DOCTYPE html><html lang="en"><head><title>Umbrel</title><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="robots" content="noindex, nofollow"><meta name="referrer" content="no-referrer"><link rel="icon" href="favicon.png"><meta name="description" content="Welcome back"><link href="/css/app.65f6aa45.css" rel="preload" as="style"><link href="/js/app.ab94624e.js" rel="preload" as="script"><link href="/js/chunk-vendors.5ff0ba32.js" rel="preload" as="script"><link href="/css/app.65f6aa45.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but Umbrel doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="/js/chunk-vendors.5ff0ba32.js"></script><script src="/js/app.ab94624e.js"></script></body></html>
nmfretz commented 3 months ago

Thanks for reporting this @andreaparisi-science! This is a result of our app proxy container (which sits in front of Uptime Kuma and provides authentication) not allowing the http request through.

We can solve this by whitelisting the "/api" route in our proxy. We will update the Uptime Kuma app to allow this.

nmfretz commented 1 month ago

Thanks again for reporting this @andreaparisi-science. An Uptime Kuma update just hit the app store with this fix: https://github.com/getumbrel/umbrel-apps/pull/1322