更新: 4 个文件 - 2026-03-21 17:54:57

这个提交包含在:
hao
2026-03-21 17:54:57 -07:00
父节点 af31c1b8d0
当前提交 e82b7d8cf6
修改 4 个文件,包含 168 行新增4 行删除

查看文件

@@ -7,6 +7,7 @@ from typing import Any, Dict, List
from intel.config import (
ALERTS_PATH,
ENTITY_COMPLETENESS_PATH,
LAB_ENQUEUE_SUMMARY_PATH,
MACHINE_READABLE_SOURCE_KINDS,
MONITORING_DIR,
MONITOR_SUMMARY_PATH,
@@ -14,6 +15,8 @@ from intel.config import (
SOURCE_CATALOG_AUDIT_MD_PATH,
SOURCE_CATALOG_AUDIT_PATH,
SOURCE_HEALTH_PATH,
VERSION_BACKLOG_PATH,
VERSION_COMPLETENESS_PATH,
iter_all_sources,
)
from intel.utils import ensure_dir, isoformat, now_utc, parse_dt, read_json, write_json, write_text
@@ -365,6 +368,9 @@ def write_monitoring_state(
open_alerts = [item for item in alerts if item.get("status") == "open"]
generated_at = source_health.get("generated_at") or isoformat(now_utc())
entity_completeness = read_json(ENTITY_COMPLETENESS_PATH, default={}) or {}
version_completeness = read_json(VERSION_COMPLETENESS_PATH, default={}) or {}
version_backlog = read_json(VERSION_BACKLOG_PATH, default={}) or {}
lab_enqueue_summary = read_json(LAB_ENQUEUE_SUMMARY_PATH, default={}) or {}
summary = {
"generated_at": generated_at,
"active_source_count": source_health.get("active_source_count", 0),
@@ -397,12 +403,27 @@ def write_monitoring_state(
"version_mapped_count": entity_completeness.get("version_mapped_count", 0),
"official_source_covered_count": entity_completeness.get("official_source_covered_count", 0),
},
"version_coverage": {
"cataloged_entity_total": version_completeness.get("cataloged_entity_total", 0),
"latest_version_synced_count": version_completeness.get("latest_version_synced_count", 0),
"source_gap_count": version_completeness.get("source_gap_count", 0),
"security_version_total": version_completeness.get("security_version_total", 0),
"security_version_entity_count": version_completeness.get("security_version_entity_count", 0),
"auto_promoted_entity_count": version_completeness.get("auto_promoted_entity_count", 0),
"lab_enqueued_count": version_completeness.get("lab_enqueued_count", 0),
},
"lab_enqueue": {
"enqueued": lab_enqueue_summary.get("enqueued", 0),
"queue_total": lab_enqueue_summary.get("queue_total", 0),
"pending_count": len(lab_enqueue_summary.get("pending", []) or []),
},
}
snapshot = {
"generated_at": generated_at,
"source_catalog_audit": audit,
"source_health": source_health,
"alerts": alerts,
"version_backlog": version_backlog,
"monitor_summary": summary,
}
write_json(MONITOR_SUMMARY_PATH, summary)