// harvest request information
StringBuilder connect = new StringBuilder();
connect.append('{');
appendJSON(connect, "time", GenericFormatter.SHORT_MILSEC_FORMATTER.format());
appendJSON(connect, "trail", (referer == null) ? "" : referer.toNormalform(false, false));
appendJSON(connect, "nick", (post == null) ? "" : post.get("nick", ""));
appendJSON(connect, "tag", (post == null) ? "" : post.get("tag", ""));
appendJSON(connect, "icon", (post == null) ? "" : post.get("icon", ""));
appendJSON(connect, "ip", header.get(HeaderFramework.CONNECTION_PROP_CLIENTIP, ""));
appendJSON(connect, "agent", header.get("User-Agent", ""));