stormlog.query
Local query API for Stormlog artifact directories and telemetry files.
Functions
|
Open one or more local artifact paths for in-process querying. |
Classes
|
Manifest-first catalog of local Stormlog artifacts. |
|
Manifest-backed OOM dump bundle discovered during cataloging. |
|
One discovered source of queryable artifact data. |
|
Non-fatal discovery or loading warning. |
|
Filters for canonical telemetry event rows. |
|
Query row wrapping a canonical telemetry event and provenance. |
|
Filters for grouped issue rows. |
|
Filters for OOM bundle rows. |
|
Query row for one OOM bundle manifest. |
|
Reusable local query surface over Stormlog artifacts. |
|
Filters for catalog/session rows. |
|
Query row describing one loaded or manifest-backed session. |
|
Built-in summary result row. |
- class stormlog.query.AttachmentFilter(session_id=None, job_id=None, rank=None, kind=None)[source]
Bases:
objectFilters for external attachment sidecar rows.
- Parameters:
session_id (str | None)
job_id (str | None)
rank (int | None)
kind (str | None)
- session_id: str | None = None
- job_id: str | None = None
- rank: int | None = None
- kind: str | None = None
- class stormlog.query.ArtifactCatalog(paths)[source]
Bases:
objectManifest-first catalog of local Stormlog artifacts.
- Parameters:
paths (Sequence[str | Path])
- class stormlog.query.CatalogRunEnvelope(run_id, path, title, description, job_id, started_at_ns, ended_at_ns, created_at_utc, updated_at_utc, source_namespace, source_ref, tags, sessions, attachments, metadata=<factory>)[source]
Bases:
objectManifest-backed top-level Stormlog run envelope.
- Parameters:
run_id (str)
path (Path)
title (str | None)
description (str | None)
job_id (str | None)
started_at_ns (int | None)
ended_at_ns (int | None)
created_at_utc (str | None)
updated_at_utc (str | None)
source_namespace (str | None)
source_ref (str | None)
tags (tuple[str, ...])
sessions (tuple[CatalogRunSessionRef, ...])
attachments (tuple[CatalogRunAttachment, ...])
metadata (Mapping[str, Any])
- run_id: str
- path: Path
- title: str | None
- description: str | None
- job_id: str | None
- started_at_ns: int | None
- ended_at_ns: int | None
- created_at_utc: str | None
- updated_at_utc: str | None
- source_namespace: str | None
- source_ref: str | None
- tags: tuple[str, ...]
- sessions: tuple[CatalogRunSessionRef, ...]
- attachments: tuple[CatalogRunAttachment, ...]
- metadata: Mapping[str, Any]
- class stormlog.query.CatalogOOMBundle(bundle_path, manifest_path, created_at_utc, backend, reason, event_count, session_id, session_status, exception_type=None, exception_module=None)[source]
Bases:
objectManifest-backed OOM dump bundle discovered during cataloging.
- Parameters:
bundle_path (Path)
manifest_path (Path)
created_at_utc (str | None)
backend (str | None)
reason (str | None)
event_count (int | None)
session_id (str | None)
session_status (str | None)
exception_type (str | None)
exception_module (str | None)
- bundle_path: Path
- manifest_path: Path
- created_at_utc: str | None
- backend: str | None
- reason: str | None
- event_count: int | None
- session_id: str | None
- session_status: str | None
- exception_type: str | None = None
- exception_module: str | None = None
- class stormlog.query.CatalogSource(path, source_kind, event_paths=(), manifest_path=None)[source]
Bases:
objectOne discovered source of queryable artifact data.
- Parameters:
path (Path)
source_kind (Literal['sink', 'telemetry_json', 'telemetry_jsonl', 'telemetry_csv', 'diagnose_bundle', 'oom_bundle'])
event_paths (tuple[Path, ...])
manifest_path (Path | None)
- path: Path
- source_kind: Literal['sink', 'telemetry_json', 'telemetry_jsonl', 'telemetry_csv', 'diagnose_bundle', 'oom_bundle']
- event_paths: tuple[Path, ...] = ()
- manifest_path: Path | None = None
- class stormlog.query.CatalogWarning(path, message)[source]
Bases:
objectNon-fatal discovery or loading warning.
- Parameters:
path (str)
message (str)
- path: str
- message: str
- class stormlog.query.CorrelationEvidence(evidence_id, kind, title, session_id, job_id, rank, world_size, start_ns, end_ns, source_path, source_kind, metadata=<factory>, confidence='low', reasons=())[source]
Bases:
objectOne piece of evidence related to a correlation anchor.
- Parameters:
evidence_id (str)
kind (str)
title (str)
session_id (str | None)
job_id (str | None)
rank (int | None)
world_size (int | None)
start_ns (int | None)
end_ns (int | None)
source_path (str)
source_kind (str)
metadata (Mapping[str, Any])
confidence (str)
reasons (tuple[str, ...])
- evidence_id: str
- kind: str
- title: str
- session_id: str | None
- job_id: str | None
- rank: int | None
- world_size: int | None
- start_ns: int | None
- end_ns: int | None
- source_path: str
- source_kind: str
- metadata: Mapping[str, Any]
- confidence: str = 'low'
- reasons: tuple[str, ...] = ()
- class stormlog.query.CorrelationFilter(session_id=None, job_id=None, rank=None, scope='session', at_ns=None, record_id=None, window_ns=60000000000, kinds=(), limit=None)[source]
Bases:
objectFilters and anchor selection for a correlation query.
- Parameters:
session_id (str | None)
job_id (str | None)
rank (int | None)
scope (Literal['session', 'distributed'])
at_ns (int | None)
record_id (str | None)
window_ns (int)
kinds (tuple[str, ...])
limit (int | None)
- session_id: str | None = None
- job_id: str | None = None
- rank: int | None = None
- scope: Literal['session', 'distributed'] = 'session'
- at_ns: int | None = None
- record_id: str | None = None
- window_ns: int = 60000000000
- kinds: tuple[str, ...] = ()
- limit: int | None = None
- class stormlog.query.CorrelationResult(anchor, evidence=(), warnings=())[source]
Bases:
objectCorrelation query output anchored to a timestamp or telemetry record.
- Parameters:
anchor (Mapping[str, Any])
evidence (Sequence[CorrelationEvidence])
warnings (Sequence[str])
- anchor: Mapping[str, Any]
- evidence: Sequence[CorrelationEvidence] = ()
- warnings: Sequence[str] = ()
- class stormlog.query.EventFilter(session_id=None, event_type=None, rank=None, collector=None, status=None, time_start_ns=None, time_end_ns=None, has_alert=None, collector_health_status=None, backend=None, limit=None)[source]
Bases:
objectFilters for canonical telemetry event rows.
- Parameters:
session_id (str | None)
event_type (str | None)
rank (int | None)
collector (str | None)
status (str | None)
time_start_ns (int | None)
time_end_ns (int | None)
has_alert (bool | None)
collector_health_status (str | None)
backend (str | None)
limit (int | None)
- session_id: str | None = None
- event_type: str | None = None
- rank: int | None = None
- collector: str | None = None
- status: str | None = None
- time_start_ns: int | None = None
- time_end_ns: int | None = None
- has_alert: bool | None = None
- collector_health_status: str | None = None
- backend: str | None = None
- limit: int | None = None
- class stormlog.query.EventRow(event, source_path, source_kind, session_status)[source]
Bases:
objectQuery row wrapping a canonical telemetry event and provenance.
- Parameters:
event (TelemetryEventV3)
source_path (str)
source_kind (str)
session_status (str)
- event: TelemetryEventV3
- source_path: str
- source_kind: str
- session_status: str
- class stormlog.query.ExternalAttachment(title, kind, attachment_id, url, path, session_id, job_id, rank, start_ns, end_ns, created_at_utc, updated_at_utc, metadata, sidecar_path, run_id=None, storage=None, source_namespace=None, source_ref=None)[source]
Bases:
objectExternal evidence discovered from a local attachment sidecar.
- Parameters:
title (str)
kind (str)
attachment_id (str | None)
url (str | None)
path (str | None)
session_id (str | None)
job_id (str | None)
rank (int | None)
start_ns (int | None)
end_ns (int | None)
created_at_utc (str | None)
updated_at_utc (str | None)
metadata (Mapping[str, Any])
sidecar_path (str)
run_id (str | None)
storage (str | None)
source_namespace (str | None)
source_ref (str | None)
- title: str
- kind: str
- attachment_id: str | None
- url: str | None
- path: str | None
- session_id: str | None
- job_id: str | None
- rank: int | None
- start_ns: int | None
- end_ns: int | None
- created_at_utc: str | None
- updated_at_utc: str | None
- metadata: Mapping[str, Any]
- sidecar_path: str
- run_id: str | None = None
- storage: str | None = None
- source_namespace: str | None = None
- source_ref: str | None = None
- class stormlog.query.IssueFilter(fingerprint_id=None, kind=None, state=None, severity=None, session_id=None)[source]
Bases:
objectFilters for grouped issue rows.
- Parameters:
fingerprint_id (str | None)
kind (Literal['oom', 'collector_degradation', 'alert', 'hidden_memory_anomaly'] | None)
state (Literal['open', 'resolved', 'ignored', 'regressed'] | None)
severity (str | None)
session_id (str | None)
- fingerprint_id: str | None = None
- kind: Literal['oom', 'collector_degradation', 'alert', 'hidden_memory_anomaly'] | None = None
- state: Literal['open', 'resolved', 'ignored', 'regressed'] | None = None
- severity: str | None = None
- session_id: str | None = None
- class stormlog.query.OOMBundleFilter(session_id=None, backend=None, reason=None, created_after=None, created_before=None)[source]
Bases:
objectFilters for OOM bundle rows.
- Parameters:
session_id (str | None)
backend (str | None)
reason (str | None)
created_after (str | None)
created_before (str | None)
- session_id: str | None = None
- backend: str | None = None
- reason: str | None = None
- created_after: str | None = None
- created_before: str | None = None
- class stormlog.query.OOMBundleRow(bundle_path, created_at_utc, backend, reason, event_count, session_id, session_status, exception_type, exception_module)[source]
Bases:
objectQuery row for one OOM bundle manifest.
- Parameters:
bundle_path (str)
created_at_utc (str | None)
backend (str | None)
reason (str | None)
event_count (int | None)
session_id (str | None)
session_status (str | None)
exception_type (str | None)
exception_module (str | None)
- bundle_path: str
- created_at_utc: str | None
- backend: str | None
- reason: str | None
- event_count: int | None
- session_id: str | None
- session_status: str | None
- exception_type: str | None
- exception_module: str | None
- class stormlog.query.QueryStore(catalog)[source]
Bases:
objectReusable local query surface over Stormlog artifacts.
- Parameters:
catalog (ArtifactCatalog)
- list_run_attachments(filters=None)[source]
Return local, distributed, and external attachments indexed by run.
- Parameters:
filters (RunAttachmentFilter | None)
- Return type:
list[RunAttachmentRow]
- list_sessions(filters=None)[source]
Return session rows from manifest metadata or loaded flat files.
- Parameters:
filters (SessionFilter | None)
- Return type:
list[SessionRow]
- query_events(filters=None)[source]
Return filtered canonical telemetry event rows.
- Parameters:
filters (EventFilter | None)
- Return type:
list[EventRow]
- list_oom_bundles(filters=None)[source]
Return filtered OOM bundle rows.
- Parameters:
filters (OOMBundleFilter | None)
- Return type:
list[OOMBundleRow]
- list_attachments(filters=None)[source]
Return filtered external attachment sidecar rows.
- Parameters:
filters (AttachmentFilter | None)
- Return type:
list[ExternalAttachment]
- correlate(filters)[source]
Return evidence related to a timestamp or telemetry record anchor.
- Parameters:
filters (CorrelationFilter)
- Return type:
- list_issues(filters=None, *, state_overrides=None)[source]
Return grouped issues derived from discovered artifacts.
- Parameters:
filters (IssueFilter | None)
state_overrides (Mapping[str, str] | None)
- Return type:
list[StormlogIssue]
- summarize(metric, *, group_by=None)[source]
Run one built-in summary query.
- Parameters:
metric (Literal['session_count_by_status', 'peak_allocator_allocated_bytes', 'peak_allocator_reserved_bytes', 'peak_device_used_bytes', 'alert_count', 'collector_degradation_transitions', 'interrupted_sessions_with_oom_bundles', 'hidden_memory_gap_growth'])
group_by (Literal['session', 'session-rank', 'rank', 'status'] | None)
- Return type:
list[SummaryRow]
- class stormlog.query.RunAttachmentFilter(run_id=None, session_id=None, job_id=None, rank=None, kind=None, source_namespace=None, source_ref=None)[source]
Bases:
objectFilters for run attachment catalog rows.
- Parameters:
run_id (str | None)
session_id (str | None)
job_id (str | None)
rank (int | None)
kind (str | None)
source_namespace (str | None)
source_ref (str | None)
- run_id: str | None = None
- session_id: str | None = None
- job_id: str | None = None
- rank: int | None = None
- kind: str | None = None
- source_namespace: str | None = None
- source_ref: str | None = None
- class stormlog.query.RunAttachmentRow(run_id, title, kind, storage, attachment_id, url, path, session_id, job_id, rank, local_rank, world_size, start_ns, end_ns, source_path, source_kind, source_namespace, source_ref, metadata=<factory>)[source]
Bases:
objectQuery row for local, distributed, or external run evidence.
- Parameters:
run_id (str)
title (str)
kind (str)
storage (Literal['reference', 'copy'])
attachment_id (str | None)
url (str | None)
path (str | None)
session_id (str | None)
job_id (str | None)
rank (int | None)
local_rank (int | None)
world_size (int | None)
start_ns (int | None)
end_ns (int | None)
source_path (str)
source_kind (str)
source_namespace (str | None)
source_ref (str | None)
metadata (Mapping[str, Any])
- run_id: str
- title: str
- kind: str
- storage: Literal['reference', 'copy']
- attachment_id: str | None
- url: str | None
- path: str | None
- session_id: str | None
- job_id: str | None
- rank: int | None
- local_rank: int | None
- world_size: int | None
- start_ns: int | None
- end_ns: int | None
- source_path: str
- source_kind: str
- source_namespace: str | None
- source_ref: str | None
- metadata: Mapping[str, Any]
- class stormlog.query.RunFilter(run_id=None, session_id=None, job_id=None, rank=None, source_namespace=None, source_ref=None)[source]
Bases:
objectFilters for top-level run envelope rows.
- Parameters:
run_id (str | None)
session_id (str | None)
job_id (str | None)
rank (int | None)
source_namespace (str | None)
source_ref (str | None)
- run_id: str | None = None
- session_id: str | None = None
- job_id: str | None = None
- rank: int | None = None
- source_namespace: str | None = None
- source_ref: str | None = None
- class stormlog.query.RunRow(run_id, explicit, title, description, job_id, started_at_ns, ended_at_ns, source_path, source_kind, source_namespace, source_ref, session_count, attachment_count, sessions, ranks, tags=(), metadata=<factory>)[source]
Bases:
objectQuery row describing one explicit or synthesized run envelope.
- Parameters:
run_id (str)
explicit (bool)
title (str | None)
description (str | None)
job_id (str | None)
started_at_ns (int | None)
ended_at_ns (int | None)
source_path (str)
source_kind (str)
source_namespace (str | None)
source_ref (str | None)
session_count (int)
attachment_count (int)
sessions (tuple[str, ...])
ranks (tuple[int, ...])
tags (tuple[str, ...])
metadata (Mapping[str, Any])
- run_id: str
- explicit: bool
- title: str | None
- description: str | None
- job_id: str | None
- started_at_ns: int | None
- ended_at_ns: int | None
- source_path: str
- source_kind: str
- source_namespace: str | None
- source_ref: str | None
- session_count: int
- attachment_count: int
- sessions: tuple[str, ...]
- ranks: tuple[int, ...]
- tags: tuple[str, ...] = ()
- metadata: Mapping[str, Any]
- class stormlog.query.SessionFilter(session_id=None, status=None, job_id=None, rank=None, world_size=None, has_oom_bundle=None, source_kind=None)[source]
Bases:
objectFilters for catalog/session rows.
- Parameters:
session_id (str | None)
status (str | None)
job_id (str | None)
rank (int | None)
world_size (int | None)
has_oom_bundle (bool | None)
source_kind (str | None)
- session_id: str | None = None
- status: str | None = None
- job_id: str | None = None
- rank: int | None = None
- world_size: int | None = None
- has_oom_bundle: bool | None = None
- source_kind: str | None = None
- class stormlog.query.SessionRow(session_id, status, started_at_ns, ended_at_ns, host, pid, job_id, rank, local_rank, world_size, source, source_path, source_kind, source_count, warning_count, event_count, oom_bundle_count)[source]
Bases:
objectQuery row describing one loaded or manifest-backed session.
- Parameters:
session_id (str)
status (str)
started_at_ns (int)
ended_at_ns (int | None)
host (str)
pid (int)
job_id (str | None)
rank (int)
local_rank (int)
world_size (int)
source (str)
source_path (str)
source_kind (str)
source_count (int)
warning_count (int)
event_count (int | None)
oom_bundle_count (int)
- session_id: str
- status: str
- started_at_ns: int
- ended_at_ns: int | None
- host: str
- pid: int
- job_id: str | None
- rank: int
- local_rank: int
- world_size: int
- source: str
- source_path: str
- source_kind: str
- source_count: int
- warning_count: int
- event_count: int | None
- oom_bundle_count: int
- class stormlog.query.SummaryRow(metric, group_by, value, session_id=None, rank=None, status=None, details=<factory>)[source]
Bases:
objectBuilt-in summary result row.
- Parameters:
metric (str)
group_by (str)
value (int | float | str | None)
session_id (str | None)
rank (int | None)
status (str | None)
details (Mapping[str, Any])
- metric: str
- group_by: str
- value: int | float | str | None
- session_id: str | None = None
- rank: int | None = None
- status: str | None = None
- details: Mapping[str, Any]