Index: /home/joed/Onms-Trunk/opennms/opennms-services/src/main/java/org/opennms/netmgt/syslogd/ConvertToEvent.java =================================================================== --- /home/joed/Onms-Trunk/opennms/opennms-services/src/main/java/org/opennms/netmgt/syslogd/ConvertToEvent.java (revision 5128) +++ /home/joed/Onms-Trunk/opennms/opennms-services/src/main/java/org/opennms/netmgt/syslogd/ConvertToEvent.java (working copy) @@ -224,8 +224,9 @@ String facilityTxt = SyslogDefs.getFacilityName(facility); - event.setUei("uei.opennms.org/syslogd/" + facilityTxt + "/" - + priorityTxt); + event.setUei("uei.opennms.org/syslogd/" + facilityTxt + + "/" + + priorityTxt); // message = message.substring(rbIdx + 1, (message.length() - 1)); @@ -241,8 +242,9 @@ if (message.length() < 16) { stdMsg = false; } else if (message.charAt(3) != ' ' || message.charAt(6) != ' ' - || message.charAt(9) != ':' || message.charAt(12) != ':' - || message.charAt(15) != ' ') { + || message.charAt(9) != ':' + || message.charAt(12) != ':' + || message.charAt(15) != ' ') { stdMsg = false; } @@ -262,20 +264,35 @@ // Looking for forwarded messages Pattern bsdForward = Pattern.compile("^Forwarded from (\\d+\\.\\d+\\.\\d+\\.\\d+): (.*)"); - Matcher m = bsdForward.matcher(message); + Matcher m_bsd = bsdForward.matcher(message); + if ((m_bsd = bsdForward.matcher(message)).matches()) { - if ((m = bsdForward.matcher(message)).matches()) { + nodeId = SyslogdIPMgr.getNodeId(m_bsd.group(1).toString().replaceAll( + "/", + "")); - nodeId = SyslogdIPMgr.getNodeId(m.group(1).toString().replaceAll( - "/", - "")); + if (nodeId != -1) + event.setNodeid(nodeId); + // Clean up for further processing.... + event.setInterface(m_bsd.group(1)); + message = m_bsd.group(2); + log.debug("Forwarded message: " + message); + } + + Pattern syslogNGForward = Pattern.compile("^(.+?)([\\d]{1,3}\\.[\\d]{1,3}\\.[\\d]{1,3}\\.[\\d]{1,3})/(.+?) (.*)$"); + Matcher m_ng = syslogNGForward.matcher(message); + if ((m_ng = syslogNGForward.matcher(message)).matches()) { + + nodeId = SyslogdIPMgr.getNodeId(m_ng.group(2).toString().replaceAll( + "/", + "")); if (nodeId != -1) event.setNodeid(nodeId); // Clean up for further processing.... - event.setInterface(m.group(1)); - message = m.group(2); - log.debug("Forwarded message: " + message); + event.setInterface(m_ng.group(2)); + message = m_ng.group(1) + " " + m_ng.group(4); + log.debug("SyslogNG forwarded message: " + message); } @@ -289,7 +306,7 @@ String processIdStr = ""; if (lbIdx < (rbIdx - 1) && colonIdx == (rbIdx + 1) - && spaceIdx == (colonIdx + 1)) { + && spaceIdx == (colonIdx + 1)) { processName = message.substring(0, lbIdx); processIdStr = message.substring(lbIdx + 1, rbIdx); message = message.substring(colonIdx + 2); @@ -300,8 +317,9 @@ log.debug("ERROR Bad process id '" + processIdStr + "'"); processId = 0; } - } else if (lbIdx < 0 && rbIdx < 0 && colonIdx > 0 - && spaceIdx == (colonIdx + 1)) { + } else if (lbIdx < 0 && rbIdx < 0 + && colonIdx > 0 + && spaceIdx == (colonIdx + 1)) { processName = message.substring(0, colonIdx); message = message.substring(colonIdx + 2); } @@ -345,7 +363,7 @@ parmValue.setContent(processName); eventParm.setValue(parmValue); eventParms.addParm(eventParm); - + eventParm = new Parm(); eventParm.setParmName("service"); parmValue = new Value();