-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Show if devices have not connected in a long time #7703
Comments
Not really a fan of this concept as the duration for something to be considered stale is highly subjective. This could be anything between minutes and months. And it's not a useful information in a multi node cluster. The real source could have been long gone and the other nodes would happily keep it synced. An additional timestamp detail like "last modified" would probably have more value. |
To be honest, I feel this is your observability issue due to nature of your setup (a lot of devices yada yada), and not syncthing Issue. If you have a large setup, I'd expect you to invest time into monitoring it or building tools that help you monitor it. As it stands I feel you to asking us to solve your observability problems. I am not against the idea, but I feel it will be of no use or even an annoyance for most users, and seems implementing like that would have a non-trivial engineering. |
You misunderstand. I don't expect anybody to solve my observability problems. And laying out this feature request in detail and in good faith is my attempt at investing time in better tools to help monitor Syncthing. If my humble suggestion resonates with other power users and is accepted by the team I'd even put in the time to get acquainted with Go to try and make a good pull request. If not, consider the issue closed. |
A label for devices we haven't seen in ages seems reasonable. I think this could/should live entirely in the web UI code, as you have all the needed info there (last connected time), no need to expand the API. If configuration is necessary, that can also be stored in local storage on the web UI. And it should clearly happen at device level: For folders there's no clear criterium, as any amount of devices are involved (and they might get up-to-date via a third device we don't know about, and possible other cases). I took the liberty to rename the issue. |
But isn't this the same thing as the existing "last seen" row? I think this needs a better proposal fleshed out, as an outright "I have not seen a device for 7 days lets start flashing warnings" is definitely just going to cause a ton of noise with zero value. |
I basically interpret this as a way to make that more discoverable, respectively pull attention to it. Changing the folder status to orange/warning and then maybe highlighting the |
What happens if I startup my device after 7 days? Everything is orange? |
IMHO adding a |
Yep. Until the device connects. Doesn't seem so bad to me, but that's something better discussed between you and @SixFive7 - I really don't mind if it's this variant, no change at all or another variant (well here I might mind depending on what it turns out to be). And I don't see how last change has anything to do with this. |
…hing#7703) Currently, a disconnected device is marked as just "Disconnected" without any consideration whether it has been in the state for just a short period of time or rather much longer. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a month. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and it displays the exact date otherwise. Additionally, when the date is older than 1 month, it shows that information below in orange, and when it is older than a year, it shows it in red. This provides the user with a visual clue that something may potentially be wrong and needs their intervention. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
…hing#7703) Currently, a disconnected device is marked as just "Disconnected" without any consideration whether it has been in the state for just a short period of time or rather much longer. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a month. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and it displays the exact date otherwise. Additionally, when the date is older than 1 month, it shows that information below in orange, and when it is older than a year, it shows it in red. This provides the user with a visual clue that something may potentially be wrong and needs their intervention. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
…hing#7703) Currently, a disconnected device is marked as just "Disconnected" without any consideration whether it has been in the state for just a short period of time or rather much longer. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a month. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and it displays the exact date otherwise. Additionally, when the date is older than 1 month, it shows that information below in orange, and when it is older than a year, it shows it in red. This provides the user with a visual clue that something may potentially be wrong and needs their intervention. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
…hing#7703) Currently, a disconnected device is marked as just "Disconnected" without any consideration whether it has been in the state for just a short period of time or rather much longer. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a month. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and it displays the exact date otherwise. Additionally, when the date is older than 1 month, it shows that information below in orange, and when it is older than a year, it shows it in red. This provides the user with a visual clue that something may potentially be wrong and needs their intervention. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
…hing#7703) Currently, a disconnected device is marked as just "Disconnected" without any consideration whether it has been in the state for just a short period of time or rather much longer. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a month. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and it displays the exact date otherwise. Additionally, when the date is older than 1 month, it shows that information below in orange, and when it is older than a year, it shows it in red. This provides the user with a visual clue that something may potentially be wrong and needs their intervention. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
…hing#7703) Currently, a disconnected device is marked as "Disconnected" without any consideration whether the state is just temporary or rather it has been like that for a long time, potentially requiring user intervention. This commit adds a new state called "Disconnected (Stale)" which is shown for devices that have been disconnected for longer than a week. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and the exact date is displayed otherwise. Additionally, when the date is older than 1 week, a note about that is displayed below the date. Furthermore, when the date becomes older than 1 month, the note text colour changes to orange, and when it exceeds 1 year, the colour changes again to red. This is done to provide the user with a visual clue that something may potentially be wrong and requires a manual fix. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
I've given this a shot in #8530. I deliberately haven't changed device state colour though, as I didn't really feel that it was necessary, and I rather just added "(Stale)" to the "Disconnected" state instead (similarly to the already used "Disconnect (Unused)"). This way it seems much less intrusive for those that don't care about the information while still providing the necessary tip for the concerned users. Please let me know what you think and if this is enough. |
…hing#7703) Currently, a disconnected device is marked as "Disconnected" without any consideration whether the state is just temporary or rather it has been like that for a long time, potentially requiring user intervention. This commit adds a new state called "Disconnected (Inactive)" which is shown for devices that have been disconnected for longer than a week. It also changes the "Last seen" information, so that "Never" is used only when the device hasn't connected at all, and the exact date is displayed otherwise. Additionally, when the date is older than 1 week, a note about that is displayed below the date. Furthermore, when the date becomes older than 1 month, the note text colour changes to orange, and when it exceeds 1 year, the colour changes again to red. This is done to provide the user with a visual clue that something may potentially be wrong and requires a manual fix. Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
* main: (36 commits) lib/protocol: Ignore inode time when xattr&ownership is ignored (fixes syncthing#8654) (syncthing#8655) lib/fs: Try to remove read only Windows files (fixes syncthing#3744) (syncthing#8650) gui: Add copy to clipboard, share by email, and share by SMS buttons to device IDs (fixes syncthing#2771, ref syncthing#3868) (syncthing#7984) gui, man, authors: Update docs, translations, and contributors build: Add GitHub actions build for Windows (syncthing#8627) gui: Fix connection type icon width (fixes syncthing#8592) (syncthing#8644) gui: Adjust connection type icon size scaling and alignment (syncthing#8645) docker: Use healthcheck endpoint (syncthing#8640) lib/connections: Use adaptive write size for rate limited connections (fixes syncthing#8630) (syncthing#8631) gui: Mark devices that haven't connected for a long time (fixes syncthing#7703) (syncthing#8530) gui: Fix rescan interval when add encrypted folder with watch for changes enabled (fixes syncthing#8570) (syncthing#8571) gui: Always show Out of Sync Items for remote devices (syncthing#8632) lib/fs: Let xattr test avoid non-test attributes (fixes syncthing#8601) (syncthing#8628) build: Add GitHub actions build for Windows gui, man, authors: Update docs, translations, and contributors gui: Display folder and device count number (syncthing#8615) gui, man, authors: Update docs, translations, and contributors lib/model, lib/protocol: Fix file comparisons (fixes syncthing#8594) (syncthing#8603) lib/scanner: More sensible debug output (syncthing#8596) gui: Allow automatic device ID selection on WebKit browsers (ref syncthing#8544) (syncthing#8597) ...
* main: (23 commits) lib/fs: Optimize WindowsInvalidFilename (syncthing#8687) gui, man, authors: Update docs, translations, and contributors cmd/syncthing: Use main logger in generate subcommand (fixes syncthing#8682) (syncthing#8685) build: Update all dependencies (fixes syncthing#8679) (syncthing#8680) gui, man, authors: Update docs, translations, and contributors lib/model: Correctly set xattrs on temp files (fixes syncthing#8667) (syncthing#8670) gui: Automatically dismiss authentication reminder when in LDAP mode (fixes syncthing#8661) (syncthing#8663) lib/model: Correctly handle xattrs on directories (fixes syncthing#8657) (syncthing#8658) lib/protocol: Ignore inode time when xattr&ownership is ignored (fixes syncthing#8654) (syncthing#8655) lib/fs: Try to remove read only Windows files (fixes syncthing#3744) (syncthing#8650) gui: Add copy to clipboard, share by email, and share by SMS buttons to device IDs (fixes syncthing#2771, ref syncthing#3868) (syncthing#7984) gui, man, authors: Update docs, translations, and contributors build: Add GitHub actions build for Windows (syncthing#8627) gui: Fix connection type icon width (fixes syncthing#8592) (syncthing#8644) gui: Adjust connection type icon size scaling and alignment (syncthing#8645) docker: Use healthcheck endpoint (syncthing#8640) lib/connections: Use adaptive write size for rate limited connections (fixes syncthing#8630) (syncthing#8631) gui: Mark devices that haven't connected for a long time (fixes syncthing#7703) (syncthing#8530) gui: Fix rescan interval when add encrypted folder with watch for changes enabled (fixes syncthing#8570) (syncthing#8571) gui: Always show Out of Sync Items for remote devices (syncthing#8632) ...
Currently folders that are up to date are shown like this:
However, the second folder has not been syncing for at least a year!
A problem that is not directly apparent from the overview. Only after inspecting the list of devices synced with this folder and then opening each device to look at the "last seen" value might it become clear that this folder has not been synced in a long time.
To help get trustworthy status update at first glance (something that instills trust in Syncthing) I suggest the above to be changed to:
The threshold for when a folder is considered possibly stale could be some high value by default but editable in the advanced settings of the folder. Let's say a default of 14 days as not all use cases have at least 1 devices online always every second. However, if a folder has not synced (not seen a single device) for weeks; I'd consider that something most people would want to know.
Update: This warning would align with the other similar orange warning when Syncthing knows it can't ever be synced:
The text was updated successfully, but these errors were encountered: