Skip to main content

Version Update Notifications

Insights includes a version checker that periodically checks GitHub for a newer release and notifies the operator via a log message and a badge in the web UI. It never downloads or replaces the binary automatically. Surfacing an update is a notification only, a deliberate safety decision for a system handling critical data.

Configuration​

FieldCLI FlagEnvironment VariableDefaultDescription
enabled--updaterINSIGHTS_UPDATERtrueEnable periodic version checks
interval--updater.intervalINSIGHTS_UPDATER_INTERVAL1hInterval between version checks

YAML example:

updater:
enabled: true
interval: 1h

insights serve, insights web and insights-collector all accept these settings, from flags, environment variables or the updater: section of a config file. A collector has no web UI, so there the log message is the only notification.

The release repository is compiled into the binary at build time, so there is no URL or channel to configure. The version checker disables itself (with an info log) when:

  • enabled is false
  • The running binary reports no compiled-in version (a dev build, not an official release)
  • No release repository was compiled into the binary

How It Works​

  1. Check loop: on startup the updater checks immediately, then repeats on the configured interval.
  2. Fetch latest release: GET https://api.github.com/repos/{repo}/releases/latest (30 s timeout), where {repo} is the release repository baked into the binary.
  3. Compare versions: the latest tag and the running version are normalized to vX.Y.Z and compared with semantic-version ordering. If the running version is greater than or equal to the latest, no action is taken.
  4. Notify: when a newer version is available:
    • An INFO log is emitted: "new version available" with current, latest, release_url and download_url fields.
    • The version info (latest version, a platform-specific download URL, and the release notes rendered through GitHub's Markdown API) is stored and shown in the web UI.

A failed request to GitHub logs a warning ("failed to fetch latest release") and leaves the last result in place until the next check.

No binary download, replacement, or process restart occurs. The download URL points at the official distribution for your build (the release download for trial builds, or the Synadia purchases portal otherwise).

UI Notification​

When a newer version is available, a small pulsing amber dot appears on the info button in the toolbar (top-right). Opening the info dialog shows a Version section with:

  • An "Update available" line showing the current version → the latest version.
  • A Get update button linking to the platform-specific download, shown when the build knows a download location.
  • A What's new panel rendering the release notes (fetched and rendered from GitHub), with a "View on GitHub" link. When the notes could not be rendered, a link to the release notes on GitHub takes its place.

When the instance is already on the latest version, the same section shows the current version with an "Up to date" status. A Check for updates button under either state runs a check immediately instead of waiting for the next interval. The indicator persists across navigation until the instance is restarted on the newer version; if GitHub becomes unreachable, the last successfully detected state continues to be shown.