> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kasoftware.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 日志页面

> 如何使用知行之桥日志页面查看和处理消息、SLA、应用程序日志等。

知行之桥 维护多种类型活动的日志，包括[消息](#消息日志)、[SLA](#sla-日志)、[应用程序](#应用程序日志)和[访问](#访问日志)请求、[自动化](#自动化日志)决策、[审计](#审计日志)配置更改以及[个人设置](#个人设置日志)活动。使用**日志**页面查看和处理你的日志。每种日志类型作为单独的表存储在应用程序数据库中。在[日志](#日志选项卡)选项卡中查看应用程序、自动化、访问、审计和个人设置日志。

> [!NOTE]
>
> 日期/时间条目始终按照浏览器的本地时区和日期格式设置进行本地化显示，因此即使浏览到托管在不同时区的服务器，显示的时间戳也反映本地时间。

## 搜索和过滤日志

每个**日志**页面选项卡的顶部都有一个搜索栏，你可以使用它来搜索该页面上的所有日志。点击漏斗图标可打开上下文相关的过滤器部分，每种日志类型都有不同的选项。例如，如下图所示，“消息”选项卡具有针对跟踪消息头、时间、端口类型、工作区、端口 Id 和状态的过滤器。

![Log filter panel](https://mintcdn.com/qiao/HyyOl9gYIsxaiGgh/26.4/images/log_filter.png?fit=max\&auto=format\&n=HyyOl9gYIsxaiGgh\&q=85\&s=b0d1229d875895bfe31fb5398ccdb9b5)

你可以在单个搜索中同时使用过滤器选项*和*搜索栏来缩小返回的结果。下图显示了过去 24 小时内状态为 Success 且消息文本中包含 `REST` 的消息。

![Filtered messages example](https://mintcdn.com/qiao/HyyOl9gYIsxaiGgh/26.4/images/log_filter_messages.png?fit=max\&auto=format\&n=HyyOl9gYIsxaiGgh\&q=85\&s=09ada9831aced87e4b608430fd46e9a9)

### 跟踪消息头

知行之桥 支持使用额外的可搜索元数据（跟踪消息头）作为在**消息**选项卡中过滤结果的额外方式。你可以通过多种方式添加跟踪消息头：

* **系统设置 > 高级**页面的**高级设置**部分中的**跟踪消息头**字段允许你提供以逗号分隔的自定义消息头名称列表。

* 某些端口（如 X12）在**高级**选项卡中具有设置，可让你选择跟踪某些消息头，如 ISA08。

* XML Map 端口允许你右键单击一个元素，并将其作为跟踪消息头添加到输出消息。

* ArcScript 中的 `_message` 项允许你通过 `_message.trackedheader:HeaderName` 语法设置跟踪消息头。要查看使用 `_message` 的其他示例，请阅读 [知行之桥消息](https://docs.kasoftware.com/26.4/self-hosted/zh/scripting/introduction-to-arcscript.md#知行之桥消息（_message）)。

知行之桥 在文件于工作流中处理时向文件添加元数据消息头。将鼠标悬停在消息上并点击**查看详情**即可找到这些消息头。你可以通过以下方式执行此操作：

* 在**消息**选项卡中展开消息

* 打开**消息详情**页面

* 查看端口的**交易**选项卡

## 消息日志

**消息**选项卡提供消息通过工作流的完整过程洞察，其中可能包含许多交易。你可能经常需要查看收到的消息发生了什么，此功能可以让你看到消息在工作流中传递时的完整情况。

消息表包含消息的完整列表。默认情况下，列表按**最新消息**列排序，但你可以点击任意列名按该列排序。它显示以下详细信息：

* **最新消息**——消息的最新文件名，附带与此消息相关的最后一次活动的时间戳。点击此链接可打开窗口以预览消息内容，并可选择下载、复制或格式化。

* **工作流开始和最后处理**——消息来源的[端口 Id](../../connectors)，以及处理与该消息相关交易的最后一个端口的端口 Id。点击端口 Id 可在[工作流设计器](https://docs.kasoftware.com/26.4/self-hosted/zh/flows/designing-a-flow.md)中打开端口配置页面。

* **状态**——消息的状态。选项为：
  * Success
  * Warning
  * Error
  * Pending
  * Skipped

* **总处理时间**——消息在工作流中进行处理所花费的时间

搜索栏和过滤器部分让你可以根据上面提到的列以及任何跟踪消息头进行过滤。下图显示了一个示例过滤器：

![Messages filter example](https://mintcdn.com/qiao/HyyOl9gYIsxaiGgh/26.4/images/messages_filter.png?fit=max\&auto=format\&n=HyyOl9gYIsxaiGgh\&q=85\&s=a813f9372232e3de0054270f2ca9f189)

要打开消息的**消息工作流**页面，请将鼠标悬停在消息上，点击最右侧出现的箭头。此页面显示工作流中的所有步骤，以及关联的文档、其他详细信息和日志。

![Message workflow page](https://mintcdn.com/qiao/HyyOl9gYIsxaiGgh/26.4/images/message_view_details.png?fit=max\&auto=format\&n=HyyOl9gYIsxaiGgh\&q=85\&s=9af3f7436c2fef91563f462beb53823f)

使用消息左侧的展开器查看消息**详情**，如下所示。

![Message details card](https://mintcdn.com/qiao/HyyOl9gYIsxaiGgh/26.4/images/message_details.png?fit=max\&auto=format\&n=HyyOl9gYIsxaiGgh\&q=85\&s=46ec880a5b9f83518dd622f0fafe4d57)

该卡包含：

* 消息 Id
* 消息产生的时间
* 与消息关联的跟踪消息头列表
* 与消息关联的其他消息头列表（未跟踪）
* 与消息状态相关的消息。例如，如果状态为 *Error*，则卡片会在摘要中显示导致此状态的错误消息。

消息的**日志**选项卡列出了与消息处理相关的日志。要在 UI 中预览日志内容（并可选择下载文件），请点击**文件名**列中的链接。

要查看或下载日志条目，请点击**日志**选项卡。将鼠标悬停在感兴趣的条目上，然后使用下载图标 ![download icon](https://mintcdn.com/qiao/92y00drsn6lqgU2C/26.4/images/download_icon.png?fit=max\&auto=format\&n=92y00drsn6lqgU2C\&q=85\&s=ba117b53f832a1fb268e14bc4362fac9) 下载单个日志文件。或者，使用**下载所有日志**按钮下载包含与消息相关的所有日志的 zip 文件。

## 诊断交易错误

交易失败时，你可以使用为 知行之桥 配置的 AI 模型分析失败原因，并获得可能的原因和后续步骤建议。分析只会在你手动启动时运行，知行之桥 从不自动诊断交易。

> [!NOTE]
>
> 诊断错误需要 AI 提供商。开始之前，请在**系统设置 > 高级**页面的 [AI 设置](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/ai-settings.md)部分中配置一个 AI 提供商。

### 开始诊断

任何失败交易的错误消息下方都会显示**诊断错误**链接。你可以在以下位置找到它：失败消息的**消息工作流**页面（从**消息**选项卡打开）、在**消息**选项卡中展开失败消息时显示的消息**详细信息**卡片，以及端口的**交易**选项卡。

![Failed transaction with the Diagnose error link](https://mintcdn.com/qiao/92y00drsn6lqgU2C/26.4/images/diagnose-error-activity-page.png?fit=max\&auto=format\&n=92y00drsn6lqgU2C\&q=85\&s=b802839fc6d97e021e32acd0704aac05)

1. 点击**诊断错误**链接，打开**错误诊断**窗口。窗口左侧显示错误消息。

   ![Error Diagnosis window before a diagnosis is run](https://mintcdn.com/qiao/92y00drsn6lqgU2C/26.4/images/diagnose-error-window.png?fit=max\&auto=format\&n=92y00drsn6lqgU2C\&q=85\&s=8457489ecf3c93a58186a36004fb649b)

2. 点击**诊断错误**按钮开始分析。

### 查看诊断结果

诊断结果显示在窗口右侧，分为以下几个部分（并非每次诊断都会显示所有部分）：

| 部分 | 描述 |
| - | - |
| **摘要** | 对失败内容的简短描述。 |
| **结论** | 问题的类型（例如配置问题），以及分析对该结论的置信程度。 |
| **根本原因** | 根据收集到的证据，解释错误发生的原因。 |
| **修复措施** | 解决错误的建议步骤。 |
| **需要更多信息** | 分析无法确定、可能需要你自行检查的细节。 |
| **证据** | 支持该结论的日志条目和设置。 |
| **其他** | 不属于上述部分的其他发现。 |

![Diagnosis window showing the Summary, Verdict, and Root Cause sections](https://mintcdn.com/qiao/92y00drsn6lqgU2C/26.4/images/diagnose-error-window-result.png?fit=max\&auto=format\&n=92y00drsn6lqgU2C\&q=85\&s=be68d55e4f227ce362fbe110eb026708)

单个发现可能包含以下标签：**置信度**、**风险**、**严重性**和**类型**。发现还可能包含指向相关帮助主题的**文档**链接。点击**复制**可将诊断结果复制到剪贴板。

如果无法完成分析，窗口会显示**无法诊断**。点击**重试**可再次运行分析。

### 诊断使用的数据

知行之桥 会将失败交易的相关信息发送到你在 AI 设置中配置的 AI 提供商。它不会发送消息内容或消息头。发送的信息包括：

* 交易记录及其详细日志
* 端口的设置、工作流、证书和近期活动
* 相关的请求日志、应用程序日志和服务日志
* 以下类型端口的身份和贸易伙伴配置：AS2、AS3、AS4、OFTP、GISB、RNIF、PIP、PEPPOL、X12、EDIFACT、TRADACOMS、VDA、SFTP Server、FTP Server、TCP Server 和 OpenPGP

知行之桥 还会包含 Request、Response 和 Headers 日志的摘录，这些摘录会按关键字过滤，仅保留与错误相关的部分。Headers 日志包含产生该交易的请求和响应的 HTTP 消息头。非 UTF-8 文本的内容会被排除。当 知行之桥 排除或截断信息时，会在发送给模型的信息中注明。

> [!NOTE]
>
> 诊断错误是只读操作。知行之桥 不会根据诊断结果应用修复、回滚更改或修改任何配置。
>
> AI 生成的诊断结果可能不正确，因此在更改配置之前，请先核实建议的原因和修复步骤。请查看 AI 提供商的数据处理条款，确认将这些信息发送给该提供商符合你所在组织的要求。

## SLA 日志

SLA 选项卡存储在各个[端口](../../connectors)上配置的每个 SLA 的信息。它包括 SLA 关联的[工作区](https://docs.kasoftware.com/26.4/self-hosted/zh/flows/workspaces.md)信息，以及状态信息和该状态剩余的时间。它显示以下详细信息：

* **端口 Id**——每个定义了 SLA 的端口 Id
* **工作区**——关联工作区的名称
* **上一个状态**——先前的 SLA 状态（例如 *OK*）
* **当前状态**——当前 SLA 状态（例如 *At Risk*），以及 SLA 再次更改状态前的剩余时间（例如变为 *In Violation*）

## 日志选项卡

**日志**选项卡包含五组日志：应用程序、自动化、访问、审计和个人设置。默认情况下，每个表都包含今日日志的摘要计数以及所有日志的总计数。应用程序日志还会将相似条目归入模式。点击每个部分中的**查看全部**链接，可在窗口中填充该类别的完整日志列表。在这里，你可以搜索、过滤和下载日志。

> [!NOTE]
>
> 日志维护通过**系统设置 > 高级**页面[清理选项](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/cleanup-settings.md)部分中的**周期**值进行管理。[自动化日志](#自动化日志)还有自己的保留规则：请参阅[保留](#保留)。

### 应用程序日志

应用程序日志记录处理过程中发生的任何应用程序级错误以及对应用程序资源发出的任何请求。这里的错误消息有助于为特定交易的错误提供上下文。

使用此选项卡验证外部贸易伙伴的 Web 请求是否已成功路由到 知行之桥 工作流中的端口。当应用程序在公共端点接收到 Web 请求时，它会尝试根据消息头（例如 AS2 标识符）将消息路由到特定端口。如果某个错误阻止应用程序成功路由消息，则此错误会显示在**应用程序**选项卡上。

为了让你快速发现重复出现的问题和高频活动，知行之桥 会将相似的应用程序日志条目归入\_模式\_，如下图所示。模式表示一组结构相同的消息，其中每条消息的可变部分（例如 ID、计数和任务名称）会替换为 `<*>` 通配符。例如，消息 `Stopped task [CheckIntegrityTask]` 和 `Stopped task [PortHealthCheckTask]` 都会归入模式 `Stopped task <*>`。

![显示模式的应用程序日志](https://mintcdn.com/qiao/4hcVjuRd69QHuQ3V/26.4/images/application_log_patterns.png?fit=max\&auto=format\&n=4hcVjuRd69QHuQ3V\&q=85\&s=6d077629e655254efcc2cafd7b21ff8f)

默认情况下，**日志**选项卡上的**应用程序日志**卡片显示这种精简的模式视图。卡片顶部的**错误**和**警告**磁贴显示各级别的当前计数。磁贴下方的表格列出检测到的每个模式，每一行显示以下详细信息：

* **计数**——匹配该模式的日志条目数
* **趋势（时间段）**——显示该模式随时间出现频率的迷你趋势图
* **级别**——模式的日志级别（例如 *Info*）
* **模式模板**——共享的消息结构，其中可变值显示为 `<*>`
* **首次出现**——匹配该模式的最早条目的时间戳

卡片底部显示今天记录的日志数以及日志总数。

要查看模式组的更多详细信息，请点击**查看全部**。完整日志窗口默认在**模式**视图中打开；将鼠标悬停在表格中的任意行上并点击**查看详细信息**，可查看构成该模式的日志详情。要查看单个日志条目而不是分组模式，请点击工具栏中的**日志**按钮。

在**日志**视图中，应用程序表为每个应用程序事件包含一个单独的行。它显示以下详细信息：

* **日期/时间**——事件的时间戳

* **级别**——日志级别。查看**消息**列中的信息以了解详细信息。选项为：

  * None——不记录事件
  * Error——处理过程中遇到的错误信息
  * Warning——处理过程中遇到的警告信息
  * Info——有关处理的一般信息，包括任何错误和警告（如果适用）
  * Debug——成功和失败流程的详细调试信息
  * Trace——成功和失败流程的详细跟踪信息（如果需要将日志发送给 知行软件 支持，此级别很有用）

  你可以在**系统设置 > 高级**页面的**高级设置**部分更改日志级别。但是，提高日志详细程度可能会影响数据库性能，尤其是对于 SQLite 或 H2 等性能较低的数据库类型。仅在有特定原因时才调整日志级别。

  > [!NOTE]
  >
  > 日志记录级别 **Debug** 和 **Trace** 可能会记录敏感信息，包括文件信息和 SSL 证书。尽管密码等敏感详细信息会被屏蔽，但在将这些日志共享到组织外部之前，你应检查其中是否包含敏感信息。

* **资源**——生成消息的资源

* **消息**——消息文本

* **实例 Id**——事件发生的机器

### 自动化日志

自动化日志记录自动化服务对每个端口所做的决策：端口是否到期运行、是否已触发、跳过的原因，以及运行是成功、失败还是在未接收到任何消息的情况下完成。使用这些日志可以确认计划运行的端口确实执行了轮询，即使该次轮询没有产生消息，也没有出现错误。

自动化日志与[应用程序日志](#应用程序日志)相互独立，因此这些条目不会出现在应用程序日志中。**自动化**部分和完整页面都显示以下详细信息：

* **日期/时间**——条目的时间戳
* **级别**——条目的严重程度：Debug、Info 或 Error
* **端口**——条目所对应的端口和工作区。点击端口名称可打开其配置页面。
* **操作**——条目涉及的自动化操作：**接收**、**定时发送**、**检查待处理**或**服务**（适用于整个端口而非单个操作的服务级决策）
* **决策**——自动化服务做出的决策（详情请参阅[决策](#决策)表）
* **下次运行时间**——当条目涉及计划评估时，端口下一次计划运行的时间
* **原因**——对该决策的文字描述
* **实例 Id**——写入该条目的 知行之桥 实例

**日志**选项卡上的**自动化**部分显示最近的条目。点击**查看全部**可查看完整的日志。在这里，你可以使用搜索栏和过滤器部分按任意列缩小列表范围。使用**下载日志**可下载部分日志。

#### 决策

每个条目都具有以下决策之一：

| 决策 | 含义 | 记录级别 |
| - | - | - |
| **成功** | 运行已完成并产生了消息。 | 始终记录 |
| **无消息** | 运行已完成，但没有产生消息。 | 始终记录 |
| **失败** | 运行失败。 | 始终记录 |
| **无许可证** | 许可证错误导致无法处理。 | Error、Info 和 Debug |
| **未开始** | 到期的操作未能启动工作进程。 | Error、Info 和 Debug |
| **已触发** | 到期的计划启动了工作进程。 | Info 和 Debug |
| **退避** | 端口处于[退避](https://docs.kasoftware.com/26.4/self-hosted/zh/connectors/connector-backoff.md)状态。 | Info 和 Debug |
| **已锁定** | 端口锁导致到期的运行无法处理。 | Info 和 Debug |
| **未到期** | 计划尚未到期。 | Debug |
| **已处理** | 另一个实例已处理该到期计划。 | Debug |

在 Debug 级别下，还会记录服务级的**已锁定**决策（没有到期运行时端口锁不可用），以及**检查待处理**操作的**已触发**决策。

**已触发**可以可靠地确认某次运行已经启动。调度程序一旦发现有到期的运行就会推进计划，因此仅凭一次到期评估并不能证明实际发生了什么。知行之桥 只会在工作进程启动后才写入**已触发**，并将每个未能启动的到期操作记录为**已锁定**或**未开始**。

#### 日志级别

自动化条目遵循每个端口自身的**日志级别**设置（位于端口的**高级**选项卡），而不是应用程序日志级别。你可以只为单个端口获取自动化详细信息，而无需提高整个应用程序的日志级别。

无论处于哪个级别，运行结果都会被记录。**成功**、**无消息**和**失败**描述的是已经执行的运行，因此会无条件写入。提高级别并不能揭示运行是否成功，因为这些结果始终会被记录；它揭示的是运行为何没有发生：

* **Error** 会增加**无许可证**和**未开始**。
* **Info** 会增加**已触发**、**退避**，以及到期运行被阻止时的**已锁定**。
* **Debug** 会增加每个决策背后的评估，包括**未到期**和**已处理**。

在低于 Debug 的级别下，知行之桥 对每个端口每五分钟最多写入一次**退避**和**无许可证**。在 Debug 级别下，每次被跳过的评估都会被记录。

#### 保留

每日清理会删除超过七天的自动化日志条目；如果[清理选项](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/cleanup-settings.md)中的**周期**值更短，则按该值删除。知行之桥 还会将该表限制在约 100,000 个条目。由于此限制由每日清理执行，表中的条目数可能会短暂超出该限制。

### 访问日志

访问日志记录对应用程序提供的端点发出的请求条目。这包括 API 请求、公开公共端点的端口（例如 Webhook），以及与接收数据相关的公共端点（例如 public.rst）。它显示以下详细信息：

* **日期/时间**——交易的时间戳
* **方法**——使用的 HTTP 方法
* **URL**——URL
* **用户**——发出请求的已认证用户。如果发出请求的用户是匿名用户，则此条目为空。
* **用户类型**——发出请求的用户的账户类型：**标准用户**、**单点登录**、**Active Directory**、**LDAP** 或**服务**。每种类型都以不同的图标显示。有关更多信息，请参阅[用户类型](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/users.md#用户类型)。
* **远程 IP**——发出请求的 IP 地址
* **实例 Id**——为请求提供服务的实例 Id

### 审计日志

审计日志存储对应用程序配置所做的每个更改。这包括创建端口、配置端口、更新个人设置等所有操作。它显示以下详细信息：

* **日期/时间**：配置更改的时间戳
* **操作**：所做更改的类型。选项为：
  * GET
  * POST
  * PUT
  * MERGE
  * PATCH
* **资源**：管理控制台（作为管理和配置应用程序的典型界面的 Web UI）或[系统 API](../../admin-api)（可用于管理和配置应用程序的基于 REST 的 API）。
* **消息**：对更改的详细文字描述，包括受影响的资源、被修改的具体字段或设置，以及修改前后的值
* **用户**：进行更改的用户
* **用户类型**：进行更改的用户的账户类型：**标准用户**、**单点登录**、**Active Directory**、**LDAP** 或**服务**。每种类型都以不同的图标显示。有关更多信息，请参阅[用户类型](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/users.md#用户类型)。

你可以查询审计日志以执行应用程序配置审计。

### 个人设置日志

个人设置日志记录已配置通信[个人设置](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/profiles.md)中的活动。这包括文件传输、协议级事件，以及 AS2、AS4 和 SFTP Server 等个人设置的服务器活动。它显示以下详细信息：

* **日期/时间**——活动的时间戳
* **端口**——涉及的端口 Id
* **文件**——用于打开个人设置日志文件的链接
* **状态**——操作的状态。选项为 Complete、In Progress

## 防篡改日志

知行之桥 对所有[审计日志](#审计日志)都包含加密防篡改日志记录。这确保了在日志数据被更改或篡改时，能够及时向用户发出警报。它通过以加密方式将日志条目链接成链，创建不可变的系统活动审计跟踪，从而使未经授权的修改能够被立即检测到。每个日志条目都包含其自身内容以及前一个条目哈希值的加密哈希，从而形成一个可验证的链条，对历史记录的任何改动都会破坏链条的完整性。这种方法有助于组织满足 HIPAA 和 GDPR 等监管要求。

完整性检查作为应用程序健康检查的一部分每小时运行一次。如果检测到篡改，系统将记录错误。如果在[通知](https://docs.kasoftware.com/26.4/self-hosted/zh/getting-started/administration/settings/alerts.md)选项卡上配置了电子邮件警报，系统将向管理员发送电子邮件。

管理员可以使用 [integrityResetTampering](https://docs.kasoftware.com/26.4/self-hosted/zh/scripting/operations/op-integrity-reset-tampering.md) 操作来重置哈希链并清除篡改警告。

## 调试日志

某些端口在**高级**配置选项卡中具有设置，用于增强交易日志的详细程度。这些详细日志在调试时很有用，并且在向 *[edi@kasoftware.cn](mailto:edi@kasoftware.cn)* 请求支持时通常是必需的。

最常见的高级配置设置是**日志级别**。当设置为 *Debug* 时，处理交易时已生成的交易日志中会添加附加信息。对于按计划运行的端口，**日志级别**还控制[自动化日志](#自动化日志)中记录的自动化活动的详细程度。

一些发送出站请求的端口还具有**记录请求**设置。当设置为 *True* 时，交易日志将包含发送到远程服务器的请求副本。这有助于缩小接收服务器响应时出现问题的范围。

一些针对远程系统发出查询的端口具有**详细程度**和/或**日志文件**设置。**详细程度**应设置在 1 到 5 之间（其中 5 最详细，并且在大多数情况下建议使用）。当**日志文件**是可用设置时，请将其设置为磁盘上的路径以写入专用日志文件；你可以将此文件与处理交易时生成的交易日志一起提供给支持人员。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.