New in version 1.2.0: Automatic crash reporting is available from version 1.2.0.

Automatic Crash Reporting

Automatic crash reporting sends reports of crashes or “panics” to the developers of Syncthing. This crash report contains the version information of Syncthing (equivalent to the output of syncthing --version) and a technical trace of what the various threads / routines in Syncthing were doing at the time of the crash.

The crash report does not include log data, file names, device IDs, statistics, a unique identifier, or any other personally identifiable information. Crash reporting is enabled out of the box for most users, but can be disabled in the advanced configuration dialog.

The following is an example of a crash report as sent:

07:48:24 INFO: syncthing v1.1.4-rc.1+24-g39ecb7ad-quic3 "Erbium Earthworm" (go1.12.5 darwin-amd64) jb@kvin.kastelo.net 2019-05-21 20:36:38 UTC
Panic at 2019-05-22T07:48:25+02:00
panic: interface conversion: *pfilter.FilteredConn is not net.Conn: missing method Read

goroutine 106 [running]:
github.com/syncthing/syncthing/lib/connections.(*quicListener).Serve(0xc000158000)
        /buildagent/work/github.com/syncthing/syncthing/lib/connections/quic_listen.go:74 +0x41b
github.com/thejerf/suture.(*Supervisor).runService.func1(0xc0001c6690, 0xc000000000, 0x54b4728, 0xc000158000)
        /Users/jb/go/pkg/mod/github.com/thejerf/suture@v3.0.2+incompatible/supervisor.go:600 +0x47
created by github.com/thejerf/suture.(*Supervisor).runService
        /Users/jb/go/pkg/mod/github.com/thejerf/suture@v3.0.2+incompatible/supervisor.go:588 +0x5b

goroutine 1 [runnable]:
github.com/syncthing/syncthing/lib/auto.Assets(0xc0000fa280)
        /buildagent/work/github.com/syncthing/syncthing/lib/auto/gui.files.go:131 +0x4936
github.com/syncthing/syncthing/lib/api.newStaticsServer(0xc0002229b5, 0x7, 0xc00003a300, 0x33, 0xc00022297c)
        /buildagent/work/github.com/syncthing/syncthing/lib/api/api_statics.go:38 +0x37
github.com/syncthing/syncthing/lib/api.New(0x5d4a557355ee1a96, 0x95ccd59f7d44241, 0x23a9c69bae83ac87, 0x6ee52bc80a137f7b, 0x4c4bb20, 0xc000069800, 0xc00003a300, 0x33, 0x496ae2c, 0x9, ...)
        /buildagent/work/github.com/syncthing/syncthing/lib/api/api.go:108 +0xb1
main.setupGUI(0xc000296000, 0x4c4bb20, 0xc000069800, 0x4c504e0, 0xc000148000, 0x4c27aa0, 0xc0001565f0, 0x4c27aa0, 0xc000156690, 0x4c42820, ...)
        /buildagent/work/github.com/syncthing/syncthing/cmd/syncthing/main.go:1092 +0x31f
main.syncthingMain(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49651b4, 0x1, 0x0, 0x0, ...)
        /buildagent/work/github.com/syncthing/syncthing/cmd/syncthing/main.go:873 +0x1bc5

Note that the username and hostname of the machine where Syncthing was built will be included in the crash log as part of the version string. This information is essential for the developers to interpret the log in context. If you compile Syncthing locally and want to prevent your build from having such data embedded, see Version Tagging.

For a more detailed description of the format and how the sending happens, see Automatic Crash Reporting for Developers.