As of Jan. 2014, OpenNMS supports just a single syslogd listener, as per http://www.opennms.org/documentation/java-xsddocs-stable/syslogd-configuration.html#element_syslogd-configuration where only a single configuration element is supported.
The key limitation is that this means OpenNMS can only support a single forwarding-regexp expression for all devices that report events via syslog. As there is some diversity in how devices report their hostname in their syslog messages, it would be helpful if OpenNMS could support multiple configuration elements, each defining a unique listening port and unique forwarding-regexp and related settings.
One could then configure specific devices to send syslog messages to a high port dedicated to their format of syslog messages.
I ran into this with Netgear FS728TPv2 switches, which unfortunately require special handling to correctly extract their hostname from their syslog messages.
Tim Miller Dyck