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.ArtifactCatalog(paths)[source]
Bases:
objectManifest-first catalog of local Stormlog artifacts.
- Parameters:
paths (Sequence[str | Path])
- 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.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.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_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_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.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]