diff --git a/pom.xml b/pom.xml index 69e7877..26559de 100644 --- a/pom.xml +++ b/pom.xml @@ -84,6 +84,11 @@ org.springframework.cloud spring-cloud-starter-netflix-hystrix + + org.springframework.cloud + spring-cloud-starter-netflix-hystrix-dashboard + + diff --git a/src/main/java/com/example/template/Application.java b/src/main/java/com/example/template/Application.java index 29b1741..8ddda12 100644 --- a/src/main/java/com/example/template/Application.java +++ b/src/main/java/com/example/template/Application.java @@ -4,12 +4,14 @@ import com.example.template.config.kafka.KafkaProcessor; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker; +import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard; import org.springframework.cloud.stream.annotation.EnableBinding; import org.springframework.context.ApplicationContext; @SpringBootApplication @EnableBinding(KafkaProcessor.class) @EnableCircuitBreaker +@EnableHystrixDashboard public class Application { protected static ApplicationContext applicationContext; @@ -18,7 +20,7 @@ public class Application { ProductRepository productRepository = applicationContext.getBean(ProductRepository.class); // 초기 상품 셋팅 - String[] products = {"TV", "RADIO", "NOTEBOOK", "TABLE", "CLOCK"}; + String[] products = {"TV", "MASK", "NOTEBOOK", "TABLE", "CLOCK"}; int i = 1; for(String p : products){ Product product = new Product(); diff --git a/src/main/java/com/example/template/ProductController.java b/src/main/java/com/example/template/ProductController.java index 43ab6ea..148ce9a 100644 --- a/src/main/java/com/example/template/ProductController.java +++ b/src/main/java/com/example/template/ProductController.java @@ -20,10 +20,10 @@ public class ProductController { private int count = 0; private static final String HOSTNAME = parseContainerIdFromHostname( - System.getenv().getOrDefault("HOSTNAME", "deliveries")); + System.getenv().getOrDefault("HOSTNAME", "products")); static String parseContainerIdFromHostname(String hostname) { - return hostname.replaceAll("deliveries-v\\d+-", ""); + return hostname.replaceAll("products-\\d+-", ""); } @@ -55,7 +55,7 @@ public class ProductController { logger.info(String.format("product start from %s: %d", HOSTNAME, count)); try { - Thread.sleep(500); + Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 50a68d7..5baff2e 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -10,7 +10,6 @@ spring: hibernate: show_sql: true format_sql: true - cloud: stream: kafka: @@ -41,7 +40,11 @@ spring: event-out: destination: eventTopic contentType: application/json - +management: + endpoints: + web: + exposure: + include: hystrix.stream, info, health logging: level: org.hibernate.type: trace diff --git a/src/main/resources/static/goods/img/MASK.jpg b/src/main/resources/static/goods/img/MASK.jpg new file mode 100644 index 0000000..f423383 Binary files /dev/null and b/src/main/resources/static/goods/img/MASK.jpg differ