private void addComplexValueToQueue(final EventMessage event) { // Flatten JSON message into N measures final String metricName = OpenTSDBValueConverter.createMetricName(event); final Map<String, Object> unfoldValues = OpenTSDBValueConverter.extractMeasuresFromComplexType(metricName, event.getMessage()); for (final Map.Entry<String, Object> e : unfoldValues.entrySet()) { final EventMessage newEvent = new EventMessage(); BeanUtils.copyProperties(event, newEvent); newEvent.setTopic(e.getKey()); newEvent.setMessage(e.getValue().toString()); batchQueue.add(newEvent); } }
public static String buildMessageToPublish(final InternalAlert alert, final String value, final String topic) { final Long timestamp = System.currentTimeMillis(); final EventMessage event = new EventMessage(); event.setAlert(alert.getId()); event.setProvider(alert.getProviderId()); event.setSensor(alert.getSensorId()); event.setMessage(value); event.setTimestamp(DateUtils.timestampToString(timestamp)); event.setPublisher("SENTILO"); event.setType(EventType.ALARM.name()); event.setTopic(topic); return converter.marshal(event); }
public static String buildContentToPublish(final OrderInputMessage message, final Topic topic) { final Long timestamp = System.currentTimeMillis(); final EventMessage event = new EventMessage(); event.setProvider(message.getProviderId()); event.setSensor(message.getSensorId()); event.setMessage(message.getOrder()); event.setTimestamp(DateUtils.timestampToString(timestamp)); event.setTime(timestamp); event.setType(EventType.ORDER.name()); event.setTopic(topic.getTopic()); setCustomsFields(event); return converter.marshal(event); }
public static String buildContentToPublish(final AlarmInputMessage message, final Topic topic) { final Long timestamp = System.currentTimeMillis(); final EventMessage event = new EventMessage(); event.setAlert(message.getAlertId()); event.setAlertType(message.getAlertType()); event.setProvider(message.getProviderId()); event.setSensor(message.getSensorId()); event.setMessage(message.getMessage()); event.setTimestamp(DateUtils.timestampToString(timestamp)); event.setTime(timestamp); event.setType(EventType.ALARM.name()); event.setTopic(topic.getTopic()); event.setPublisher(message.getSender()); setCustomsFields(event); return converter.marshal(event); }
public static String buildContentToPublish(final Observation message, final Topic topic) { final EventMessage event = new EventMessage(); event.setProvider(message.getProvider()); event.setSensor(message.getSensor()); event.setMessage(message.getValue()); event.setTimestamp(DateUtils.timestampToString(message.getTimestamp())); event.setTime(message.getTimestamp()); event.setLocation(message.getLocation()); event.setType(EventType.DATA.name()); event.setTopic(topic.getTopic()); setCustomsFields(event); return converter.marshal(event); }