如何阅读服务器日志

以下是运行查询时的一个日志示例

2021-07-07 15:53:18,560 DEBUG middleware.log :: POST /api/dataset 202 [ASYNC: completed] 46.9 ms (17 DB calls) App DB connections: 1/10 Jetty threads: 3/50 (4 idle, 0 queued) (72 total active threads) Queries in flight: 0 (0 queued); h2 DB 4 connections: 0/1 (0 threads blocked)

让我们解读一下日志

  • 日志时间: 2021-07-07 15:53:18,560
  • 日志级别: DEBUG。日志级别有多种类型。要了解更多信息,请查看Metabase 日志
  • 命名空间: middleware.log。您可以调整日志级别,以从该命名空间获取更多或更少的信息。
  • 方法: POST。HTTP 方法动词,如 POST、PUT、GET、DELETE。
  • 路径: /api/dataset。处理 URL。请注意,URL 参数不包括在内,这可能会使某些问题的调试变得有点棘手。
  • 代码: 202。HTTP 状态码。
  • 异步状态: [ASYNC: completed]。Metabase 是否能将结果传递到浏览器。如果 Metabase 无法传递结果,例如,如果某人启动查询并在查询完成前关闭浏览器,异步状态将显示“cancelled”(已取消)。
  • 响应时间: 46.9 ms。Metabase 处理请求所花费的时间(从 Metabase 收到请求到将结果返回给浏览器)。
  • 数据库调用: (17 DB calls)。使用的查询语句数量,除了对查询数据源的调用外,还包括对 Metabase 应用程序数据库的调用。
  • 应用程序数据库连接: App DB connections: 1/10。活动连接的数量以及可用的连接池。
  • Jetty 线程: Jetty threads: 3/50 (4 idle, 0 queued)。列出活动线程数和可用线程总池。(4 idle, 0 queued) 是备用热线程和排队线程的数量。如果您发现线程池中的线程数已达到最大值,请查看大规模 Metabase
  • Java 线程: (72 total active threads)。Metabase 正在使用的线程总数。
  • 正在执行的查询: Queries in flight: 0 (0 queued)。Metabase 连接的所有数据库源中活动和排队查询的数量。我们建议检查下面的“数据库信息”以排除与请求相关的数据库问题。
  • 数据库信息h2 DB 4 connections: 0/1 (0 threads blocked)。显示数据库类型、数据库 ID、活动连接数/连接池(以及队列)。此信息特定于与请求相关的数据库(在本例中为 POST 请求),而不适用于总体正在执行的查询。

阅读其他 Metabase 版本的文档。

© . All rights reserved.