Replies: 1 comment
|
这个 observability 需求可以用 SandBase Harness 的几个公开接口作为一个可复用参考,不过它们不等同于 DSH 的
参考实现和接口文档:
设计上我会把日志输出和业务事件分开:日志统一 ISO-8601/JSONL,Session 事件作为可回放事实源,token usage 作为 Session 聚合字段,同时保留按事件/请求粒度的明细。这样既能跨重启排障,也能让 quota collector 不依赖日志文本解析。 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Summary
Two observability gaps make operating dsh harder than it needs to be. First, lines in
dsh-web.logcarry no timestamps, so during incident triage we cannot order entries, correlate them with external events, or compute durations — we end up inferring time from rotation boundaries and content alone. Second, the token meter collects usage in-process but has no export path, so quota management and per-session accounting have no machine-readable source. We would like (1) ISO-8601 timestamps per log line and (2) a supported way to export token usage data.Background & Evidence
Failure Mode or Reproduction
dsh-web.logacross a restart — individual lines cannot be attributed to a time, and lines from consecutive runs cannot be ordered relative to each other or to external events.Proposed Fix
dsh-web.logline with an ISO-8601 UTC timestamp (plus level; pid optional). Alternatively, make the log format pluggable (plain vs. JSON lines) so operators can ingest it directly.dsh usage export --since <ts> [--format jsonl|csv];Useful fields: session id, timestamps, prompt/completion/total counts (plus any breakdown the meter already tracks).
Additional Context
@deepseek-ai/dsh0.1.1-rc.2 (developer preview)All reactions