
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本文参考来源:Rungutan博客
Web分析中的性能监控是指定期验证和跟踪数字平台的运行状况及一致性的行为。数字性能监控工具包括仪表板和警报系统。通过选择一些定期跟踪的关键KPI,您可以轻松监控数字性能,并在性能发生重大变化时采取行动。
性能监控本质上是一套流程和工具,用于确定应用在云中的运行速度。由于云应用具有高度分布式的特性,需要专门的软件来跟踪网络和应用之间的流量走向,以真正了解应用的性能。有一个专门衡量云应用、基础设施和网络性能的行业,称为应用性能监控(APM)。APM工具会告诉您用户在网站上可能遇到的延迟,或基于其测量的遥测数据确定网络中的瓶颈。APM工具由开发人员和基础设施工程师安装,运维团队监控这些实时系统以确保所有系统正常运行。
简而言之 -> 当您的网站拿到"成绩单"时。
Sentry是一款帮助您实时监控和修复崩溃的服务。服务器基于Python构建,但包含完整的API,可从任何语言、任何应用发送事件。
借助性能监控,团队可以将慢加载页面追溯到其API调用,并显示所有相关错误。这样,工程经理和开发人员可以解决瓶颈,提供满足客户需求的快速、可靠体验。
比了解发生错误更重要的是了解用户如何受到该错误的影响。通过Google的Web Vitals收集现场数据(可变网络速度、浏览器、设备、地区),性能监控帮助您了解用户层面的情况。现在您可以知道用户是否正遭遇加载缓慢、看到意外变化或难以与页面交互。
将性能不佳的页面不仅追溯到其API调用,还能追溯到其子调用。性能监控的事件详情瀑布流可视化从始至终展示客户体验,同时将用户设备数据与其预期操作关联。
通过性能监控,您可以在一个综合视图中按最慢持续时间、相关问题或用户数量查看事务。发布标记增加了另一层上下文,让团队可以评估客户对最近推送到生产环境的代码的反应。
在继续之前需要明确 -> Sentry以https://sentry.io/_/open-source/%E4%B8%BA%E5%82%B2%EF%BC%8C%E4%BD%86%E4%B9%9F%E6%8F%90%E4%BE%9B%E5%9F%BA%E4%BA%8E%E4%BA%91%E7%9A%84https://sentry.io/welcome/%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%EF%BC%8C%E9%80%82%E5%90%88%E4%B8%8D%E6%83%B3%E9%83%A8%E7%BD%B2%E3%80%81%E7%AE%A1%E7%90%86%E5%92%8C%E7%BB%B4%E6%8A%A4%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD%E7%9A%84%E7%94%A8%E6%88%B7%E3%80%82
如果您决定不使用云版本,有几种社区贡献的本地部署方式:
不过这两种解决方案都有一些缺点,具体如下:
因此,对于使用Amazon Web Services作为首选云提供商的用户,我们提供了完全可扩展、易于维护且安全的基础设施,基于以下AWS服务:
部署的基础设施 diagram 如下:
您可以通过以下简单步骤部署:
注意:建议在初始部署完成后创建自己的管理员并删除初始管理员!
作为// 文章 - 如何在CI/CD流水线中包含负载测试?中提到的CI/CD流水线定义的一部分,您只需在Sentry中创建用于监控的METRIC ALERTS,并将负载测试包含到流水线中:
作为参考,Rungutan的GitHub Actions流水线示例如下:
yamlname: Load test with Rungutan on: release: types: - created jobs: load: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Load test your platform with Rungutan uses: Rungutan/rungutan-actions@1.0.0 env: RUNGUTAN_TEAM_ID: ${{ secrets.RUNGUTAN_TEAM_ID }} RUNGUTAN_API_KEY: ${{ secrets.RUNGUTAN_API_KEY }} RUNGUTAN_TEST_FILE: test_file.json RUNGUTAN_TEST_NAME: ${{ github.repository }}-${{ github.ref }}
Slack集成帮助您设置一个渠道,在Slack组织中接收警报,团队成员可以通过将其分配给特定人员或在当前或下一个版本中解决来对警报做出反应。
在Slack端设置Slack集成的步骤虽然有点复杂,但并非不可能,以获取所需的所有功能!
设置步骤如下:
访问[*] New App,命名(如"Sentry")并选择您当前的工作区
进入OAuth & Permissions,点击Add New Redirect URL并设置为[***]{SentryDnsRecord}/extensions/slack/setup/
仍在OAuth & Permissions下,在Bot Token Scopes中启用以下权限:
进入Event Subscriptions,启用并设置Request URL为[***]{SentryDnsRecord}/extensions/slack/event/
仍在Event Subscriptions下,点击"Add Bot User Event"(在"Subscribe to bot events"部分)并添加link_shared(如果尚未存在)
仍在Event Subscriptions下,点击"Add Domain"(在"App unfurl domains"部分)并添加您的Sentry DNS记录
完成所有设置后,返回Basic Information,点击Install App并记录以下将在CloudFormation模板中重用的信息:
完成Slack应用定义后,访问Sentry并:
注意:为了充分利用此Slack集成,您需要使用在Slack中具有ADMIN权限的账户执行这些步骤!
Rungutan和Sentry是同一拼图的两块:捕获和观察用户在平台上的活动。
您的平台与互联网上所有其他API平台一样非常敏感。任何调整、任何非优化代码、任何不适当的基础设施变更都可能对用户体验产生巨大影响。
因此,持续了解平台在任何时刻的行为对每个技术人员都至关重要。
老实说,这些平台是我们的"孩子"。它们是我们思想中诞生的最好事物之一,应该得到应有的尊重。
这正是为什么每次发布后进行负载测试、监控和警报至关重要!
简而言之 -> Rungutan模拟高用户活动,Sentry告诉您在规模上导致问题的确切代码段。
我们非常自豪地确保我们的平台尽可能稳定和可扩展,我们的监控和警报系统会对最微小的异常做出反应!
例如,这是我们实时Web平台的加载时间统计:
从版本https://github.com/Rungutan/sentry-performance-monitoring/releases/tag/1.4.0%E5%BC%80%E5%A7%8B%EF%BC%8C%E6%88%91%E4%BB%AC%E8%BF%98%E4%B8%BANAT%E7%BD%91%E5%85%B3%E6%B7%BB%E5%8A%A0%E4%BA%86%E9%AB%98%E5%8F%AF%E7%94%A8%E6%80%A7%E3%80%82%E4%BD%86%E5%9C%A8%E6%AD%A4%E4%B9%8B%E5%89%8D%EF%BC%8C%E8%AF%B7%E7%A1%AE%E4%BF%9D%E6%82%A8%E7%9A%84VPC%E5%BC%B9%E6%80%A7IP%E9%99%90%E5%88%B6%E5%8F%AF%E4%BB%A5%E6%94%AF%E6%8C%81%E9%A2%9D%E5%A4%963%E4%B8%AA%EF%BC%81
您可以在https://console.aws.amazon.com/servicequotas/home#!/services/ec2/quotas%E7%9A%84%22**EC2-VPC Elastic IPs**"下找到当前的应用配额值。
注意:AWS会自动批准从5到20的增加请求 😊
每次创建新项目时,Sentry创建的Client DSN记录如下所示:
https://some_random_public_key_string_here@o1.ingest.${the_sentry_dns_record}/2
因此,如果SentryDnsRecord的参数值为sentry.rungutan.com,则DSN为:
https://some_random_public_key_string_here@o1.ingest.sentry.rungutan.com/2
为什么这很重要?
因为您需要确保SSL证书也能处理该特定的ingest域名
如果无法使用默认ingest记录,解决方法是依赖为SentryRelayAlternativeDnsRecord设置的参数值。
这意味着,如果SentryRelayAlternativeDnsRecord的值为sentry-relay.rungutan.com,则应使用以下DSN:
https://some_random_public_key_string_here@sentry-relay.rungutan.com/2
此外,我必须强调,请务必为以下参数使用自定义值:
性能测试和性能监控相辅相成,任何优秀的DevOps、开发人员或QA的工具链中都不能缺少它们。
为您的平台选择合适的工具当然很困难,但Rungutan和Sentry已经证明自己具备生产能力并随时可以投入使用!
不要浪费宝贵的时间猜测平台为何变慢!
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务