以下のような単純なサーブレットがあります。そして、私はgcloudログにSystem.outまたはlog.infoを見ることができません。私はgcloud app logs tail -s my-app-name
を使用しました。私はGETとfaviconのログしか見ることができません。 Googleのクラウドアプリにログを有効にするのを助けてください。あなたが本当にすべてのログを取得していないかどうかを確認し、その後、サービスおよびバージョンを指定するためにGoogle AppフレキシブルなJavaロギングが機能しない
gcloud app logs tail --service=my-service --version=my-app-version
:あなたはコマンドをこのように使用することができます
@SuppressWarnings("serial")
@WebServlet(name = "Home", description = "Write low order IP address to response", urlPatterns = "/")
public class HomeServlet extends HttpServlet {
Logger logger = Logger.getLogger(HomeServlet.class.getName());
Connection conn;
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
if(logger.isLoggable(Level.FINE)) {
log("FINE is loggable.");
System.out.println("This is System Out. FINE is loggable");
logger.fine("Received GET request");
} else {
log("FINE is not loggable");
System.out.println("This is System Out. FINE is not loggable");
logger.severe("Received GET request");
}
String path = req.getRequestURI();
if (path.startsWith("/favicon.ico")) {
return; // ignore the request for favicon.ico
}
PrintWriter out = resp.getWriter();
resp.setContentType("text/plain");
String userIp = req.getRemoteAddr();
out.print("Your IP is: " + userIp);
log("responded GET request from: " + userIp);
}
}