ghcr.io/getsentry/symbolicator

ghcr.io/getsentry/symbolicator:26.5.2

ghcr.iolinux/amd6426.5.2大小: 78.47 MB更新于 2026年6月21日
让 AI 帮你使用轩辕镜像?

如果你使用 DeepSeek元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AIDeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

一个用于原生堆栈跟踪和[minidumps]的符号解析服务,支持[符号服务器]。它是[symbolic]库部分功能的灵活前端。

[文档]

包含的二进制文件

此仓库包含多个二进制 crate,可使用 cargo run -p 运行:

  • symbolicator:运行 symbolicator 服务器。不指定包调用 cargo run 时将运行此二进制文件。
  • symsorter:将调试文件排序为 symbolicator 可用的结构。
  • wasm-split:为 wasm 文件添加构建 ID。
  • symbolicli:在命令行界面执行符号解析。参见 README。

编译

Symbolicator 采用 [Rust] 编写,需要最新的稳定版 Rust 编译器。

要编译,请运行:

cargo build --release

生成的二进制文件位于 target/release/ 目录中,同时包含调试信息文件。在 Linux 上,调试信息是可执行文件的一部分,可能需要使用 objcopy 进行剥离。

与 Sentry 一起使用

以下内容需要最新的 Sentry Git 版本。

尽管 Symbolicator 旨在不依赖于 Sentry 的用例,但 [Sentry] 对 Symbolicator 有强依赖,以处理原生堆栈跟踪。要在本地开发环境中运行:

  • 在您的 ~/.sentry/sentry.conf.py 中:
# 允许 Symbolicator 的请求 IP 从 Sentry 获取调试文件。
INTERNAL_SYSTEM_IPS = ["127.0.0.1"]
  • 在您的 ~/.sentry/config.yml 中:
symbolicator.enabled: true

然后运行 sentry devservices up 以下载并启动 Symbolicator。

开发

要构建 Symbolicator,我们需要最新的稳定版 Rust

我们使用 VSCode 进行开发。此仓库包含配置代码风格、代码检查器和实用功能的设置文件。首次打开项目时,请确保安装推荐的扩展,它们将在编码过程中提供编辑器辅助。

仓库根目录包含一个 Makefile,其中包含用于开发的实用命令:

  • make check:运行代码格式检查和代码检查器。在创建拉取请求前使用此命令非常有用。
  • make test:运行单元测试、集成测试和 Python 包测试(详见下文)。
  • make all:运行所有检查和测试。此命令会运行大部分在 CI 中执行的任务。
  • make clean:删除所有构建产物、虚拟环境和缓存文件。

构建与运行

重建并运行 Symbolicator 的最简单方法是使用 cargo。根据配置,您可能需要运行本地 Sentry 实例。

# 使用所有功能重建并运行
cargo run -- run

要快速验证修改后 Symbolicator 是否可编译,您也可以使用 cargo check

cargo check

本地配置

默认情况下,Symbolicator 监听端口 3021。要覆盖此配置及其他配置值,请在项目根目录创建 local.yml 文件(默认情况下该文件不纳入版本控制)。然后启动 Symbolicator 并指定配置文件:

cargo run -- run --config local.yml

测试

测试套件包括单元测试和集成测试,两者均作为 Rust crate 的一部分实现,可通过以下命令运行:

# 默认功能的测试
make test

[!NOTE] 在 macOS 上,默认文件描述符限制为 256,此值过低会导致测试失败。运行测试前,请考虑将其增加到更高的值:

> ulimit -n 4096
>

代码检查

我们使用最新稳定频道的 rustfmtclippy 进行代码格式化和代码检查。为确保这些工具正确设置并使用正确配置运行,请使用以下 make 目标:

# 格式化整个代码库
make format

# 在整个代码库上运行 clippy
make lint

[文档]:https://getsentry.github.io/symbolicator/ [Sentry]:https://github.com/getsentry/sentry [minidumps]:https://docs.sentry.io/platforms/minidump/ [符号服务器]:[***] [symbolic]:https://github.com/getsentry/symbolic [Rust]:https://www.rust-lang.org/

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告