参与贡献

编辑此文档

翻译文档,或在您的计算机上打开完整项目。

在您选择提交工作成果之前,不会发布任何内容。

调试

调查问题并分析应用性能

本指南介绍用于检查和调查 Wails 应用中潜在性能问题的各种工具,具体使用

创建性能跟踪

1

为应用启用跟踪

在靠近程序入口点的位置,确保存在类似下面的代码

go
// Create the file to store our trace data within
traceFile, err := os.Create("trace.out")
if err != nil {
  log.Fatalf("trace.out could not be created: %v", err)
}

// Start the trace
if err := trace.Start(traceFile); err != nil {
  _ = traceFile.Close()
  log.Fatalf("trace.start could not start: %v", err)
}

// Trace cleanup on exit. Alternatively,
defer func() {
  trace.Stop()
  _ = traceFile.Close()
}()

...Start your wails app here...

输出将保存到工作路径中的trace.out,其中的指标涵盖应用的整个运行周期。默认跟踪数据相当原始;强烈建议进一步阅读有关 trace 的资料,以添加更多上下文信息,并限制实际记录的内容。例如:WithRegion, NewTask, Log

2

运行应用以创建跟踪数据

应用运行时将持续生成跟踪数据,直至退出。因此,请在应用中执行一些操作,并在完成后退出

3

安装可视化辅助工具

某些视图需要Graphviz。可以运行dot -V来验证是否已安装

bash
# macOS
brew install graphviz

# Ubuntu/Debian
sudo apt-get install graphviz

# Arch
sudo pacman -S graphviz
4

可视化跟踪数据

获得跟踪数据后,即可启动 Web 界面

bash
go tool trace trace.out

这应该会使用默认浏览器打开跟踪事件查看器的主页(建议使用基于 Chrome 的浏览器)。

对于首次使用的用户,Syscall profile屏幕可能最为实用。它会详细列出程序正在执行的操作及其耗时

编辑页面

最后更新: