A GNOME Shell 45+ extension that checks one website and displays a colored dot in the top bar: - green: available; - orange: available, but slower than the configured threshold; - red: unavailable, timed out, or returned an HTTP error. You can pause monitoring from a switch in the indicator menu. Pausing or resuming resets the consecutive-failure counter. The indicator also opens a separate cascading recent-checks menu beside the main menu. It shows the status, HTTP result, and response duration for the latest 10 checks by default. Its position can be set to left, right, or automatic; left is the default. After the configured number of consecutive failed checks (three by default), a large modal alert appears in the center of the screen and the desktop warning sound is played. A custom MP3 can be selected in the extension preferences. The sound loops until the alert is dismissed. One alert is shown per outage; a successful check automatically closes the alert and stops its sound. https://github.com/lefred/gnome-shell-monitor-site
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-A-004 warning
extension files should not contain excessive ungated console logging
File contains 10 ungated console.log/warn/error calls (threshold: 5).
extension.js:817
console.warn(`Website Monitor repeated warning sound failed: ${error.message}`)
extension.js:885
console.warn(`Website Monitor could not restore output volume: ${error.message}`)
extension.js:939
console.warn(`Website Monitor MP3 playback failed: ${error.message}; ${debug ?? ''}`)
extension.js:944
console.warn(`Website Monitor fallback sound failed: ${fallbackError.message}`)
extension.js:966
console.warn(`Website Monitor locked alert sound failed: ${error.message}`)
extension.js:970
console.warn(`Website Monitor fallback sound failed: ${fallbackError.message}`)
extension.js:1007
console.warn(`Website Monitor could not play alert sound: ${error.message}`)
extension.js:1011
console.warn(`Website Monitor fallback sound failed: ${fallbackError.message}`)
extension.js:779
console.error(`Website Monitor email failed: ${error.message}`)
extension.js:1026
console.error(`Website Monitor could not show alert: ${error.stack ?? error}`)
EGO-L-002 warning
objects created by extension should be destroyed in disable()
Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.
extension.js:1017
this._alertOverlay = new WebsiteAlertOverlay(url, this._failures, () => {
this._alertOverlay = null;
this._stopAlertSound();
})
EGO-L-003 warning
signals connected by extension should be disconnected in disable()
Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.
extension.js:77
this.menu.connect('open-state-changed', (_menu, open) => {
if (!open)
this._extension.closeHistoryPopup();
})
EGO-M-008 warning
extensions using unlock-dialog must document it in disable() comments
Extensions using `unlock-dialog` should document the reason in `disable()` comments.
extension.js:474
disable() {
if (this._timerId) {
GLib.Source.remove(this._timerId);
this._timerId = 0;
}
this._cancellable?.cancel();
this._cancellable = null;
this._session?.abort();
this._stopAlertSound();
if (this._mixerStateId)
| Version | Status |
|---|---|
| 1 | Unreviewed |