Package com.arms.api.requirement.reqadd.kafka

## Class KafkaMonitorController

- java.lang.Object
- - com.arms.api.requirement.reqadd.kafka.KafkaMonitorController

-     @RestController
      @RequestMapping("/api/kafka")
      public class KafkaMonitorController
      extends java.lang.Object

  Kafka 모니터링 컨트롤러 Kafka 토픽의 Consumer Lag을 조회하는 API 제공
  Since:
    2025

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `KafkaMonitorController()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>>` | `getConsumerStatus​(java.lang.String topic)` | 특정 토픽의 전체 상태 조회 GET /api/kafka/status/{topic}
    `org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>>` | `getDetailedTopicLag​(java.lang.String topic)` | 특정 토픽의 파티션별 상세 Lag 조회 GET /api/kafka/lag/{topic}/detail
    `org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>>` | `getReqAddLag()` | REQADD 토픽의 Lag 조회 (편의 메서드) GET /api/kafka/lag/reqadd
    `org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>>` | `getTopicLag​(java.lang.String topic)` | 특정 토픽의 전체 Lag 조회 GET /api/kafka/lag/{topic}
    `org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>>` | `health()` | 헬스체크 GET /api/kafka/health

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### KafkaMonitorController

          public KafkaMonitorController()

  - ### Method Detail

    - #### getTopicLag

          @GetMapping("/lag/{topic}")
          public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>> getTopicLag​(@PathVariable
                                                                                                                             java.lang.String topic)

      특정 토픽의 전체 Lag 조회 GET /api/kafka/lag/{topic}
      Parameters:
        `topic` - 토픽 이름
      Returns:
        토픽의 전체 Lag 정보

    - #### getDetailedTopicLag

          @GetMapping("/lag/{topic}/detail")
          public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>> getDetailedTopicLag​(@PathVariable
                                                                                                                                     java.lang.String topic)

      특정 토픽의 파티션별 상세 Lag 조회 GET /api/kafka/lag/{topic}/detail
      Parameters:
        `topic` - 토픽 이름
      Returns:
        파티션별 Lag 상세 정보

    - #### getConsumerStatus

          @GetMapping("/status/{topic}")
          public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>> getConsumerStatus​(@PathVariable
                                                                                                                                   java.lang.String topic)

      특정 토픽의 전체 상태 조회 GET /api/kafka/status/{topic}
      Parameters:
        `topic` - 토픽 이름
      Returns:
        Consumer 상태 정보 (Lag, 파티션 수, 상태 등)

    - #### getReqAddLag

          @GetMapping("/lag/reqadd")
          public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>> getReqAddLag()

      REQADD 토픽의 Lag 조회 (편의 메서드) GET /api/kafka/lag/reqadd
      Returns:
        REQADD 토픽의 Lag 정보

    - #### health

          @GetMapping("/health")
          public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String,​java.lang.Object>> health()

      헬스체크 GET /api/kafka/health
      Returns:
        Kafka 모니터링 가능 여부