首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在finagle中控制/health端点

在finagle中控制/health端点
EN

Stack Overflow用户
提问于 2017-04-13 09:38:47
回答 2查看 406关注 0票数 2

我正在试图覆盖健康端点。我需要让它返回其他的东西,然后‘好’。正如docs中所描述的,我应该使用Lifecycle.Warmup特性。都不是

代码语言:javascript
复制
HttpMuxer.addHandler(Route("/health", new ReplyHandler("not OK\n"))) 

重写方法也没有帮助。

下面的代码也没有帮助。

代码语言:javascript
复制
HttpMuxer.addHandler(
      Route(
        pattern = "/health",
        handler = new ReplyHandler("not OK\n"),
        index = Some(RouteIndex(
          alias = "Health",
          group = group))))

我该怎么做才能改变这个信息?

UPD:另外一种应该有效的方法,但不起作用

代码语言:javascript
复制
premain {
    addAdminRoute(
      AdminHttpServer
        .Route("/health1",
          handler = service,
          "Service Health",
          Some("Misc"),
          false, Method.Get)
    )
  }
  val service = new Service[Request, Response] {
    def apply(request: Request) = {
      val response = Response(request.version, Status.Ok)
      response.contentString = "test" + "\n"
      com.twitter.util.Future.value(response)
    }
  }

我调试,我看到它被添加到Muxer中,我看到它也出现在日志中。不知道为什么不起作用

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-24 08:35:32

听起来有点神奇,但是如果我把这段代码放在main之前,而不是premain之前,它就能工作了。

代码语言:javascript
复制
HttpMuxer.addHandler(
    Route(
      pattern = "/health",
      handler = new ReplyHandler("not OK\n"),
      index = Some(RouteIndex(alias = "Health", group = group))
    )
  )
票数 0
EN

Stack Overflow用户

发布于 2017-04-19 21:28:42

看上去应该管用的。您应该再次检查您正在访问的url是$ADMIN_HOST:$ADMIN_PORT/health,而不是$ADMIN_HOST:$ADMIN_PORT/admin/health。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43388705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档