资源数据模型
状态: 开发中
资源是具有属性的遥测数据生产实体的表示。例如,您可能有一个正在 Kubernetes 上的容器中运行的遥测数据生产进程,该容器与一个运行在节点上的 Pod 相关联,该节点是一个虚拟机,但也属于一个命名空间,并且可能是一个 Deployment 的一部分。资源可以具有用于指示有关容器、Pod、节点、VM 或 Deployment 的信息的属性。所有这些都有助于识别产生遥测数据的内容。请注意,某些属性具有指定的含义。
资源由 0 个或多个 实体 和 0 个或多个未与任何实体关联的属性组成。
以下数据模型定义了资源的逻辑模型(与记录资源数据的物理格式和编码无关)。
| 字段 | 类型 | 描述 |
|---|---|---|
| 实体 | set<Entity> | 定义与此资源关联的实体集。 |
| Attributes | map<string, attribute value> | 标识资源的附加属性。 在资源的生命周期内 MUST 不得更改。 遵循 OpenTelemetry 属性定义。 |
标识
大多数资源都是 实体 的组合。实体包含其自身的身份概念。资源的身份是其包含的实体集。如果一个资源包含另一个资源中不存在的实体,则认为这两个资源不同。
某些资源除了实体外还包含原始属性。原始属性被视为资源的标识。也就是说,如果原始属性的键值对不同,则可以假定资源不同。