diff --git a/apps/api/src/jobs/asset_scanner_job.py b/apps/api/src/jobs/asset_scanner_job.py index f666a576..5868161a 100644 --- a/apps/api/src/jobs/asset_scanner_job.py +++ b/apps/api/src/jobs/asset_scanner_job.py @@ -548,11 +548,13 @@ async def _collect_prometheus_targets() -> tuple[list[dict[str, Any]], list[dict }) continue - # IP 形式 target + # IP 形式 target — 用 'monitoring_target' (asset_inventory CHECK 允許列表) + # host_service 不在 ADR-090 asset_type CHECK 內,之前 1 筆 125:32334 scan 拋 + # CheckViolationError (constraint asset_inventory_type_valid) asset_key = f"prometheus_target/{job}/{instance}" assets.append({ "asset_key": asset_key, - "asset_type": "host_service", + "asset_type": "monitoring_target", "host": host_ip, "namespace": None, "name": f"{job}@{host_ip}", diff --git a/apps/api/src/jobs/coverage_evaluator_job.py b/apps/api/src/jobs/coverage_evaluator_job.py index b4b80c28..03c83053 100644 --- a/apps/api/src/jobs/coverage_evaluator_job.py +++ b/apps/api/src/jobs/coverage_evaluator_job.py @@ -109,6 +109,10 @@ async def evaluate_once() -> dict[str, int]: monitoring=stats["monitoring_updated"], alerting=stats["alerting_updated"], km=stats["km_updated"], + playbook=stats["playbook_updated"], + remediation=stats["remediation_updated"], + rule_matching=stats["rule_matching_updated"], + rule_creation=stats["rule_creation_updated"], duration_ms=duration_ms, ) return stats