package com.arms.api.admin.monitoring.model.vo;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EsMonitoringSummaryVO {
    private LocalDateTime timestamp;

    // 클러스터 상태
    private ClusterHealthVO clusterHealth;

    // 노드 상태
    private List<NodeStatsVO> nodeStats;

    // Thread Pool 상태
    private List<ThreadPoolStatsVO> threadPoolStats;

    // 인덱싱/검색 통계
    private IndexingStatsVO indexingStats;

    // 전체 장애 요약
    private Boolean isHealthy;
    private String overallStatus;  // HEALTHY, WARNING, CRITICAL
    private List<String> issues;
}