diff --git a/samples/client/pom.xml b/samples/client/pom.xml
index a13d23a..5bc48d9 100644
--- a/samples/client/pom.xml
+++ b/samples/client/pom.xml
@@ -21,10 +21,10 @@
     </dependency>
 
     <!-- 微服务 健康监控 -->
-    <!-- <dependency>
+    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-actuator</artifactId>
-    </dependency> -->
+    </dependency>
 
     <dependency>
       <groupId>org.springframework.boot</groupId>
@@ -32,7 +32,7 @@
     </dependency>
 
 
-    <dependency>
+    <!-- <dependency>
       <groupId>com.supwisdom.infras</groupId>
       <artifactId>infras-mvc</artifactId>
     </dependency>
@@ -47,7 +47,6 @@
       <artifactId>infras-i18n</artifactId>
     </dependency>
 
-    <!-- 
     <dependency>
       <groupId>com.supwisdom.infras</groupId>
       <artifactId>infras-lang</artifactId>
@@ -96,6 +95,10 @@
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.springframework.cloud</groupId>
+      <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
+    </dependency>
 
 
     <!-- Test things -->
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
index b09fe05..54b83cc 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
@@ -2,16 +2,35 @@
 
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.web.servlet.ServletRegistrationBean;
 import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker;
+import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;
 import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.context.annotation.Bean;
+
+import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet;
 
 @SpringBootApplication
 @EnableCircuitBreaker
-@EnableFeignClients
+@EnableFeignClients(value = "com.supwisdom.leaveschool.client.service")
+@EnableHystrixDashboard
 public class ClientApplication {
 
   public static void main(String[] args) {
     SpringApplication.run(ClientApplication.class, args);
   }
+  
+  
+  @Bean
+  public ServletRegistrationBean<HystrixMetricsStreamServlet> hystrixMetricsStreamServlet() {
+    HystrixMetricsStreamServlet hystrixMetricsStreamServlet = new HystrixMetricsStreamServlet();
+    
+    ServletRegistrationBean<HystrixMetricsStreamServlet> servletRegistrationBean = new ServletRegistrationBean<HystrixMetricsStreamServlet>(hystrixMetricsStreamServlet);
+    servletRegistrationBean.setName("hystrixMetricsStreamServlet");
+    servletRegistrationBean.setLoadOnStartup(1);
+    servletRegistrationBean.addUrlMappings("/hystrix.stream");
+    
+    return servletRegistrationBean;
+  }
 
 }
diff --git a/samples/client/src/main/resources/application.yml b/samples/client/src/main/resources/application.yml
index 550499b..9c58458 100755
--- a/samples/client/src/main/resources/application.yml
+++ b/samples/client/src/main/resources/application.yml
@@ -20,8 +20,8 @@
   client:
     config:
       default:
-        connectTimeout: 60000
-        readTimeout: 60000
+        connectTimeout: 5000
+        readTimeout: 5000
         loggerLevel: full
   hystrix:
     enabled: true
@@ -34,6 +34,6 @@
           enabled: true
         isolation:
           thread:
-            timeoutInMilliseconds: 60000
+            timeoutInMilliseconds: 5000
 
 gateway.api.url: http://localhost:5555/api
diff --git a/samples/gateway/pom.xml b/samples/gateway/pom.xml
index 93aebcc..611dd9a 100644
--- a/samples/gateway/pom.xml
+++ b/samples/gateway/pom.xml
@@ -21,10 +21,10 @@
     </dependency>
 
     <!-- 微服务 健康监控 -->
-    <!-- <dependency>
+    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-actuator</artifactId>
-    </dependency> -->
+    </dependency>
 
     <!-- <dependency>
       <groupId>org.springframework.boot</groupId>
@@ -36,6 +36,20 @@
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-gateway</artifactId>
     </dependency>
+    
+    <dependency>
+      <groupId>org.springframework.cloud</groupId>
+      <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
+    </dependency>
+    <!-- <dependency>
+      <groupId>org.springframework.cloud</groupId>
+      <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
+    </dependency> -->
+    
+    <!-- <dependency>
+      <groupId>io.micrometer</groupId>
+      <artifactId>micrometer-registry-prometheus</artifactId>
+    </dependency> -->
 
 
     <!-- Test things -->
diff --git a/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/GatewayApplication.java b/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/GatewayApplication.java
index 39b0c99..089a50c 100644
--- a/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/GatewayApplication.java
+++ b/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/GatewayApplication.java
@@ -10,4 +10,17 @@
     SpringApplication.run(GatewayApplication.class, args);
   }
 
+//  
+//  @Bean
+//  public ServletRegistrationBean<HystrixMetricsStreamServlet> hystrixMetricsStreamServlet() {
+//    HystrixMetricsStreamServlet hystrixMetricsStreamServlet = new HystrixMetricsStreamServlet();
+//    
+//    ServletRegistrationBean<HystrixMetricsStreamServlet> servletRegistrationBean = new ServletRegistrationBean<HystrixMetricsStreamServlet>(hystrixMetricsStreamServlet);
+//    servletRegistrationBean.setName("hystrixMetricsStreamServlet");
+//    servletRegistrationBean.setLoadOnStartup(1);
+//    servletRegistrationBean.addUrlMappings("/hystrix.stream");
+//    
+//    return servletRegistrationBean;
+//  }
+//  
 }
diff --git a/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/controller/error/ErrorController.java b/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/controller/error/ErrorController.java
new file mode 100644
index 0000000..77cb767
--- /dev/null
+++ b/samples/gateway/src/main/java/com/supwisdom/leaveschool/gateway/controller/error/ErrorController.java
@@ -0,0 +1,27 @@
+package com.supwisdom.leaveschool.gateway.controller.error;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.http.HttpStatus;
+import org.springframework.util.MimeTypeUtils;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseStatus;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+public class ErrorController {
+  
+  private static final Logger logger = LoggerFactory.getLogger(ErrorController.class);
+
+  @RequestMapping(value = "/error", produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+  @ResponseStatus(value = HttpStatus.BAD_GATEWAY)
+  public Map<String, Object> error() {
+    logger.debug("error");
+    Map<String, Object> result = new HashMap<String, Object>();
+    result.put("error", "Bad Gateway");
+    return result;
+  }
+}
diff --git a/samples/gateway/src/main/resources/application.yml b/samples/gateway/src/main/resources/application.yml
index f472001..35065a6 100755
--- a/samples/gateway/src/main/resources/application.yml
+++ b/samples/gateway/src/main/resources/application.yml
@@ -6,7 +6,7 @@
   level:
     root: INFO
     org.springframework.web: INFO
-    org.springframework.cloud.gateway: INFO
+    org.springframework.cloud.gateway: TRACE
     com.supwisdom.infras.security: DEBUG
     com.supwisdom.leaveschool: DEBUG
 
@@ -23,5 +23,21 @@
         - Path=/api/sample-user/**
         filters:
         - RewritePath=/(?<prefix>.*)/sample-user/(?<suffix>.*), /$\{prefix}/$\{suffix}
+        - name: Hystrix
+          args:
+            name: default
+            fallbackUri: forward:/error
+      metrics:
+        enabled: true
+
+hystrix:
+  command:
+    default:
+      execution:
+        timeout:
+          enabled: true
+        isolation:
+          thread:
+            timeoutInMilliseconds: 5000
 
 management.endpoints.web.exposure.include: '*'
diff --git a/samples/user/src/main/java/com/supwisdom/leaveschool/user/controller/api/admin/ApiAdminUserController.java b/samples/user/src/main/java/com/supwisdom/leaveschool/user/controller/api/admin/ApiAdminUserController.java
index f8adf36..ee17ba3 100644
--- a/samples/user/src/main/java/com/supwisdom/leaveschool/user/controller/api/admin/ApiAdminUserController.java
+++ b/samples/user/src/main/java/com/supwisdom/leaveschool/user/controller/api/admin/ApiAdminUserController.java
@@ -3,6 +3,8 @@
 import java.util.HashMap;
 import java.util.Map;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.util.MimeTypeUtils;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
@@ -13,6 +15,7 @@
 @RequestMapping("/api/admin/users")
 public class ApiAdminUserController {
   
+  private static final Logger logger = LoggerFactory.getLogger(ApiAdminUserController.class);
 
   /**
    * curl -i -s -X GET -H 'Accept:application/json' 'http://localhost:10010/api/admin/users/greeting/abc'
@@ -22,8 +25,8 @@
    */
   @GetMapping(path = "/greeting/{name}", produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
   public Map<String, Object> greeting(@PathVariable("name") String name) {
-    System.out.println(name);
-    Map<String, Object> result = new HashMap<>();
+    logger.debug(name);
+    Map<String, Object> result = new HashMap<String, Object>();
     result.put("message", "Good " + name);
     return result;
   }
diff --git a/samples/user/src/main/resources/application.yml b/samples/user/src/main/resources/application.yml
index f8a64c2..d7c4020 100755
--- a/samples/user/src/main/resources/application.yml
+++ b/samples/user/src/main/resources/application.yml
@@ -5,7 +5,7 @@
 logging:
   level:
     root: INFO
-    org.springframework.web: INFO
+    org.springframework.web: TRACE
     com.supwisdom.infras.security: DEBUG
     com.supwisdom.leaveschool: DEBUG
 
