Skip to content

Memory metrics

Memory metrics are served on port 9090. Metric names below include the Prometheus _total and _seconds suffixes where emitted by the client library.

MetricLabelsMeaning
omnia_memory_api_requests_totalmethod, route, status_codeHTTP requests
omnia_memory_api_request_duration_secondsmethod, route, status_codeHTTP latency
omnia_memory_api_memories_saved_total—Memories saved
omnia_memory_api_memories_retrieved_totalstrategyMemories retrieved
omnia_memory_api_retrieval_duration_secondsstrategyRetrieval latency
omnia_memory_retrievals_totaltierMemories served by multi-tier retrieval, by tier
omnia_memory_retrieval_denied_total—Results removed by the denyCEL access filter
omnia_memory_rerank_fallback_totalreasonReranking fell back to the fused order
omnia_memory_writes_suppressed_totalcategory, reasonWrites dropped before storage (user-opted-out, privacy-unavailable, consent-not-granted, unknown-category)
omnia_memory_accessed_updates_total—accessed_at updates from retrieval
MetricLabelsMeaning
omnia_memory_embedding_coverageworkspaceFraction of live entities whose latest active observation has an embedding; the embedding’s model is not checked
omnia_memory_reembed_backlogworkspaceActive rows awaiting current-model embeddings
omnia_memory_embed_requests_totaloutcomeEmbedding calls
omnia_memory_embed_duration_seconds—Embedding latency
omnia_memory_reembed_rows_totalmodelRows the backfill worker has embedded
omnia_memory_reembed_pass_duration_secondsmodelWall time of one backfill pass
omnia_memory_reembed_concurrencymodelConfigured backfill concurrency
omnia_embedding_tokens_totalworkspace, model, provider, sourceTokens charged to embedding usage
omnia_memory_ingest_documents_totalstrategy, outcomeDocuments ingested
omnia_memory_ingest_items_totalstrategyItems (chunks or summaries) persisted per ingest
omnia_memory_ingest_duration_secondsstrategyIngest latency

Coverage below 0.7 causes the Memory Galaxy to use a lexical basis. A growing re-embed backlog means newly ingested or stale rows may not participate in semantic retrieval.

The rate of omnia_memory_reembed_rows_total measures backfill throughput. The slope of omnia_memory_reembed_backlog is not throughput: the backlog falls by rows embedded minus rows newly written, so an ingest in progress holds it flat while the worker runs at full speed.

omnia_memory_reembed_concurrency reports the configured value, not a measured one, so a change in throughput can be attributed to a change in configuration. See Operate embeddings for measuring what it should be.

MetricLabelsMeaning
omnia_memory_retention_soft_deleted_totaltier, branchSoft deletions
omnia_memory_retention_hard_deleted_total—Hard deletions after grace period
omnia_memory_retention_run_duration_secondsoutcomeRetention pass latency
omnia_memory_retention_run_errors_totaltier, branchRetention branch failures
omnia_memory_worker_runningnameWorker liveness (1 when running)
omnia_memory_redis_up—Last Redis operation succeeded
omnia_memory_redis_dependency_errors_totalopRedis dependency failures
omnia_memory_cache_lookups_totalop, resultCache lookups
omnia_memory_cache_version_bumps_total—Scope-version bumps issued by writes

Enterprise workers also emit omnia_memory_projection_* metrics: workspace and policy labels, plus status and basis on the render counter.

MetricLabelsMeaning
omnia_memory_consolidation_passes_totalworkspace, service_group, policy, function, statusConsolidation passes. status: ok, empty, prefilter_error, function_error, apply_error
omnia_memory_consolidation_pass_duration_secondsworkspace, service_group, policy, functionDuration of one consolidation pass (per axis)
omnia_memory_consolidation_actions_totalworkspace, service_group, policy, function, action, outcome, target_tierActions emitted. outcome: applied or rejected_<reason>
omnia_memory_consolidation_function_call_duration_secondsworkspace, service_group, policy, functionDuration of the HTTP call to a consolidation function

service_group scopes a sample to one of the workspace’s service groups, and distinguishes them when a workspace runs more than one. A worker started without --service-group emits an empty value.