Skip to content

ns8-imapsync: operators need visibility into sync health and log access #8071

Description

@stephdl

When managing IMAP sync tasks, there is no way to know if a sync succeeded or failed without SSH access.

The task list shows whether a task is currently running, but nothing more:

  • No timestamp of the last completed sync
  • No indication of success or failure
  • No way to inspect what happened

When a sync fails silently — wrong credentials, unreachable server, IMAP error — the operator has no signal. They only find out when a user complains.

Logs exist on disk but are completely inaccessible from the UI. Diagnosing a failure requires SSH access and knowledge of where log files are stored. This is not viable for non-technical administrators.

There is also a usability gap: editing or deleting a task while it is running can corrupt its state, but nothing in the UI warns about this.

Proposed solution

  • Record the timestamp and exit code of each completed sync in a status file
  • Expose last sync time and result directly in the task list
  • Skip writing the status when the task is stopped manually (SIGTERM), to avoid misleading data
  • Add a get-log action that reads the task log and returns it to the UI, with a size cap and a truncation indicator for large files
  • Add a download button so operators can retrieve the full log when needed
  • Show a warning in the UI when the user tries to edit or delete a running task
  • Add auto-refresh for the task list

Alternative solutions

Operators can SSH into the server and read log files directly. This is not suitable for non-technical administrators and is not consistent with the NS8 management model.

Metadata

Metadata

Assignees

Labels

verifiedAll test cases were verified successfully

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Done

Relationships

None yet

Development

No branches or pull requests

Issue actions