开发人员希望能够回答“我的应用程序为什么这么慢?”这个问题。现代软件系统是分布式且复杂的,这使得诊断影响客户体验的问题变得越来越困难。
我们设计新的追踪和指标功能时考虑到了这些问题。这些功能使 Prisma 更具可观测性,也更容易监控和调试。
通过追踪获取每个 Prisma 操作的详细洞察
Prisma 中的追踪功能提供了 Prisma Client 执行的每个查询的详细视图,包括执行每个查询所花费的时间。这对于调试性能问题、识别瓶颈和理解数据库操作的行为非常有用。
将追踪可视化为瀑布图
使用 Jaeger 或 Honeycomb 等追踪工具,可以将追踪可视化为如下所示的瀑布图:

Prisma 追踪符合 OpenTelemetry 标准
追踪是一个强大的工具,可以帮助您跟踪请求在应用程序中的流动。这对于调试分布式系统尤其有用,因为每个请求都可能跨越多个服务。为了充分利用追踪的强大功能,应在整个应用程序中端到端地实现它。
Prisma 中的追踪功能完全符合 OpenTelemetry 标准,因此您可以将其无缝集成到您的端到端应用程序追踪设置中。这还意味着您可以将追踪数据导出到任何 OpenTelemetry 兼容的追踪系统,例如 Jaeger、Zipkin、Honeycomb、Datadog 等。

要开始使用追踪,请查看追踪文档。
使用指标监控系统健康和性能
指标是一个新功能,允许您监控 Prisma 如何与数据库交互。指标公开了一组计数器、仪表和直方图,提供有关 Prisma 状态和数据库连接的信息。我们公开的指标包括:
- 执行的 Prisma Client 查询总数 (
prisma_client_queries_total) - 执行的 SQL 或 MongoDB 查询总数 (
prisma_datasource_queries_total) - 活动的数据库连接数 (
prisma_pool_connections_open) - 包含所有已执行 Prisma Client 查询持续时间的直方图 (
prisma_client_queries_duration_histogram_ms_bucket) - ...以及更多!
注意:公开指标的完整列表可在指标文档中找到。
Prisma 常常感觉像一个黑匣子,它神奇地代表您与数据库交互。当出现问题时,这种缺乏 Prisma 内部工作透明度的情况可能会成为一个问题。通过指标,我们旨在让您更好地了解 Prisma 在底层做了什么,以便您可以更轻松地诊断和排查问题。
指标可以与外部监控系统集成
指标可以直接由您的应用程序分析,也可以发送到外部监控系统和时间序列数据库,例如 Prometheus 或 StatsD。与这些外部系统集成可以通过提供以下开箱即用的功能显著提高您的监控能力:
- 通过可视化和仪表板进行实时性能监控
- 历史数据的查询和分析
- 针对故障和性能下降的精确自动化警报
例如,通过将流行的可视化工具 Grafana 集成到您的指标管道中,您可以创建详细的仪表板和图表:
总之,指标可以帮助您分析和监控应用程序的健康状况。它还有助于识别性能问题和配置错误,以便您可以快速采取必要的行动。
要开始使用指标,请查看指标文档。
追踪与指标——何时使用哪个?
追踪有助于获取有关每个操作生命周期的精细信息。追踪在分布式环境中特别有价值,因为单个请求可以经过多个服务。
如果您想获取聚合数值数据来监控应用程序的健康和性能,那么请考虑使用指标。
同样重要的是要注意,追踪和指标是互补的功能。它们可以一起使用以提高系统的可观测性。
开始使用追踪和指标
要开始使用追踪和指标:
分享您的反馈
我们渴望听到您的声音!试用这些功能,让我们知道您的想法。
📊 分享您对追踪的反馈。
📈 分享您对指标的反馈。
🚀 如果您计划将这些功能用于任务关键型应用程序,请联系我们讨论您的用例。
不要错过下一篇文章!
订阅 Prisma 新闻通讯