INNER CODE UNIT · Python

_coerce_metadata_entries

pab1it0/prometheus-mcp-server · src/prometheus_mcp_server/server.py:522

def _coerce_metadata_entries(value: Any) -> List[Dict[str, Any]]:
    """Normalize metadata value into a list of metadata dictionaries."""
    if isinstance(value, list):
        return [entry for entry in value if isinstance(entry, dict)]
    if isinstance(value, dict):
        return [value]
    return []


def _normalize_metadata_map(raw_data: Any) -> Dict[str, List[Dict[str, Any]]]:
    """Normalize diverse metadata response shapes into {metric_name: [entries]}."""
    if isinstance(raw_data, dict):
        if "metadata" in raw_data:
            return _normalize_metadata_map(raw_data["metadata"])
        if "data" in raw_data:
            return _normalize_metadata_map(raw_data["data"])

        normalized: Dict[str, List[Dict[str, Any]]] = {}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…