CnOps 智能运维与可观测社区
首页开源项目实践文章视频课程常见问答开发者工具STAROps 专题
导航菜单
首页开源项目实践文章视频课程常见问答开发者工具STAROps 专题

CnOps 智能运维与可观测社区

愿景

CnOps 智能运维与可观测社区是一个以"智能运维与可观测"为核心的开放、包容、分享的技术社区,旨在聚集运维专家、开发者和爱好者,共同探讨、学习和分享可观测最佳实践与最新技术,与众多技术社区合作互动,共同探讨交叉领域的技术挑战,推动可观测领域的创新与进步。

内容社区

  • 实践文章
  • 视频课程
  • 开源项目
  • 常见问答
  • 开发者工具

友情链接

  • Prometheus
  • Grafana Lab
  • OpenTelemetry
  • LoongCollector

关注我们

阿里云云原生公众号阿里云云原生
阿里云可观测公众号阿里云可观测

Copyright © 2026 CnOps 社区. All rights reserved.

首页/开源项目/UModel/EntitySet
文档目录
UModel 中文文档
对象图语义层Workspace 与 DomainModel ElementsEntitySetDataSetLink 与字段映射Storage 与 GraphStoreEntity 与 Relation查询入口
GraphStore Providers文档国际化规则Web UI 架构Web UI API 对照UModel SDK 规范

UModel

EntitySet

EntitySet 定义一类运维对象。服务、实例、操作、数据库、队列、Kubernetes workload 都可以是 EntitySet。 EntitySet 回答: - 这是什么类型的对象? - 哪些字段能标识和描述它? - 哪个 domain 拥有这套词汇? - 哪些数据集或拓扑关系连接到它? 多域 quickstart 样例包含: - devops.service -...

EntitySet 定义一类运维对象。服务、实例、操作、数据库、队列、Kubernetes workload 都可以是 EntitySet。

职责

EntitySet 回答:

  • 这是什么类型的对象?
  • 哪些字段能标识和描述它?
  • 哪个 domain 拥有这套词汇?
  • 哪些数据集或拓扑关系连接到它?

示例

kind: entity_set
metadata:
  name: "devops.service"
  domain: devops
spec:
  fields:
    - name: id
      type: string
    - name: display_name
      type: string
    - name: owner
      type: string

多域 quickstart 样例包含:

  • devops.service
  • devops.pipeline
  • k8s.workload
  • automaker.vehicle
  • game.server
  • supplier.production_batch

见 examples/quickstart-multidomain。

EntitySet 与 Entity Record

层次 示例 作用
EntitySet devops.service 定义对象类型和字段。
Entity record 某个 checkout 服务 存储运行时对象实例。

Entity record 通过 EntityStore API 写入,通过 .entity 查询读取。EntitySet 作为 UModel element 导入,通过 .umodel 查询读取。

设计规则

  • 使用稳定身份字段,不要只依赖展示名。
  • 字段面向运维人员和 Agent 保持清晰。
  • 将 domain-specific semantics 放在 domain 中,不要放在 generic names 中。
  • 通过 data_link 连接数据集,不要把存储查询细节塞进 EntitySet。
  • 有拓扑语义时,通过 entity_set_link 连接实体类型。

查询示例

列出 EntitySet definitions:

go run ./cmd/umctl --addr http://localhost:8080 query run demo ".umodel with(kind='entity_set') | sort name | limit 20"

列出运行时 service entities:

go run ./cmd/umctl --addr http://localhost:8080 query run demo ".entity with(domain='devops', name='devops.service') | limit 20"

文章大纲