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

# 数据推送数据字典

本文档提供了 Dify Enterprise 通过数据推送功能发出的所有遥测信号的快速参考。

## 资源属性 (Resource Attributes)

附加到每个信号（Span、Metric、Log）上。

| 属性             | 类型     | 示例              |
| :------------- | :----- | :-------------- |
| `service.name` | string | `dify`          |
| `host.name`    | string | `dify-api-7f8b` |

***

## 链路追踪 (Traces / Spans)

### dify.workflow\.run

| 属性                              | 类型     | 描述                                                |
| :------------------------------ | :----- | :------------------------------------------------ |
| `dify.trace_id`                 | string | 业务 Trace ID (工作流运行 ID)                            |
| `dify.tenant_id`                | string | 租户标识符                                             |
| `dify.app_id`                   | string | 应用标识符                                             |
| `dify.workflow.id`              | string | 工作流定义 ID                                          |
| `dify.workflow.run_id`          | string | 本次运行的唯一 ID                                        |
| `dify.workflow.status`          | string | `succeeded` (成功), `failed` (失败), `stopped` (停止) 等 |
| `dify.workflow.error`           | string | 失败时的错误信息                                          |
| `dify.workflow.elapsed_time`    | float  | 总执行时间（秒）                                          |
| `dify.invoke_from`              | string | `api`, `webapp`, `debug`                          |
| `dify.conversation.id`          | string | 会话 ID（可选）                                         |
| `dify.message.id`               | string | 消息 ID（可选）                                         |
| `dify.invoked_by`               | string | 触发运行的用户 ID                                        |
| `gen_ai.usage.total_tokens`     | int    | 所有节点的总 Token 数（可选）                                |
| `gen_ai.user.id`                | string | 终端用户标识符（可选）                                       |
| `dify.parent.trace_id`          | string | 父工作流 Trace ID（可选）                                 |
| `dify.parent.workflow.run_id`   | string | 父工作流运行 ID（可选）                                     |
| `dify.parent.node.execution_id` | string | 父节点执行 ID（可选）                                      |
| `dify.parent.app.id`            | string | 父应用 ID（可选）                                        |

### dify.node.execution

| 属性                              | 类型     | 描述                              |
| :------------------------------ | :----- | :------------------------------ |
| `dify.trace_id`                 | string | 业务 Trace ID                     |
| `dify.tenant_id`                | string | 租户标识符                           |
| `dify.app_id`                   | string | 应用标识符                           |
| `dify.workflow.id`              | string | 工作流定义 ID                        |
| `dify.workflow.run_id`          | string | 工作流运行 ID                        |
| `dify.message.id`               | string | 消息 ID（可选）                       |
| `dify.conversation.id`          | string | 会话 ID（可选）                       |
| `dify.node.execution_id`        | string | 唯一节点执行 ID                       |
| `dify.node.id`                  | string | 工作流图中的节点 ID                     |
| `dify.node.type`                | string | 节点类型（见附录）                       |
| `dify.node.title`               | string | 显示标题                            |
| `dify.node.status`              | string | `succeeded` (成功), `failed` (失败) |
| `dify.node.error`               | string | 失败时的错误信息                        |
| `dify.node.elapsed_time`        | float  | 执行时间（秒）                         |
| `dify.node.index`               | int    | 执行顺序索引                          |
| `dify.node.predecessor_node_id` | string | 触发节点 ID                         |
| `dify.node.iteration_id`        | string | 迭代 ID（可选）                       |
| `dify.node.loop_id`             | string | 循环 ID（可选）                       |
| `dify.node.parallel_id`         | string | 并行分支 ID（可选）                     |
| `dify.node.invoked_by`          | string | 触发执行的用户 ID                      |
| `gen_ai.usage.input_tokens`     | int    | 提示词 Token 数（仅限 LLM 节点）          |
| `gen_ai.usage.output_tokens`    | int    | 补全 Token 数（仅限 LLM 节点）           |
| `gen_ai.usage.total_tokens`     | int    | 总 Token 数（仅限 LLM 节点）            |
| `gen_ai.request.model`          | string | LLM 模型名称（仅限 LLM 节点）             |
| `gen_ai.provider.name`          | string | LLM 提供商名称（仅限 LLM 节点）            |
| `gen_ai.user.id`                | string | 终端用户标识符（可选）                     |

### dify.node.execution.draft

属性与 `dify.node.execution` 相同。在预览/调试运行时发出。

***

## 计数器 (Counters)

所有计数器都是累积的，并以 100% 的准确率发出。

### Token 计数器

| 指标 (Metric)          | 单位        | 描述               |
| :------------------- | :-------- | :--------------- |
| `dify.tokens.total`  | `{token}` | 消耗的总 Token 数     |
| `dify.tokens.input`  | `{token}` | 输入 (提示词) Token 数 |
| `dify.tokens.output` | `{token}` | 输出 (补全) Token 数  |

**标签 (Labels):** `tenant_id`, `app_id`, `operation_type`, `model_provider`, `model_name`, `node_type` (如果是 `node_execution`)

> **警告**: 工作流级别的 `dify.tokens.total` 包含所有 `node_execution` 的 Token。请通过 `operation_type` 进行过滤以避免重复计算。

#### Token 层级与查询模式

Token 指标在多个层级发出。理解层级结构可以防止重复计算：

```text theme={null}
App-level total (应用级总计)
├── workflow          ← 所有 node_execution token 的总和 (不要同时相加)
│   └── node_execution ← 每个节点的细分
├── message           ← 独立 (仅限非工作流聊天应用)
├── rule_generate     ← 独立辅助 LLM 调用
├── code_generate     ← 独立辅助 LLM 调用
├── structured_output ← 独立辅助 LLM 调用
└── instruction_modify← 独立辅助 LLM 调用
```

**关键规则**: `workflow` Token 已经包含了所有 `node_execution` 的 Token。切勿将两者相加。

* **Token 指标上的可用标签**: `tenant_id`, `app_id`, `operation_type`, `model_provider`, `model_name`, `node_type`。
* **应用名称** 仅在 Span 属性 (`dify.app.name`) 上可用，不在指标标签上 —— 指标查询请使用 `app_id`。

**常用查询 (PromQL):**

```promql theme={null}
# ── 总计 ──────────────────────────────────────────────────
# 应用级总计 (排除 node_execution 以避免重复计算)
sum by (app_id) (dify_tokens_total{operation_type!="node_execution"})

# 单个应用总计
sum (dify_tokens_total{app_id="<app_id>", operation_type!="node_execution"})

# 租户级总计
sum by (tenant_id) (dify_tokens_total{operation_type!="node_execution"})

# ── 下钻分析 ──────────────────────────────────────────────
# 应用的工作流级 Token
sum (dify_tokens_total{app_id="<app_id>", operation_type="workflow"})

# 应用内的节点级细分
sum by (node_type) (dify_tokens_total{app_id="<app_id>", operation_type="node_execution"})

# 应用的模型细分
sum by (model_provider, model_name) (dify_tokens_total{app_id="<app_id>"})

# 每个模型的输入 vs 输出
sum by (model_name) (dify_tokens_input_total{app_id="<app_id>"})
sum by (model_name) (dify_tokens_output_total{app_id="<app_id>"})

# ── 速率 ───────────────────────────────────────────────────
# Token 消耗率 (每小时)
sum(rate(dify_tokens_total{operation_type!="node_execution"}[1h]))

# 每个应用的消耗率
sum by (app_id) (rate(dify_tokens_total{operation_type!="node_execution"}[1h]))
```

从应用名称查找 `app_id` (Trace 查询 — Tempo / Jaeger):

```text theme={null}
{ resource.dify.app.name = "My Chatbot" } | select(resource.dify.app.id)
```

### 请求计数器

| 指标 (Metric)           | 单位          | 描述    |
| :-------------------- | :---------- | :---- |
| `dify.requests.total` | `{request}` | 总操作次数 |

**按类型分类的标签:**

| 类型 (Type)            | 附加标签                                                                              |
| :------------------- | :-------------------------------------------------------------------------------- |
| `workflow`           | `tenant_id`, `app_id`, `status`, `invoke_from`                                    |
| `node`               | `tenant_id`, `app_id`, `node_type`, `model_provider`, `model_name`, `status`      |
| `draft_node`         | `tenant_id`, `app_id`, `node_type`, `model_provider`, `model_name`, `status`      |
| `message`            | `tenant_id`, `app_id`, `model_provider`, `model_name`, `status`, `invoke_from`    |
| `tool`               | `tenant_id`, `app_id`, `tool_name`                                                |
| `moderation`         | `tenant_id`, `app_id`                                                             |
| `suggested_question` | `tenant_id`, `app_id`, `model_provider`, `model_name`                             |
| `dataset_retrieval`  | `tenant_id`, `app_id`                                                             |
| `generate_name`      | `tenant_id`, `app_id`                                                             |
| `prompt_generation`  | `tenant_id`, `app_id`, `operation_type`, `model_provider`, `model_name`, `status` |

### 错误计数器

| 指标 (Metric)         | 单位        | 描述     |
| :------------------ | :-------- | :----- |
| `dify.errors.total` | `{error}` | 总失败操作数 |

**按类型分类的标签:**

| 类型 (Type)           | 附加标签                                                                    |
| :------------------ | :---------------------------------------------------------------------- |
| `workflow`          | `tenant_id`, `app_id`                                                   |
| `node`              | `tenant_id`, `app_id`, `node_type`, `model_provider`, `model_name`      |
| `draft_node`        | `tenant_id`, `app_id`, `node_type`, `model_provider`, `model_name`      |
| `message`           | `tenant_id`, `app_id`, `model_provider`, `model_name`                   |
| `tool`              | `tenant_id`, `app_id`, `tool_name`                                      |
| `prompt_generation` | `tenant_id`, `app_id`, `operation_type`, `model_provider`, `model_name` |

### 其他计数器

| 指标 (Metric)                     | 单位            | 标签                                                                                                                          |
| :------------------------------ | :------------ | :-------------------------------------------------------------------------------------------------------------------------- |
| `dify.feedback.total`           | `{feedback}`  | `tenant_id`, `app_id`, `rating`                                                                                             |
| `dify.dataset.retrievals.total` | `{retrieval}` | `tenant_id`, `app_id`, `dataset_id`, `embedding_model_provider`, `embedding_model`, `rerank_model_provider`, `rerank_model` |
| `dify.app.created.total`        | `{app}`       | `tenant_id`, `app_id`, `mode`                                                                                               |
| `dify.app.updated.total`        | `{app}`       | `tenant_id`, `app_id`                                                                                                       |
| `dify.app.deleted.total`        | `{app}`       | `tenant_id`, `app_id`                                                                                                       |

***

## 直方图 (Histograms)

| 指标 (Metric)                        | 单位  | 标签                                                                                |
| :--------------------------------- | :-- | :-------------------------------------------------------------------------------- |
| `dify.workflow.duration`           | `s` | `tenant_id`, `app_id`, `status`                                                   |
| `dify.node.duration`               | `s` | `tenant_id`, `app_id`, `node_type`, `model_provider`, `model_name`, `plugin_name` |
| `dify.message.duration`            | `s` | `tenant_id`, `app_id`, `model_provider`, `model_name`                             |
| `dify.message.time_to_first_token` | `s` | `tenant_id`, `app_id`, `model_provider`, `model_name`                             |
| `dify.tool.duration`               | `s` | `tenant_id`, `app_id`, `tool_name`                                                |
| `dify.prompt_generation.duration`  | `s` | `tenant_id`, `app_id`, `operation_type`, `model_provider`, `model_name`           |

***

## 结构化日志 (Structured Logs)

### Span 伴随日志 (Span Companion Logs)

伴随 Span 的日志。信号类型: `span_detail`。

#### dify.workflow\.run 伴随日志

**通用属性**: 所有 Span 属性（见 Traces 部分）加上：

**事件属性**:

* `dify.event.name`: `dify.workflow.run`
* `dify.event.signal`: `span_detail`
* `trace_id`, `span_id`, `tenant_id`, `user_id`

| 附加属性                    | 类型          | 始终存在 | 描述              |
| :---------------------- | :---------- | :--- | :-------------- |
| `dify.app.name`         | string      | 否    | 应用显示名称          |
| `dify.workspace.name`   | string      | 否    | 工作区显示名称         |
| `dify.workflow.version` | string      | 是    | 工作流定义版本         |
| `dify.workflow.inputs`  | string/JSON | 是    | 输入参数（受内容门控控制）   |
| `dify.workflow.outputs` | string/JSON | 是    | 输出结果（受内容门控控制）   |
| `dify.workflow.query`   | string      | 否    | 用户查询文本（受内容门控控制） |

#### dify.node.execution 和 dify.node.execution.draft 伴随日志

**通用属性**: 所有 Span 属性（见 Traces 部分）加上：

**事件属性**:

* `dify.event.name`: `dify.node.execution` 或 `dify.node.execution.draft`
* `dify.event.signal`: `span_detail`
* `trace_id`, `span_id`, `tenant_id`, `user_id`

| 附加属性                        | 类型          | 始终存在 | 描述              |
| :-------------------------- | :---------- | :--- | :-------------- |
| `dify.app.name`             | string      | 否    | 应用显示名称          |
| `dify.workspace.name`       | string      | 否    | 工作区显示名称         |
| `dify.invoke_from`          | string      | 否    | 调用来源            |
| `gen_ai.tool.name`          | string      | 否    | 工具名称（仅限工具节点）    |
| `dify.node.total_price`     | float       | 否    | 成本（仅限 LLM 节点）   |
| `dify.node.currency`        | string      | 否    | 货币代码（仅限 LLM 节点） |
| `dify.node.iteration_index` | int         | 否    | 迭代索引（迭代节点）      |
| `dify.node.loop_index`      | int         | 否    | 循环索引（循环节点）      |
| `dify.plugin.name`          | string      | 否    | 插件名称（工具/知识库节点）  |
| `dify.credential.name`      | string      | 否    | 凭证名称（插件节点）      |
| `dify.credential.id`        | string      | 否    | 凭证 ID（插件节点）     |
| `dify.dataset.ids`          | JSON array  | 否    | 数据集 ID（知识库节点）   |
| `dify.dataset.names`        | JSON array  | 否    | 数据集名称（知识库节点）    |
| `dify.node.inputs`          | string/JSON | 是    | 节点输入（受内容门控控制）   |
| `dify.node.outputs`         | string/JSON | 是    | 节点输出（受内容门控控制）   |
| `dify.node.process_data`    | string/JSON | 否    | 处理数据（受内容门控控制）   |

### 独立日志 (Standalone Logs)

没有结构化 Span 的日志。信号类型: `metric_only`。

#### dify.message.run

| 属性                                 | 类型          | 描述                                              |
| :--------------------------------- | :---------- | :---------------------------------------------- |
| `dify.event.name`                  | string      | `dify.message.run`                              |
| `dify.event.signal`                | string      | `metric_only`                                   |
| `trace_id`                         | string      | OTEL Trace ID (32位十六进制)                         |
| `span_id`                          | string      | OTEL Span ID (16位十六进制)                          |
| `tenant_id`                        | string      | 租户标识符                                           |
| `user_id`                          | string      | 用户标识符（可选）                                       |
| `dify.app_id`                      | string      | 应用标识符                                           |
| `dify.message.id`                  | string      | 消息标识符                                           |
| `dify.conversation.id`             | string      | 会话 ID（可选）                                       |
| `dify.workflow.run_id`             | string      | 工作流运行 ID（可选）                                    |
| `dify.invoke_from`                 | string      | `service-api`, `web-app`, `debugger`, `explore` |
| `gen_ai.provider.name`             | string      | LLM 提供商                                         |
| `gen_ai.request.model`             | string      | LLM 模型                                          |
| `gen_ai.usage.input_tokens`        | int         | 输入 Token 数                                      |
| `gen_ai.usage.output_tokens`       | int         | 输出 Token 数                                      |
| `gen_ai.usage.total_tokens`        | int         | 总 Token 数                                       |
| `dify.message.status`              | string      | `succeeded` (成功), `failed` (失败)                 |
| `dify.message.error`               | string      | 错误信息（如果失败）                                      |
| `dify.message.duration`            | float       | 持续时间（秒）                                         |
| `dify.message.time_to_first_token` | float       | 首字时间 (TTFT)（秒）                                  |
| `dify.message.inputs`              | string/JSON | 输入（受内容门控控制）                                     |
| `dify.message.outputs`             | string/JSON | 输出（受内容门控控制）                                     |

#### dify.tool.execution

| 属性                     | 类型          | 描述                              |
| :--------------------- | :---------- | :------------------------------ |
| `dify.event.name`      | string      | `dify.tool.execution`           |
| `dify.event.signal`    | string      | `metric_only`                   |
| `trace_id`             | string      | OTEL Trace ID                   |
| `span_id`              | string      | OTEL Span ID                    |
| `tenant_id`            | string      | 租户标识符                           |
| `dify.app_id`          | string      | 应用标识符                           |
| `dify.message.id`      | string      | 消息标识符                           |
| `dify.tool.name`       | string      | 工具名称                            |
| `dify.tool.duration`   | float       | 持续时间（秒）                         |
| `dify.tool.status`     | string      | `succeeded` (成功), `failed` (失败) |
| `dify.tool.error`      | string      | 错误信息（如果失败）                      |
| `dify.tool.inputs`     | string/JSON | 输入（受内容门控控制）                     |
| `dify.tool.outputs`    | string/JSON | 输出（受内容门控控制）                     |
| `dify.tool.parameters` | string/JSON | 参数（受内容门控控制）                     |
| `dify.tool.config`     | string/JSON | 配置（受内容门控控制）                     |

#### dify.moderation.check

| 属性                           | 类型         | 描述                                     |
| :--------------------------- | :--------- | :------------------------------------- |
| `dify.event.name`            | string     | `dify.moderation.check`                |
| `dify.event.signal`          | string     | `metric_only`                          |
| `trace_id`                   | string     | OTEL Trace ID                          |
| `span_id`                    | string     | OTEL Span ID                           |
| `tenant_id`                  | string     | 租户标识符                                  |
| `dify.app_id`                | string     | 应用标识符                                  |
| `dify.message.id`            | string     | 消息标识符                                  |
| `dify.moderation.type`       | string     | `input` (输入), `output` (输出)            |
| `dify.moderation.action`     | string     | `pass` (通过), `block` (拦截), `flag` (标记) |
| `dify.moderation.flagged`    | boolean    | 是否被标记                                  |
| `dify.moderation.categories` | JSON array | 被标记的类别                                 |
| `dify.moderation.query`      | string     | 内容（受内容门控控制）                            |

#### dify.suggested\_question.generation

| 属性                                  | 类型         | 描述                                   |
| :---------------------------------- | :--------- | :----------------------------------- |
| `dify.event.name`                   | string     | `dify.suggested_question.generation` |
| `dify.event.signal`                 | string     | `metric_only`                        |
| `trace_id`                          | string     | OTEL Trace ID                        |
| `span_id`                           | string     | OTEL Span ID                         |
| `tenant_id`                         | string     | 租户标识符                                |
| `dify.app_id`                       | string     | 应用标识符                                |
| `dify.message.id`                   | string     | 消息标识符                                |
| `dify.suggested_question.count`     | int        | 问题数量                                 |
| `dify.suggested_question.duration`  | float      | 持续时间（秒）                              |
| `dify.suggested_question.status`    | string     | `succeeded` (成功), `failed` (失败)      |
| `dify.suggested_question.error`     | string     | 错误信息（如果失败）                           |
| `dify.suggested_question.questions` | JSON array | 问题（受内容门控控制）                          |

#### dify.dataset.retrieval

| 属性                                 | 类型         | 描述                              |
| :--------------------------------- | :--------- | :------------------------------ |
| `dify.event.name`                  | string     | `dify.dataset.retrieval`        |
| `dify.event.signal`                | string     | `metric_only`                   |
| `trace_id`                         | string     | OTEL Trace ID                   |
| `span_id`                          | string     | OTEL Span ID                    |
| `tenant_id`                        | string     | 租户标识符                           |
| `dify.app_id`                      | string     | 应用标识符                           |
| `dify.message.id`                  | string     | 消息标识符                           |
| `dify.dataset.id`                  | string     | 数据集标识符                          |
| `dify.dataset.name`                | string     | 数据集名称                           |
| `dify.dataset.embedding_providers` | JSON array | 嵌入模型提供商（每个数据集一个）                |
| `dify.dataset.embedding_models`    | JSON array | 嵌入模型（每个数据集一个）                   |
| `dify.retrieval.rerank_provider`   | string     | 重排模型提供商                         |
| `dify.retrieval.rerank_model`      | string     | 重排模型名称                          |
| `dify.retrieval.query`             | string     | 搜索查询（受内容门控控制）                   |
| `dify.retrieval.document_count`    | int        | 检索到的文档数                         |
| `dify.retrieval.duration`          | float      | 持续时间（秒）                         |
| `dify.retrieval.status`            | string     | `succeeded` (成功), `failed` (失败) |
| `dify.retrieval.error`             | string     | 错误信息（如果失败）                      |
| `dify.dataset.documents`           | JSON array | 文档（受内容门控控制）                     |

#### dify.generate\_name.execution

| 属性                            | 类型          | 描述                              |
| :---------------------------- | :---------- | :------------------------------ |
| `dify.event.name`             | string      | `dify.generate_name.execution`  |
| `dify.event.signal`           | string      | `metric_only`                   |
| `trace_id`                    | string      | OTEL Trace ID                   |
| `span_id`                     | string      | OTEL Span ID                    |
| `tenant_id`                   | string      | 租户标识符                           |
| `dify.app_id`                 | string      | 应用标识符                           |
| `dify.conversation.id`        | string      | 会话标识符                           |
| `dify.generate_name.duration` | float       | 持续时间（秒）                         |
| `dify.generate_name.status`   | string      | `succeeded` (成功), `failed` (失败) |
| `dify.generate_name.error`    | string      | 错误信息（如果失败）                      |
| `dify.generate_name.inputs`   | string/JSON | 输入（受内容门控控制）                     |
| `dify.generate_name.outputs`  | string      | 生成的名称（受内容门控控制）                  |

#### dify.prompt\_generation.execution

| 属性                                      | 类型          | 描述                                 |
| :-------------------------------------- | :---------- | :--------------------------------- |
| `dify.event.name`                       | string      | `dify.prompt_generation.execution` |
| `dify.event.signal`                     | string      | `metric_only`                      |
| `trace_id`                              | string      | OTEL Trace ID                      |
| `span_id`                               | string      | OTEL Span ID                       |
| `tenant_id`                             | string      | 租户标识符                              |
| `dify.app_id`                           | string      | 应用标识符                              |
| `dify.prompt_generation.operation_type` | string      | 操作类型（见附录）                          |
| `gen_ai.provider.name`                  | string      | LLM 提供商                            |
| `gen_ai.request.model`                  | string      | LLM 模型                             |
| `gen_ai.usage.input_tokens`             | int         | 输入 Token 数                         |
| `gen_ai.usage.output_tokens`            | int         | 输出 Token 数                         |
| `gen_ai.usage.total_tokens`             | int         | 总 Token 数                          |
| `dify.prompt_generation.duration`       | float       | 持续时间（秒）                            |
| `dify.prompt_generation.status`         | string      | `succeeded` (成功), `failed` (失败)    |
| `dify.prompt_generation.error`          | string      | 错误信息（如果失败）                         |
| `dify.prompt_generation.instruction`    | string      | 指令（受内容门控控制）                        |
| `dify.prompt_generation.output`         | string/JSON | 输出（受内容门控控制）                        |

#### dify.app.created

| 属性                    | 类型     | 描述                                             |
| :-------------------- | :----- | :--------------------------------------------- |
| `dify.event.name`     | string | `dify.app.created`                             |
| `dify.event.signal`   | string | `metric_only`                                  |
| `tenant_id`           | string | 租户标识符                                          |
| `dify.app_id`         | string | 应用标识符                                          |
| `dify.app.mode`       | string | `chat`, `completion`, `agent-chat`, `workflow` |
| `dify.app.created_at` | string | 时间戳 (ISO 8601)                                 |

#### dify.app.updated

| 属性                    | 类型     | 描述                 |
| :-------------------- | :----- | :----------------- |
| `dify.event.name`     | string | `dify.app.updated` |
| `dify.event.signal`   | string | `metric_only`      |
| `tenant_id`           | string | 租户标识符              |
| `dify.app_id`         | string | 应用标识符              |
| `dify.app.updated_at` | string | 时间戳 (ISO 8601)     |

#### dify.app.deleted

| 属性                    | 类型     | 描述                 |
| :-------------------- | :----- | :----------------- |
| `dify.event.name`     | string | `dify.app.deleted` |
| `dify.event.signal`   | string | `metric_only`      |
| `tenant_id`           | string | 租户标识符              |
| `dify.app_id`         | string | 应用标识符              |
| `dify.app.deleted_at` | string | 时间戳 (ISO 8601)     |

#### dify.feedback.created

| 属性                         | 类型     | 描述                                  |
| :------------------------- | :----- | :---------------------------------- |
| `dify.event.name`          | string | `dify.feedback.created`             |
| `dify.event.signal`        | string | `metric_only`                       |
| `trace_id`                 | string | OTEL Trace ID                       |
| `span_id`                  | string | OTEL Span ID                        |
| `tenant_id`                | string | 租户标识符                               |
| `dify.app_id`              | string | 应用标识符                               |
| `dify.message.id`          | string | 消息标识符                               |
| `dify.feedback.rating`     | string | `like` (点赞), `dislike` (点踩), `null` |
| `dify.feedback.content`    | string | 反馈文本（受内容门控控制）                       |
| `dify.feedback.created_at` | string | 时间戳 (ISO 8601)                      |

#### dify.telemetry.rehydration\_failed

用于遥测系统健康监控的诊断事件。

| 属性                              | 类型     | 描述                                  |
| :------------------------------ | :----- | :---------------------------------- |
| `dify.event.name`               | string | `dify.telemetry.rehydration_failed` |
| `dify.event.signal`             | string | `metric_only`                       |
| `tenant_id`                     | string | 租户标识符                               |
| `dify.telemetry.error`          | string | 错误信息                                |
| `dify.telemetry.payload_type`   | string | 载荷类型（见附录）                           |
| `dify.telemetry.correlation_id` | string | 关联 ID                               |

***

## 内容门控属性 (Content-Gated Attributes)

当 `ENTERPRISE_INCLUDE_CONTENT=false` 时，这些属性将被替换为引用字符串 (`ref:{id_type}={uuid}`)。

| 属性                                   | 信号                                   |
| :----------------------------------- | :----------------------------------- |
| `dify.workflow.inputs`               | `dify.workflow.run`                  |
| `dify.workflow.outputs`              | `dify.workflow.run`                  |
| `dify.workflow.query`                | `dify.workflow.run`                  |
| `dify.node.inputs`                   | `dify.node.execution`                |
| `dify.node.outputs`                  | `dify.node.execution`                |
| `dify.node.process_data`             | `dify.node.execution`                |
| `dify.message.inputs`                | `dify.message.run`                   |
| `dify.message.outputs`               | `dify.message.run`                   |
| `dify.tool.inputs`                   | `dify.tool.execution`                |
| `dify.tool.outputs`                  | `dify.tool.execution`                |
| `dify.tool.parameters`               | `dify.tool.execution`                |
| `dify.tool.config`                   | `dify.tool.execution`                |
| `dify.moderation.query`              | `dify.moderation.check`              |
| `dify.suggested_question.questions`  | `dify.suggested_question.generation` |
| `dify.retrieval.query`               | `dify.dataset.retrieval`             |
| `dify.dataset.documents`             | `dify.dataset.retrieval`             |
| `dify.generate_name.inputs`          | `dify.generate_name.execution`       |
| `dify.generate_name.outputs`         | `dify.generate_name.execution`       |
| `dify.prompt_generation.instruction` | `dify.prompt_generation.execution`   |
| `dify.prompt_generation.output`      | `dify.prompt_generation.execution`   |
| `dify.feedback.content`              | `dify.feedback.created`              |

***

## 附录 (Appendix)

### 操作类型 (Operation Types)

`workflow`, `node_execution`, `message`, `rule_generate`, `code_generate`, `structured_output`, `instruction_modify`

### 节点类型 (Node Types)

`start`, `end`, `answer`, `llm`, `knowledge-retrieval`, `knowledge-index`, `if-else`, `code`, `template-transform`, `question-classifier`, `http-request`, `tool`, `datasource`, `variable-aggregator`, `loop`, `iteration`, `parameter-extractor`, `assigner`, `document-extractor`, `list-operator`, `agent`, `trigger-webhook`, `trigger-schedule`, `trigger-plugin`, `human-input`

### 工作流状态 (Workflow Statuses)

`running`, `succeeded`, `failed`, `stopped`, `partial-succeeded`, `paused`

### 载荷类型 (Payload Types)

`workflow`, `node`, `message`, `tool`, `moderation`, `suggested_question`, `dataset_retrieval`, `generate_name`, `prompt_generation`, `app`, `feedback`

### 空值行为 (Null Value Behavior)

* **Spans**: 具有空值的属性将被省略。
* **Logs**: 具有空值的属性在 JSON 中显示为 `null`。
* **Content-Gated**: 被替换为引用字符串，而不是设置为 null。
