Get started
Login
© 2024

Generate a bug report

The Tailscale support team can help troubleshoot certain issues based on diagnostic logs. If you are working with the support team to troubleshoot an issue, you might be asked to create a bug report. A bug report is a random indicator that marks a section of the diagnostic logs to give us better visibility into what is occurring at a specific time, which can help make triage easier.

To generate a bug report, you must be directly using the device—a bug report cannot be generated remotely.

A bug report looks like this:

BUG-1b7641a16971a9cd75822c0ed8043fee70ae88cf05c52981dc220eb96a5c49a8-20210427151443Z-fbcd4fd3a4b7ad94

The bug report identifier shares no personally-identifiable information, and is unused unless you share the bug report with our team. You can generate a bug report by using the Tailscale client applications, or the bugreport command in the Tailscale CLI.

After you generate a bug report, copy and paste the value that you can then share when you contact support.

Generating a bug report by using the client application

  1. Hold the Option key and click the Tailscale icon in the menu bar.
  2. Click Debug and then click Bug report.
  3. Click Copy report ID to copy the bug report.

If you're experiencing an issue on a Mac and contact Tailscale support for help, we might ask you to create a macOS Configuration Report. You can do this by clicking on the Export Configuration Report... button in the same view used to generate the bug report identifier. The configuration report is a text file (~0.5 MB in size) that includes information gathered by various diagnostic tools on your Mac, such as netstat, ifconfig, lsappinfo, systemextensionsctl, and more. Sharing this report with the support team will speed up the troubleshooting process because it gives them a detailed look at what might be causing the issue.

Since many Tailscale issues stem from conflicts with other software installed on your Mac, the report also includes a list of installed third-party applications and system/kernel extensions. While the Tailscale support team strives to handle your personal information carefully, it's a good idea to check the configuration report yourself before sending it to ensure you're not accidentally disclosing any sensitive information.

Generating a bug report by using the CLI

The Tailscale CLI is supported only for Linux, macOS, and Windows.

Run the bugreport command:

tailscale bugreport

If you are using macOS and you haven't set your system path to include the Tailscale command executable, you need to specify the path to tailscale. For example:

/Applications/Tailscale.app/Contents/MacOS/Tailscale bugreport

You can use the following flags with the bugreport command:

  • --diagnose Prints additional verbose information about the system to the Tailscale logs after generating a bugreport identifier, which can then be viewed by our support team. Defaults to false.
  • --record Pause and then write another bugreport. Use this flag to create an initial bugreport identifier. During the pause, perform the action that reproduces your issue. Then, press Enter to create a second bugreport identifier. Share both bug identifiers with our team. Defaults to false.

What is shared in a bug report

The components of the bug report identifier are:

  • BUG to signal that this is a bug report
  • The public key for your device's logs, used by Tailscale support to locate the correct logs
  • The time that the bug report was created
  • A random number, used by Tailscale support to locate the correct location within the log

When a bug report is generated, the bug report identifier is written to the client logs, along with current health status, the current network map supplied by the coordination server, and some additional OS-dependent information that we have found useful to collect when responding to support requests, such as:

  • Windows registry settings relating to the Tailscale application
  • Windows page file settings, DLL versions, a list of installed security applications, and network interface information
  • Some additional details about internal state are also recorded if the bug report is generated using the CLI with the --diagnose option.

The bug report details are recorded in the client logs. You can see exactly what was sent by reading those logs. You can also inspect the code that generates the bug reports in GitHub, search for serveBugReport.

If client logging is disabled then bug reports are not generated even when using the tailscale bugreport command and nothing is sent to Tailscale.