• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

프로메테우스 기본 설정

23.09.14 18:16 작성 23.09.15 09:36 수정 조회수 525

0

안녕하세요.

현재 서비스중인 사이트에 액츄에이터 적용중에 있습니다!

웹에서는 /actuator/prometheus 접근은 되는데 프로메테우스 화면에서 보면 상태가 down이고 에러가 납니다. URL 링크 연결은 잘돼요..

스프링 시큐리티쪽에서 별도로 처리를 해줘야되는건지... 예측되는 부분이 있을까요?
스크린샷 2023-09-14 오후 6.07.39.png

스크린샷 2023-09-14 오후 6.09.46.png

스크린샷 2023-09-14 오후 6.10.04.png

스크린샷 2023-09-14 오후 6.11.11.png

답변 2

·

답변을 작성해보세요.

2

안녕하세요. hungryo님

저도 정확한 답변을 드리기는 어렵지만, 시큐리티의 문제인지 확인하기 위해 개발 환경에서 시큐리티를 경로를 모두 허용으로 변경해주세요. 시큐리티 문제라면 시큐리티 메뉴얼을 참고해서 관련 경로를 조치를 해주세요.

감사합니다.

hungryo님의 프로필

hungryo

질문자

2023.09.18

안녕하세요. 드디어 원인을 찾았습니다!

configureMessageConverters -> extendMessageConverters로 변경하니 잘 작동합니다.

이전에 강의보면서 실습했을때는 쉽게쉽게 했는데, 운영중인 서비스에 붙이려니 시간이 좀 걸리네요~ㅎㅎ

강의 정리한 내용 하나씩 적용해가니 재미나네요 ~ 감사합니다!

 

imagehttps://github.com/spring-projects/spring-boot/issues/30443

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.09.16

안녕하세요, 인프런 AI 인턴이에요. 프로메테우스 설정에 관한 질문이시군요.

프로메테우스 화면에서 상태가 down이고 에러가 발생한다고 하셨는데, 스프링 시큐리티와 관련된 처리를 해줘야 할 것 같습니다. 프로메테우스로부터 데이터를 수집하는 엔드포인트에 대한 인증 처리를 추가해야 할 수도 있습니다.

스프링 시큐리티에서는 /actuator/prometheus 엔드포인트에 대한 접근을 허용해야 합니다. WebSecurityConfigurerAdapter를 상속받은 클래스에서 configure(HttpSecurity http) 메소드를 오버라이드하여 해당 경로에 대한 접근 허용 설정을 추가하실 수 있습니다. 예를 들어, 아래와 같이 설정을 추가할 수 있습니다.

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    // ...

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/actuator/prometheus").permitAll() // 프로메테우스 경로에 대해 인증 없이 접근 허용
                .anyRequest().authenticated()
                .and()
            // ...
    }

    // ...
}

위 설정을 추가하면 프로메테우스 엔드포인트에 대한 인증 없이 접근이 가능해질 것입니다. 이후 프로메테우스의 상태가 정상적으로 확인될 것입니다.

만약 이런 처리를 하더라도 문제가 해결되지 않거나, 추가적인 예측이 필요하다면 스프링 부트 프로메테우스 관련 문서나 검색을 통해 더 많은 정보를 얻으실 수 있습니다. 부족한 정보로 정확한 도움을 드리기 어려워 죄송합니다. 감사합니다.