十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

还在多个系统里来回找技术资产?Backstage 搜索一个框就能搞定

还在多个系统里来回找技术资产?Backstage 搜索一个框就能搞定 还在多个系统里来回找技术资产Backstage 搜索一个框就能搞定【免费下载链接】backstageBackstage is an open framework for building developer portals项目地址: https://gitcode.com/GitHub_Trending/ba/backstage找一个组件要在软件目录、文档站、集群控制台区之间来回切切了半天还没切到。Backstage 内置的搜索功能把组件、文档、API 这类技术资产收进同一个搜索框一个关键词就能检索出来。下面直接给你一条最短的可用路径。从一个真实场景说起下午三点产品找你能不能把支付服务的 API 文档链接发给她。你在目录、文档系统、集群控制台之间切了二十分钟对方已经开始问进度了。其实不是文档不存在是缺一个统一的检索入口。Backstage 搜索干的就是这件事——你不用记住哪个系统里放了什么一个关键词把注册进来的技术资产都捞出来。它能帮你做什么能力速览一个框搜所有东西组件、API 文档、TechDocs 技术文档都从同一个搜索框进。不用背这类资产归哪个系统管。结果按相关度排好序还能按类型过滤搜索结果按相关度排序页面上直接按资产类型过滤不用翻很多页才能看到想要的那条。刚注册的组件很快就能搜到索引按调度自动重建目录类内容默认每 10 分钟刷一次新实体不用你做任何事就会出现在结果里。搜什么、不搜什么由你决定通过 collator 过滤条件可以只索引生产环境的组件、只索引某一类 kind噪音不用全吞。从零到可用的最小可行配置已有 Backstage 应用的话前后端各装一次插件就行。前端装搜索页面yarn --cwd packages/app add backstage/plugin-search backstage/plugin-search-react后端装搜索核心再加两个默认 collator目录 技术文档yarn --cwd packages/backend add backstage/plugin-search-backend backstage/plugin-search-backend-module-catalog backstage/plugin-search-backend-module-techdocs然后在packages/backend/src/index.ts里注册backend.add(import(backstage/plugin-search-backend)); backend.add(import(backstage/plugin-search-backend-module-catalog)); backend.add(import(backstage/plugin-search-backend-module-techdocs));重启后侧边栏会多出搜索入口/search是一个独立的搜索页输入关键词就能看到目录和文档的混合结果搜索结果里点部署名可以直接跳到 Kubernetes 视图搜索引擎按你的规模选一个Lunr内存零配置只建议本地开发体验用官方明确不建议上生产Postgres要求 12 及以上复用 Backstage 已有数据库不用多养一个外部服务Elasticsearch 7.x / OpenSearch数据量大或有独立集群时用支持自建或云托管选型细节见 docs/features/search/search-engines.md。进阶玩法与扩展 用 collator 过滤收窄索引范围在app-config.yaml里给 catalog collator 加过滤只索引你关心的实体search: collators: catalog: filter: kind: [component, api] spec.lifecycle: production过滤条件支持EntityFilterQuery语法多组条件之间是或的关系细节在 docs/features/search/collators.md。调整索引重建节奏同级的schedule配置能改initialDelay、frequency、timeout。数据更新慢的源可以拉长到几小时一刷减轻索引压力。把搜索扩到别的数据源每个数据源就是一个 collator。仓库自带 plugins/search-backend-module-catalog/ 和 plugins/search-backend-module-techdocs/社区还有 Confluence、Stack Overflow 等现成 collator自己写一份可照 docs/features/search/custom-collators.md 来。定制结果展示样式前端用SearchResultListItemBlueprint注册自定义结果卡片让每种资产类型有自己的排版写法见 docs/features/search/getting-started.md 的前端部分。容易踩的坑 ⚠️重启后搜索结果变空现象开发环境搜得好好的部署多实例后结果时有时无。 原因默认 Lunr 是内存引擎重启即丢且多节点各自为政。 解决切到 Postgres 或 Elasticsearch。新注册的组件搜不到现象目录里已经能看到实体搜索却查无此物。 原因索引按调度重建catalog 默认间隔是 10 分钟。 解决等下一轮重建或把frequency调短。TechDocs 页面搜不到现象实体在目录里但对应文档页不出现在结果中。 原因TechDocs collator 只索引带backstage.io/techdocs-ref注解的实体。 解决给实体补上该注解并确认装了 plugins/search-backend-module-techdocs/。小规格 Elasticsearch 报 429现象日志里出现429 Too Many Requests /_bulk。 原因默认batchSize是 1000对小实例偏大。 解决在search.elasticsearch.batchSize里调小到 100 左右。适用场景速查角色典型操作预期效果开发者输入服务名找到目录页和 API 文档一次检索拿到链接不用翻四个系统新人按业务词搜相关组件和负责人第一天就能摸到资产全貌文档负责人搜 TechDocs 覆盖情况快速定位文档缺哪块运维按部署名搜 Kubernetes 工作负载秒级定位到 pod 状态和重启次数下一步建议如果你手边已有 Backstage 实例先按上面的最小配置把默认搜索跑起来拿自己的软件目录当试验田感受下结果排序和过滤。确认要上生产前把搜索引擎定下来——小规模用 Postgres 最省事数据量大再上 Elasticsearch。更多细节看 docs/features/search/ 和源码入口 plugins/search-backend/。先搜自己的目录手感很快就有了。【免费下载链接】backstageBackstage is an open framework for building developer portals项目地址: https://gitcode.com/GitHub_Trending/ba/backstage创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表