Ok, então parece que descobri isso. Vou tentar postar uma resposta completa aqui esperando que isso ajude alguém. Os documentos não são os mais claros sobre isso.
As referências que usei para a configuração são Syslogd e TechTarget
Primeiro, você precisa configurar o $OPENNMS_HOME/etc/syslogd-configuration.xml
para ter o seguinte:
<configuration
syslog-port="10514"
new-suspect-on-message="false"
parser="org.opennms.netmgt.syslogd.CustomSyslogParser"
forwarding-regexp="((.+?) (.*))\r?\n?$"
matching-group-host="2"
matching-group-message="3"
/>
<ueiList>
<ueiMatch>
<match type="regex" expression="YOUR REGEX HERE"/>
<uei>uei.opennms.org/foo1/foo2/foo3</uei>
</ueiMatch>
</ueiList>
O elemento ueiList
foi meu primeiro problema. É aqui que você mapeia a mensagem do syslog para um uei personalizado. O uei pode ser personalizado para criar qualquer identificador exclusivo que você deseje ter.
Meu segundo problema foi mapear o uei personalizado para ter propriedades, como um nível de alerta. Isso é realizado através do $OPENNMS_HOME/etc/eventconf.xml
Arquivo. Inseri o seguinte código logo abaixo da tag </global>
para configurar propriedades para o meu novo uei personalizado.
<event>00-custom.conf
<uei>uei.opennms.org/foo1/foo2/foo3</uei>
<event-label>Event Label Here</event-label>
<descr>
An event description here
</descr>
<logmsg dest='logndisplay'>Here is the Log: %parm[all]%</logmsg>
<severity>Critical</severity>
</event>
Com essas mensagens syslog, elas devem entrar com as propriedades desejadas. OBSERVAÇÃO: No meu cenário, estou usando mensagens syslog não padrão, e é por isso que preciso usar a configuração parser="org.opennms.netmgt.syslogd.CustomSyslogParser"
no meu arquivo syslogd-confguration.xml
. Se você estiver usando o Syslog-NG ou um syslog formatado melhor, há outras opções.
Para ajudar na solução de problemas, você pode ir para $OPENNMS_HOME/etc
ou $OPENNMS_HOME/bin
e executar o seguinte: opennms -v status
isso deve mostrar todos os processos em execução para o NMS e seu status.
NOTA: Depois de alterar um arquivo de configuração, você deve executar service opennms restart
(sistemas debian) para recarregar a nova configuração. Se você receber o erro da JVM ou "não foi possível conectar-se ao host local", é mais provável que você tenha violado uma dessas duas configurações. Até mesmo adicionar um espaço extra na parte superior do arquivo xml criará esse problema. Tenha cuidado ao editar os arquivos e eu recomendo criar backups.