private FullHttpResponse performStatus() {
        StatDAO stat = new StatDAO();
        ResultSet resultSetTableIP = null;
        ResultSet resultSetTableRedirect = null;
        ResultSet resultSetTableRecentConnections = null;
        
        // HTML head
        StringBuilder message = new StringBuilder();
        StringBuilder table3 = new StringBuilder();
        message.append("<html><head>");
        message.append("<style type=\"text/css\"> ");
        message.append("table { margin: 1em; border-collapse: collapse; } ");
        message.append("td, th { padding: .3em; border: 1px #ccc solid; } ");
        message.append("thead { background: #A5C5E6; }");
        message.append("p {margin: 1em}");
        message.append("</style></head>");

        // HTML Body
        message.append("<body>");
        try {
            // 1 Total count of requests
            message.append(String.format("<p>Total: %d</p>", stat.getTotalRequests()));
            
            // 2 count of distinct IP
            resultSetTableIP = stat.getTableDataByIP();
            int countByIP = 0;
            
            table3.append("<table>");
            table3.append("<thead><tr><td>IP</td><td>Requests</td><td>Last time</td></tr></thead>");
            while (null != resultSetTableIP && resultSetTableIP.next()) {
                table3.append("<tr><td>").append(resultSetTableIP.getString("URI_STRING")).append("</td><td>");
                table3.append(resultSetTableIP.getString("C")).append("</td><td>");
                table3.append(resultSetTableIP.getString("STAMP")).append("</td></tr>");
                countByIP++;
            }
            table3.append("</table>");
            
            message.append(String.format("<p>Distinct requests by IP: %d</p>", countByIP));
            
            // 3 Count of distinct IP. table with columns | IP | Count of requests from this IP | Date of last Request |
            message.append(table3);            
            
            // 4 Count of redirects. table with columns | IP | Count of requests from this IP | Date of last Request |
            resultSetTableRedirect = stat.getTableDataByRedirect();
            message.append("<table>");
            message.append("<thead><tr><td>URL</td><td>Redirects</td></tr></thead>");
            while (null != resultSetTableRedirect && resultSetTableRedirect.next()) {
                message.append("<tr><td>").append(resultSetTableRedirect.getString("URI_STRING")).append("</td><td>")
                        .append(resultSetTableRedirect.getString("R")).append("</td></tr>");
            }
            message.append("</table>");
            
            // 5 Count of current open connections
            message.append(String.format("<p>Current connections: %d</p>", currentOnline.count()));
            
            // 6 Recent requests, 
            // table with columns | IP | Count of requests from this IP | Date of last Request |
            resultSetTableRecentConnections = stat.getTableDataLast16();
            message.append("<table>");
            message.append("<thead><tr><td>src_ip</td><td>URI</td><td>timestamp</td><td>sent_bytes</td><td"
                   ).append(">received_bytes</td><td>speed (bytes/sec)</td></tr></thead>");
            while (null != resultSetTableRecentConnections && resultSetTableRecentConnections.next()) {
                message.append("<tr><td>").append(resultSetTableRecentConnections.getString("IP")).append("</td><td>");
                message.append(resultSetTableRecentConnections.getString("URI")).append("</td><td>");
                message.append(resultSetTableRecentConnections.getString("STAMP")).append("</td><td>");
                message.append(resultSetTableRecentConnections.getString("SENT_BYTES")).append("</td><td>");
                message.append(resultSetTableRecentConnections.getString("RECEIVED_BYTES")).append("</td><td>");
                message.append(resultSetTableRecentConnections.getString("SPEED")).append("</td></tr>");
            }
            message.append("</table>");   
        } catch (SQLException ex) {
            Logger.getLogger(HttpServerHandler.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            StatDAO.attemptClose(resultSetTableIP);
            StatDAO.attemptClose(resultSetTableRedirect);
            StatDAO.attemptClose(resultSetTableRecentConnections);            
        }
        message.append("</body></html>");
        return createResponse(message.toString(), OK);
    }