# Debug 内存与性能问题

如果感觉到内存和性能上有问题，可以用 mosdns 内置的 pprof 工具进行分析。

## 自己分析

如果有相关知识和能力的话，可自行使用 pprof。

1. 配置文件中填入 api.http 地址。启用 api 服务器。
2. pprof 位于  `http://<api_addr>/debug/pprof/` 。

## 提交给开发者

如果发现内存和性能问题，将 pprof 数据提交给开发者可以帮助他们快速定位问题。下载数据的方式非常简单。

* 确保配置文件中填入了 api.http 地址。mosdns 已启用 api 服务器。
* 出现异常时，浏览器访问以下网址，下载采样数据。

```
# <api_addr> 替换成 api 服务器的地址。
# 内存采样数据
http://<api_addr>/debug/pprof/allocs
http://<api_addr>/debug/pprof/goroutine
http://<api_addr>/debug/pprof/heap

# CPU 采样，仅 CPU 占用异常时需要
http://<api_addr>/debug/pprof/profile?seconds=5
```

* 将采样数据上传给开发者。

补充:

* 采样数据仅包含程序代码层面运行次数统计(某行代码运行了多久，占用了多少内存)，不是内存数据，不包含任何用户信息，可以随便分享。
