@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setHeader("Cache-Control", "must-revalidate,no-cache,no-store"); final String uri = req.getPathInfo(); final String path = this.contextPath + req.getServletPath(); if (uri == null || uri.equals("/")) { resp.setStatus(HttpServletResponse.SC_OK); resp.setContentType(CONTENT_TYPE); final PrintWriter writer = resp.getWriter(); try { writer.println(MessageFormat.format(TEMPLATE, path, metricsUri, path, pingUri, path, threadsUri, path, healthcheckUri)); } finally { writer.close(); } } else if (uri.equals(healthcheckUri)) { healthCheckServlet.service(req, resp); } else if (uri.startsWith(metricsUri)) { metricsServlet.service(req, resp); } else if (uri.equals(pingUri)) { pingServlet.service(req, resp); } else if (uri.equals(threadsUri)) { threadDumpServlet.service(req, resp); } else { resp.sendError(HttpServletResponse.SC_NOT_FOUND); } }