다음을 통해 공유


Azure Container Apps에서 Spring용 관리되는 게이트웨이에 연결(미리 보기)

Gateway for Spring은 마이크로 서비스 아키텍처의 일부로 API 요청을 라우팅, 관리 및 처리하는 효율적이고 강력한 방법을 제공합니다. 다양한 서비스로 외부 요청을 라우팅하는 API 게이트웨이 역할을 하며, 필터링, 부하 분산 등 다양한 기능을 추가합니다. 이 문서에서는 컨테이너 앱에 대한 요청을 전달하는 게이트웨이를 만드는 방법을 알아봅니다.

이 자습서에서는 다음에 대해 알아봅니다.

  • Gateway for Spring Java 구성 요소 만들기
  • 컨테이너 앱으로 요청을 리디렉션하기 위한 사용자 지정 경로로 Gateway for Spring 업데이트

중요

이 자습서에서는 Azure 청구서에 영향을 줄 수 있는 서비스를 사용합니다. 단계별로 따르기로 결정한 경우 예기치 못한 비용이 청구되지 않도록 이 문서에 소개된 리소스를 삭제해야 합니다.

필수 구성 요소

고려 사항

Azure Container Apps에서 Gateway for Spring을 실행할 때 다음 세부 정보를 확인합니다.

항목 설명
범위 Gateway for Spring은 연결된 컨테이너 앱과 동일한 환경에서 실행됩니다.
리소스 Gateway for Spring의 컨테이너 리소스 할당은 고정되어 있으며, CPU 코어 수는 0.5개, 메모리 크기는 1Gi입니다.
가격 Gateway for Spring 청구는 사용량 기반 가격 책정에 속합니다. 관리 Java 구성 요소에서 사용하는 리소스는 활성/유휴 요금으로 청구됩니다. 더 이상 사용하지 않는 구성 요소를 삭제하여 청구를 중지할 수 있습니다.

설치 프로그램

Gateway for Spring을 사용하기 전에 먼저 필요한 리소스를 만들어야 합니다.

다음 명령을 실행하여 리소스 그룹 및 Container Apps 환경을 만듭니다.

  1. 애플리케이션 구성을 지원하는 변수를 만듭니다. 이러한 값은 이 단원의 목적을 위해 제공됩니다. 이 단원에서는 Spring 샘플 앱에 대한 관리자의 액추에이터 엔드포인트를 사용합니다.

    export LOCATION=eastus
    export RESOURCE_GROUP=my-spring-cloud-resource-group
    export ENVIRONMENT=my-spring-cloud-environment
    export JAVA_COMPONENT_NAME=mygateway
    export APP_NAME=myapp
    export IMAGE="mcr.microsoft.com/javacomponents/samples/sample-admin-for-spring-client:latest"
    
    변수 설명
    LOCATION 컨테이너 앱 및 Java 구성 요소를 만드는 Azure 지역 위치입니다.
    ENVIRONMENT 데모 애플리케이션의 Azure Container Apps 환경 이름입니다.
    RESOURCE_GROUP 데모 애플리케이션에 대한 Azure 리소스 그룹 이름입니다.
    JAVA_COMPONENT_NAME 컨테이너 앱용으로 만들어진 Java 구성 요소의 이름입니다. 이 경우 Gateway for Spring Java 구성 요소를 만듭니다.
    IMAGE 컨테이너 앱에 사용되는 컨테이너 이미지입니다.
  2. Azure CLI를 사용하여 Azure에 로그인합니다.

    az login
    
  3. 리소스 그룹을 만듭니다.

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  4. 컨테이너 앱 환경을 만듭니다.

    az containerapp env create \
        --name $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION
    

    이 환경은 Gateway for Spring 구성 요소와 컨테이너 앱을 모두 호스팅하는 데 사용됩니다.

Gateway for Spring Java 구성 요소 사용

이제 Container Apps 환경이 있으므로 Gateway for Spring Java 구성 요소를 사용하여 요청을 라우팅하는 컨테이너 앱을 만들 수 있습니다.

  1. Gateway for Spring Java 구성 요소를 만듭니다.

    az containerapp env java-component gateway-for-spring create \
        --environment $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --name $JAVA_COMPONENT_NAME \
    
  2. FQDN(정규화된 도메인 이름)을 갖는 컨테이너 앱을 만듭니다.

    az containerapp create \
        --name $APP_NAME \
        --resource-group $RESOURCE_GROUP \
        --environment $ENVIRONMENT \
        --image $IMAGE \
        --ingress external \
        --target-port 8080 \
        --query properties.configuration.ingress.fqdn
    

    이 명령은 구성 데이터를 사용하는 컨테이너 앱의 URL을 반환합니다. 다음 단계에서 사용할 수 있도록 URL을 텍스트 편집기에 복사합니다.

게이트웨이 경로를 경로 요청으로 업데이트합니다.

  1. 다음 콘텐츠로 YAML 파일을 만듭니다. <MYAPP_URL>을 이전 단계의 컨테이너 앱 FQDN으로 바꿉니다.

    springCloudGatewayRoutes:
    - id: "route1"
      uri: "<MYAPP_URL>"
      predicates:
        - "Path=/myapp/{path}"
      filters:
        - "SetPath=/actuator/{path}"
    
  2. 다음 명령을 실행하여 경로 구성으로 Gateway for Spring 구성 요소를 업데이트합니다.

    az containerapp env java-component gateway-for-spring update \
        --environment $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --name $JAVA_COMPONENT_NAME \ 
        --route-yaml <PTAH_TO_ROUTE_YAML_FILE> \
        --query properties.ingress.fqdn
    

    이 명령은 게이트웨이 경로를 업데이트하고 구성 데이터를 사용하는 게이트웨이의 URL을 반환합니다.

    이 명령은 게이트웨이의 URL을 반환합니다. 경로 /myapp/health를 사용하여 이 URL을 방문하면 요청이 앱의 actuator/health 엔드포인트로 라우팅되어 {"status":"UP","groups":["liveness","readiness"]}가 반환됩니다.

리소스 정리

이 자습서에서 만든 리소스는 Azure 청구서에 영향을 줍니다. 이러한 서비스를 장기간 사용하지 않을 예정이면 다음 명령을 실행하여 이 자습서에서 만든 모든 항목을 제거합니다.

az group delete --resource-group $RESOURCE_GROUP

경로 파일 형식

Gateway for Spring 구성 요소는 ID, URI, 조건자 및 필터를 사용하여 속성을 통해 경로를 정의하는 것을 지원합니다. 자세한 내용은 Spring Cloud Gateway 설명서를 참조하세요. 다음은 이러한 속성을 구성하는 방법을 보여 주는 YAML 파일의 예입니다.

  springCloudGatewayRoutes:
  - id: "route1"
    uri: "https://otherjavacomponent.myenvironment.test.net"
    predicates:
      - "Path=/v1/{path}"
      - "After=2024-01-01T00:00:00.000-00:00[America/Denver]"
    filters:
      - "SetPath=/{path}"
  - id: "route2"
    uri: "https://otherjavacomponent.myenvironment.test.net"
    predicates:
      - "Path=/v2/{path}"
      - "After=2024-01-01T00:00:00.000-00:00[America/Denver]"
    filters:
      - "SetPath=/{path}"

Gateway for Spring에 허용되는 구성 목록(#configurable-properties)

다음 표에서는 앱에 대해 구성할 수 있는 게이트웨이 구성 요소 속성을 설명합니다. 자세한 내용은 Spring Cloud Gateway 공통 애플리케이션 속성을 참조하세요.

속성 이름 설명 기본값
spring.cloud.gateway.default-filters 모든 경로에 적용되는 필터 정의 목록입니다.
spring.cloud.gateway.enabled 게이트웨이 기능을 사용하도록 설정합니다. true
spring.cloud.gateway.fail-on-route-definition-error 경로 정의 오류 발생 시 실패할 것인지에 대한 옵션이며, 기본값은 true입니다. 그렇지 않으면 경고가 기록됩니다. true
spring.cloud.gateway.handler-mapping.order RoutePredicateHandlerMapping의 순서입니다. 1
spring.cloud.gateway.loadbalancer.use404 false
spring.cloud.gateway.discovery.locator.enabled DiscoveryClient 게이트웨이 통합을 사용하도록 설정하는 플래그입니다. false
spring.cloud.gateway.discovery.locator.filters
spring.cloud.gateway.discovery.locator.include-expression 게이트웨이 통합에 서비스를 포함할지 여부를 평가하는 SpEL 식입니다. 기본값은 true입니다. true
spring.cloud.gateway.discovery.locator.lower-case-service-id 조건자 및 필터에서 serviceId를 소문자로 바꾸는 옵션입니다. 기본값은 false입니다. serviceId를 자동으로 대문자로 변환해주는 Eureka에서 유용합니다. 따라서 MYSERVICE/myservice/**와 일치합니다. false
spring.cloud.gateway.discovery.locator.predicates
spring.cloud.gateway.discovery.locator.route-id-prefix routeId의 접두사는 기본적으로 discoveryClient.getClass().getSimpleName() + "_"입니다. routeId를 만들기 위해 서비스 ID가 추가됩니다.
spring.cloud.gateway.discovery.locator.url-expression 각 경로에 대한 URI를 만드는 SpEL 식입니다. 기본값은 'lb://'+serviceId입니다. 'lb://'+serviceId
spring.cloud.gateway.filter.add-request-header.enabled add-request-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.add-request-parameter.enabled add-request-parameter 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.add-response-header.enabled add-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.circuit-breaker.enabled circuit-breaker 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.dedupe-response-header.enabled dedupe-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.fallback-headers.enabled fallback-headers 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.hystrix.enabled hystrix 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.json-to-grpc.enabled JSON을 gRPC 필터로 사용하도록 설정합니다. true
spring.cloud.gateway.filter.local-response-cache.enabled local-response-cache 필터를 사용하도록 설정합니다. false
spring.cloud.gateway.filter.local-response-cache.request.no-cache-strategy
spring.cloud.gateway.filter.local-response-cache.size 이 경로에 대한 항목을 제거하기 위한 캐시의 최대 크기(KB, MB, GB)입니다.
spring.cloud.gateway.filter.local-response-cache.time-to-live 캐시 항목 만료 시간은 s(초), m(분), h(시간)으로 표현됩니다. 5m
spring.cloud.gateway.filter.map-request-header.enabled map-request-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.modify-request-body.enabled modify-request-body 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.modify-response-body.enabled modify-response-body 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.prefix-path.enabled prefix-path 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.preserve-host-header.enabled preserve-host-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.redirect-to.enabled redirect-to 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.remove-hop-by-hop.headers
spring.cloud.gateway.filter.remove-hop-by-hop.order 0
spring.cloud.gateway.filter.remove-request-header.enabled remove-request-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.remove-request-parameter.enabled remove-request-parameter 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.remove-response-header.enabled remove-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.request-header-size.enabled request-header-size 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.request-header-to-request-uri.enabled request-header-to-request-uri 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.request-rate-limiter.default-key-resolver
spring.cloud.gateway.filter.request-rate-limiter.default-rate-limiter
spring.cloud.gateway.filter.request-rate-limiter.enabled request-rate-limiter 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.request-size.enabled request-size 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.retry.enabled retry 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.rewrite-location-response-header.enabled rewrite-location-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.rewrite-location.enabled rewrite-location 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.rewrite-path.enabled rewrite-path 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.rewrite-request-parameter.enabled rewrite-request-parameter 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.rewrite-response-header.enabled rewrite-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.save-session.enabled save-session 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.secure-headers.content-security-policy default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline'
spring.cloud.gateway.filter.secure-headers.content-type-options nosniff
spring.cloud.gateway.filter.secure-headers.disable
spring.cloud.gateway.filter.secure-headers.download-options noopen
spring.cloud.gateway.filter.secure-headers.enabled secure-headers 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.secure-headers.frame-options DENY
spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies none
spring.cloud.gateway.filter.secure-headers.referrer-policy no-referrer
spring.cloud.gateway.filter.secure-headers.strict-transport-security max-age=631138519
spring.cloud.gateway.filter.secure-headers.xss-protection-header 1 ; mode=block
spring.cloud.gateway.filter.set-path.enabled set-path 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.set-request-header.enabled set-request-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.set-request-host-header.enabled set-request-host-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.set-response-header.enabled set-response-header 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.set-status.enabled set-status 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.filter.strip-prefix.enabled strip-prefix 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.forwarded.enabled ForwardedHeadersFilter을 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.adapt-cached-body.enabled adapt-cached-body 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.forward-path.enabled forward-path 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.forward-routing.enabled forward-routing 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.load-balancer-client.enabled load-balancer-client 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.local-response-cache.enabled 모든 경로에 대해 local-response-cache 필터를 사용하도록 설정하면 LocalResponseCache 필터를 사용하여 경로 수준에서 특정 구성을 추가할 수 있습니다. true
spring.cloud.gateway.global-filter.netty-routing.enabled netty-routing global 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.netty-write-response.enabled netty-write-response 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.reactive-load-balancer-client.enabled reactive-load-balancer-client 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.remove-cached-body.enabled remove-cached-body 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.route-to-request-url.enabled route-to-request-url 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.global-filter.websocket-routing.enabled websocket-routing 글로벌 필터를 사용하도록 설정합니다. true
spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping URL 처리기에 글로벌 CORS 구성을 추가해야 합니다. false
spring.cloud.gateway.globalcors.cors-configurations
spring.cloud.gateway.redis-rate-limiter.burst-capacity-header 버스트 용량 구성을 반환하는 헤더의 이름입니다. X-RateLimit-Burst-Capacity
spring.cloud.gateway.redis-rate-limiter.config
spring.cloud.gateway.redis-rate-limiter.include-headers 속도 제한기 정보가 포함된 헤더를 포함할지 여부를 나타냅니다. 기본값은 true입니다. true
spring.cloud.gateway.redis-rate-limiter.remaining-header 현재 초 동안 남은 요청 수를 반환하는 헤더의 이름입니다. X-RateLimit-Remaining
spring.cloud.gateway.redis-rate-limiter.replenish-rate-header 보충 비율 구성을 반환하는 헤더의 이름입니다. X-RateLimit-Replenish-Rate
spring.cloud.gateway.redis-rate-limiter.requested-tokens-header 요청된 토큰 구성을 반환하는 헤더의 이름입니다. X-RateLimit-Requested-Tokens
spring.cloud.gateway.restrictive-property-accessor.enabled SpEL에서 메서드 및 속성 액세스를 제한합니다. true
spring.cloud.gateway.predicate.after.enabled after 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.before.enabled before 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.between.enabled between 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.cloud-foundry-route-service.enabled cloud-foundry-route-service 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.cookie.enabled cookie 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.header.enabled header 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.host.enabled host 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.host.include-port 호스트 이름과 일치하는 포트를 포함합니다. true
spring.cloud.gateway.predicate.method.enabled method 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.path.enabled path 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.query.enabled query 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.read-body.enabled read-body 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.remote-addr.enabled remote-addr 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.weight.enabled weight 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.predicate.xforwarded-remote-addr.enabled xforwarded-remote-addr 조건자를 사용하도록 설정합니다. true
spring.cloud.gateway.set-status.original-status-header-name 프록시 요청의 HTTP 코드가 포함된 헤더의 이름입니다.
spring.cloud.gateway.streaming-media-types
spring.cloud.gateway.x-forwarded.enabled XForwardedHeadersFilter가 사용하도록 설정된 경우입니다. true
spring.cloud.gateway.x-forwarded.for-append X-Forwarded-For를 목록으로 추가하는 것이 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.for-enabled X-Forwarded-For 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.host-append X-Forwarded-Host를 목록으로 추가하는 것이 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.host-enabled X-Forwarded-Host 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.order XForwardedHeadersFilter의 순서입니다. 0
spring.cloud.gateway.x-forwarded.port-append X-Forwarded-Port를 목록으로 추가하는 것이 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.port-enabled X-Forwarded-Port 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.prefix-append X-Forwarded-Prefix를 목록으로 추가하는 것이 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.prefix-enabled X-Forwarded-Prefix 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.proto-append X-Forwarded-Proto를 목록으로 추가하는 것이 사용하도록 설정된 경우. true
spring.cloud.gateway.x-forwarded.proto-enabled X-Forwarded-Proto 사용하도록 설정된 경우. true
spring.cloud.gateway.httpclient.compression Netty HttpClient에 대한 압축을 사용하도록 설정합니다. false
spring.cloud.gateway.httpclient.connect-timeout 연결된 시간 제한(밀리초)입니다. 기본값은 30s입니다.
spring.cloud.gateway.httpclient.max-header-size 최대 응답 헤더 크기입니다.
spring.cloud.gateway.httpclient.max-initial-line-length 최대 초기 줄 길이입니다.
spring.cloud.gateway.httpclient.pool.acquire-timeout FIXED 형식의 경우에만 획득을 기다리는 최대 시간(밀리초)입니다.
spring.cloud.gateway.httpclient.pool.eviction-interval 지정된 간격으로 백그라운드에서 정기적인 제거 검사를 수행합니다. 기본적으로 사용하지 않도록 설정됩니다.({@link Duration#ZERO}). 0
spring.cloud.gateway.httpclient.pool.max-connections FIXED 형식에만 기존 연결에 대한 보류 중인 인수를 시작하기 전 최대 연결 수가 지정됩니다.
spring.cloud.gateway.httpclient.pool.max-idle-time 채널이 닫힐 때까지의 시간(밀리초)입니다. NULL인 경우 최대 유휴 시간은 없습니다.
spring.cloud.gateway.httpclient.pool.max-life-time 채널이 닫힐 때까지의 기간입니다. NULL인 경우 최대 수명은 없습니다.
spring.cloud.gateway.httpclient.pool.metrics 채널 풀 메트릭을 수집하여 Micrometer에 등록할 수 있습니다. 기본적으로 사용하지 않도록 설정됩니다. false
spring.cloud.gateway.httpclient.pool.name 채널 풀 맵 이름은 기본적으로 프록시로 설정됩니다. proxy
spring.cloud.gateway.httpclient.pool.type HttpClient가 사용할 풀 형식이며 기본값은 ELASTIC입니다.
spring.cloud.gateway.httpclient.response-timeout 응답 시간 제한입니다.
spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout SSL close_notify 플러시 시간 제한입니다. 기본값 3000 ms입니다. 3000ms
spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout SSL close_notify 읽기 시간 제한입니다. 기본값은 0 ms입니다. 0
spring.cloud.gateway.httpclient.ssl.handshake-timeout SSL 핸드셰이크 시간 제한입니다. 기본값은 10000 ms.입니다. 10000ms
spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager Netty InsecureTrustManagerFactory를 설치합니다. 이는 안전하지 않으며 프로덕션에 적합하지 않습니다. false
spring.cloud.gateway.httpclient.websocket.max-frame-payload-length 최대 프레임 페이로드 길이입니다.
spring.cloud.gateway.httpclient.websocket.proxy-ping 다운스트림 서비스에 대한 프록시 ping 프레임입니다. 기본값은 true입니다. true
spring.cloud.gateway.httpclient.wiretap Netty HttpClient에 대한 도청 디버깅을 사용하도록 설정합니다. false
spring.cloud.gateway.httpserver.wiretap Netty HttpServer에 대한 도청 디버깅을 사용하도록 설정합니다. false
spring.cloud.gateway.metrics.enabled 메트릭 데이터 컬렉션을 사용하도록 설정합니다. false
spring.cloud.gateway.metrics.prefix 게이트웨이에서 내보내는 모든 메트릭의 접두사입니다. spring.cloud.gateway
spring.cloud.gateway.metrics.tags 메트릭에 추가된 태그 맵입니다.
spring.cloud.gateway.observability.enabled 마이크로미터 가시성 지원이 켜져야 합니다. true

일반 구성

다음 목록은 일반적인 구성을 설명합니다.

  • 관련 구성 로깅
    • logging.level.*
    • logging.group.*
    • logging.* 네임스페이스의 다른 모든 구성은 금지되어야 합니다. 예를 들어, logging.file을 사용하여 로그 파일을 작성하는 것은 금지되어야 합니다.