开发指南/开发流程/运营和维护/日志检索
# 日志检索

Lark开放平台为应用提供了日志检索工具，应用所有者、管理员、开发或者运营角色可以通过该工具，查看应用调用开放平台服务端 API 的日志数据、已推送事件的日志数据，以及客户端调用开放平台小程序 SDK 或 JSSDK 时的日志数据。

## 功能简介

应用的日志检索工具包含服务端日志检索、事件日志检索、客户端日志检索三项功能。
企业自建应用和商店应用均支持日志检索功能。

- **服务端日志检索**

用于查询应用调用Lark开放平台服务端 API 的日志，包含请求时长、请求 URL、请求返回错误码、错误信息等关键信息。该工具可以帮助你快速查看调用 API 时是否存在请求超时、失败等异常情况，同时工具提供了一键转发Lark客服的功能，你可以将无法解决的异常调用日志转发给Lark客服进行处理。

- **事件日志检索**

用于查询应用推送事件的日志，包含推送时间、事件类型、事件 ID、返回状态以及耗时等关键信息。该工具可以帮助你快速定位事件推送失败、重复推送或推送延时过长等异常问题，同时工具提供了一键转发Lark客服的功能，你可以将无法解决的异常事件日志转发给Lark客服进行处理。
- **客户端日志检索**

如果应用开启了小程序、小组件或网页应用的能力，该检索则用于查询应用在客户端内调用小程序 SDK 或 JSSDK 时的日志。当用户在客户端内使用应用遇到问题时，你可以根据异常时间与用户信息精准查找Lark客户端 API 请求报错或网络请求异常等日志。日志内容包含用户设备信息、Lark版本号、小程序包版本、错误信息等。

## 检索服务端日志

1. 登录[开发者后台](https://open.larksuite.com/app)，找到指定应用并进入应用详情页。

2. 在左侧导航栏，选择 **运营监控** > **日志检索**。

3. 在 **服务端日志检索** 页签内，配置查询参数，检索应用调用服务端 API 的日志数据。

仅支持查询 7 日内的 API 调用日志。

1. 配置查询参数。

- **起止时间段**：设置指定时间段查询服务端 API 调用情况。设置的时间段不能超过 24 小时。

场景示例：假如当前时间是 2023-07-05，则支持查询 2023-06-29 至 2023-07-05 范围内的 API 调用日志。每次只能查询 24 小时内的调用日志，例如，设置 2023-06-29 00:00:00 至 2023-06-29 23:59:59 时间段查询 API 调用日志。 

- **请求 URL**：服务端 API 对应的 HTTP URL，无需包含请求参数。

- **用户企业标识**（该过滤条件仅商店应用提供）：应用使用者所在企业的唯一标识，即`tenantKey`字段，在企业安装应用或用户登录应用并授权时，均会返回此字段。

- **Request ID**：定位 API 调用问题的标识。可输入请求返回响应头中的`X-Request-Id`、`X-Tt-Logid`进行查询。

- **用户 Open ID**：如果待查询的 API 使用用户访问凭证（user_access_token）进行鉴权，则可以输入相匹配的用户 open_id 进行检索。ID 获取方式参见[用户openID获取指南](https://open.larksuite.com/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)。

仅当前应用中的用户标识。不同应用中的同一用户对应的 Open ID 不同。

- **返回状态**：调用 API 后返回的调用状态。支持多选。

- **错误码**：调用 API 后返回的错误码。

- **错误信息**：调用 API 后返回的错误信息。

2. 点击 **查询**，查看检索结果。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/bc7a03e7c707bfbe38529ef255f7a71c_giSA5j56t0.png?height=1208&lazyload=true&maxWidth=600&width=2260)

你可以查看某一调用日志的详细信息。
点击右侧 **了解日志字段含义**，可查看各个字段的说明。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/941fc05fe0adcb52ae6c2023941ea26e_OGCIHZW1U3.png?height=1244&lazyload=true&maxWidth=600&width=2322)

<br>

4. （可选）点击页面顶部的 **转发给Lark客服**，将检索到的服务端日志信息发送Lark客服获取进一步帮助。

当你检索服务端日志后，仍然无法解决 API 调用异常问题，则可以通过该一键转发功能快速联系Lark客服进行问题排查。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/96e3aad585a7db76eecb0115710d3de4_hFJXRAhe1t.png?height=918&lazyload=true&maxWidth=600&width=2166)

## 检索事件日志

1. 登录[开发者后台](https://open.larksuite.com/app)，找到指定应用并进入应用详情页。

2. 在左侧导航栏，选择 **运营监控** > **日志检索**。

3. 在 **事件日志检索** 页签内，配置查询参数，检索应用推送事件的日志数据。

仅支持查询 7 日内的事件推送日志。

1. 配置查询参数。

- **起止时间段**：设置指定时间段查询事件推送情况。设置的时间段不能超过 24 小时。

场景示例：假如当前时间是 2023-07-05，则支持查询 2023-06-29 至 2023-07-05 范围内的事件推送日志。每次只能查询 24 小时内的推送日志，例如，设置 2023-06-29 00:00:00 至 2023-06-29 23:59:59 时间段查询事件推送日志。

- **事件类型**：指定事件的类型。各事件的事件类型，参见[事件列表](https://open.larksuite.com/document/ukTMukTMukTM/uYDNxYjL2QTM24iN0EjN/event-list)。

- **Event ID**：事件 ID。

- 如果事件体中不包含头部信息（header），则填写对应的`UUID`字段。

- 如果事件体中包含头部信息（header），则填写对应的`event_id`字段。

- **用户企业标识**（该过滤条件仅商店应用提供）：应用使用者所在企业的唯一标识，即`tenantKey`字段，在企业安装应用或用户登录应用并授权时，均会返回此字段。

- **返回状态**：事件推送的返回状态。支持多选。

- **错误信息**：事件推送失败时的错误信息。

<br>

2. 点击 **查询**，查看检索结果。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/42bd8f492346abdc963e45c2a6c201a0_LRqmDbdief.png?height=758&lazyload=true&maxWidth=600&width=2120)

你可以查看某一事件推送的详细信息。
点击右侧 **了解日志字段含义**，可查看各个字段的说明。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/9886f698f3c82f59316ef7645449531e_riuz0gGrh8.png?height=1160&lazyload=true&maxWidth=600&width=2212)

<br>

4. （可选）点击页面顶部的 **转发给Lark客服**，将检索到的服务端日志信息发送Lark客服获取进一步帮助。

当你检索服务端日志后，仍然无法解决 API 调用异常问题，则可以通过该一键转发功能快速联系Lark客服进行问题排查。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/26ade8731668ff9e44178d8559de0e1d_kJp0Gr68F8.png?height=746&lazyload=true&maxWidth=600&width=2188)

## 检索客户端日志

1. 登录[开发者后台](https://open.larksuite.com/app)，找到指定应用并进入应用详情页。

2. 在左侧导航栏，选择 **运营监控** > **日志检索**。

3. 在 **客户端日志检索** 页签内，配置查询参数，检索应用推送事件的日志数据。

说明：

- 仅支持查询 7 日内的客户端日志。
    - 仅Lark客户端 V4.5 及以上的版本，支持客户端日志检索功能。

操作步骤：

1. 配置查询参数。

- **起止时间段**：设置指定时间段查询客户端调用 SDK 的情况。设置的时间段不能超过 24 小时。

场景示例：假如当前时间是 2023-07-05，则支持查询 2023-06-29 至 2023-07-05 范围内的客户端调用日志。每次只能查询 24 小时内的推送日志，例如，设置 2023-06-29 00:00:00 至 2023-06-29 23:59:59 时间段查询客户端调用日志。

- **用户 Open ID**：应用使用者对应的用户 open_id。ID 获取方式参见[如何获取用户 open_id](https://open.larksuite.com/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)。

仅当前应用中的用户标识。不同应用中的同一用户对应的 Open ID 不同。

- **应用功能**：根据实际情况，选择 **小程序**、**网页应用** 或者 **小组件**，只能选择其一。

- **返回状态**：客户端调用的返回状态。支持多选。

- **日志关键词**：用于过滤指定日志信息的关键词。支持设置多个，使用空格间隔。

2. 点击 **查询**，查看检索结果。

![](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/f0af982c6f6fd438ee29910da58f9a44_4EAO4vSv9R.png?height=904&lazyload=true&maxWidth=600&width=1716)

## 常见问题

### 为什么我查询不到客户端调用日志？

答：可能原因如下：

- 原因一：用户的Lark版本过低，日志未被收集。目前，仅 V4.5 及以上版本Lark支持客户端日志检索功能。

- 原因二：日志上报有延迟，请稍后进行查看。日志一般可在半小时内查询，特殊情况下（如用户网络不稳定、用户退出Lark等）一天后才可查看。