Skip to main content

Crate observer_storage

Crate observer_storage 

Source
Expand description

纯存储层:会话落盘原语 + 标注 + bundle 契约 + 读/列举/导入导出 + redact + 保留策略。

零 tauri 依赖,全部吃 &Path,供两方共用:

  • [tauri_plugin_observer](Local 模式 self-obs 落盘)
  • observer_server(HTTP 服务,console 内嵌 / 独立二进制)

格式见 docs/架构/分析侧(平台布局结构、功能).md 与 docs/架构/bundle-规范.md: recordings/<sessionId>/{session.json, windows.jsonl, segments/<label>#<n>.jsonl[.gz], annotations.jsonl}

Re-exports§

pub use annotations::annotations_path;
pub use annotations::read_annotations;
pub use annotations::write_annotations;
pub use bundle::build_export_bundle;
pub use bundle::import_bundle;
pub use bundle::import_bundle_content;
pub use bundle::list_sessions;
pub use bundle::merge_session_meta;
pub use bundle::parse_bundle;
pub use bundle::read_segment_json;
pub use bundle::read_session;
pub use bundle::read_session_meta;
pub use bundle::read_session_signals_json;
pub use bundle::unique_id;
pub use bundle::validate_segment_id;
pub use bundle::validate_session_id;
pub use bundle::write_import_bundle;
pub use bundle::BUNDLE_FORMAT;
pub use bundle::BUNDLE_VERSION;
pub use redact::redact_bundle;
pub use redact::RedactConfig;
pub use redact::RedactOpts;
pub use retention::enforce_retention;
pub use retention::enforce_retention_protect;
pub use retention::RetentionPolicy;
pub use storage::append_events_file;
pub use storage::append_events_file_with;
pub use storage::append_lifecycle;
pub use storage::create_session;
pub use storage::finalize_session;
pub use storage::now_ms;
pub use storage::read_segment_events;
pub use storage::read_segment_first_line;
pub use storage::read_segment_last_line;
pub use storage::segment_id_from_filename;
pub use storage::segment_path;
pub use storage::WriteOpts;

Modules§

annotations
会话级标注存储:annotations.jsonl,每行一条标注 JSON。
bundle
bundle 契约 + 会话读/列举/导入导出。
redact
导出/导入前脱敏:剥离/scrub 会话中的 PII(network body/headers、console args、url 等)。
retention
会话保留策略:超龄/孤儿/超量清理(带保护名单变体)。
storage
会话存储原语:落盘函数,全部吃 &Path,零 tauri 依赖。