jsonString.append(JSON_TTL_SEC_LABEL).append(ATTR_SEP).append(event.getTTL()).append(ATTR_JSON); if (!Utils.isEmpty(event.getLocation())) { String escaped = StringEscapeUtils.escapeJson(event.getLocation()); // escape double quote chars jsonString.append(JSON_LOCATION_LABEL).append(ATTR_SEP); Utils.quote(escaped, jsonString).append(ATTR_JSON);
@Override public void event(Object arg0, SyslogServerIF config, SocketAddress arg2, SyslogServerEventIF event) { Date date = (event.getDate() == null ? new Date() : event.getDate()); String facility = getFacilityString(event.getFacility()); OpLevel level = getOpLevel(event.getLevel()); TrackingEvent tevent = logger.newEvent(facility, event.getMessage()); tevent.getOperation().setSeverity(level); tevent.getOperation().addProperty(new Property("facility", facility)); tevent.getOperation().addProperty(new Property("hostname", event.getHost())); tevent.getOperation().addProperty(new Property("level", event.getLevel(), ValueTypes.VALUE_TYPE_ID)); if (arg2 instanceof InetSocketAddress) { InetSocketAddress from = (InetSocketAddress) arg2; tevent.getOperation().addProperty(new Property("hostaddr", from.getAddress().getHostAddress())); tevent.setLocation(from.getAddress().getHostAddress()); } else { tevent.setLocation(event.getHost()); } tevent.setCharset(config.getConfig().getCharSet()); if (event instanceof StructuredSyslogServerEvent) { processRFC5424(facility, (StructuredSyslogServerEvent) event, tevent); } else { processRFC3164(facility, event, tevent); } // extract name=value pairs if available extractVariables(event, tevent); String locationKey = tevent.getLocation() + "/" + tevent.getOperation().getResource(); tevent.stop(date.getTime() * 1000, getUsecSinceLastEvent(locationKey)); logger.tnt(tevent); }