Repository navigation
Conversation
This was referenced Nov 4, 2026
xiaoland
force-pushed
the
feat/observability-unification
branch
from
November 4, 2026 13:45
650e1cb to
0b310bf
Compare
xiaoland
force-pushed
the
feat/observability-unification
branch
from
November 4, 2026 13:49
0b310bf to
0867de6
Compare
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
成功执行的 Job 过去只产生可选 OTLP 事件,Web 的 PostgreSQL 日志查询因此可能为空;不同采集和读取入口也各自绑定具体存储。本 PR 让基础记录和查询使用同一选定后端,并通过 Core 的单一采集入口协调额外 OTLP 出口。
范围
inkcre.observability.backend/inkcre.observability.backend.v1缺省 PostgreSQL;Loki 需要服务端私密 URL/headers 和稳定部署身份。配置失败或外部不可用不回退另一存储。core.observability.v1提供认证的/observability,支持 status/query/ingest;expected_backend不匹配返回 409。查询过滤先于截断,时间窗最长 31 天、最多 500 条;截断明确返回,不提供会遗漏同刻记录的 cursor。job.<id>关联可读取,不补写虚构历史、不自动搬迁。选择外部不自动允许原文复制,默认保留声明元数据与固定说明;显式内容开关有单独说明。受影响发布项目:
inkcre-core(含服务镜像);已包含 Towncrier fragment。无数据库 migration、历史表删除或第三方服务配置变更。验证
ee84d48前的本地非 integration/acceptance 集合:114 passed、9 skipped、1 deselected;唯一 warning 为既有 Starlette TestClient deprecation。同步后执行发布意图与必要静态核对,未重跑该集合;当前 head 的云端结果见文末。按用户要求,本地未执行端到端验收;云端 CI 正常运行,结果以当前 head 的 Checks 为准。模拟传输不证明 Loki/Grafana Cloud 真实持久化、部署路由或完整 Web 旅程。
风险、迁移与回滚
公共选择在实例启动时读取,修改后重启提供方并重建客户端;没有隐式热切换。旧
OBSRV__LOGGING_BACKEND/Logtail writer 配置不再选择存储,需按部署文档迁移到有完整读写语义的后端。旧 Peer 不认识新选择,混合部署升级时需协调各生产者,不能假定旧 writer 自动停止。状态中的 configured/queryable 只说明具备配置和能力,不是连通性或持久化证明;dropped 是本实例已知损失。窗口摘要不代表完整 APM、全局指标或账单。
可整体撤销本 PR 的源码与共享引用提交,恢复父 PR 产物。Loki 中已写数据和 PG 历史均保留,回滚不执行数据迁移。若曾选择 Loki,恢复旧产物前需明确恢复部署配置,避免新旧消费者读取不同后端。
本 PR 只创建草稿,不合并、发布软件包、部署生产或修改真实第三方配置。既有 CI/预览按正常规则运行。
关联与下一步
直接父 PR:#175(
feat/core-app-separation);直接子 PR:https://github.com/InKCre/impl-py/pull/181。父 PR 合并后需重排到最新 main,再合并本 PR。共享合同:InKCre/docs#53;跨仓跟踪:InKCre/docs#52。Hub 已先推送
33f5a13,本 PR 用独立提交更新子模块引用。下一响应方:维护者。请审阅后端选择、读取错误、内容边界及生命周期语义;真实部署端到端验证和最终交付仍由跟踪项保留。
当前 head
0867de6基于父 PRa749300(mainee84d48),云端 Repository and artifact checks 已通过,包括数据库场景、CLI 和 E2E;preview 部署尚在运行。上述云端结果不代表真实 Loki 服务和完整 Web 旅程已验收。后续 App / Peer 命名迁移
直接子 PR:https://github.com/InKCre/impl-py/pull/181(draft)。先交付本 PR,再重排命名迁移;跨仓跟踪 InKCre/docs#55。