Eu vejo pelo menos uma opção conveniente: 1) Alimente seus logs SVN ao syslog, a maioria das distribuições usa o rsyslog agora, então aqui está um exemplo para o rsyslog (5.x):
$InputFileName /${path_to}/svn.log
$InputFileTag svn:
$InputFileStateFile /var/spool/rsyslog/svn_log
$InputFileSeverity notice
$InputFileFacility local7
$InputRunFileMonitor
:syslogtag, isequal, "svn:" @@${IP_of_logstash}:$PORT
&~
Por favor, note que essa configuração será diferente para versões mais recentes do rsyslog. versão 8.x config:
#reading SVN logs
input(type="imfile" File="/var/log/${path_to}/svn.log"
Tag="svn:"
StateFile="/var/spool/rsyslog/svn_log"
Severity="normal"
Facility="local7")
:syslogtag, isequal, "svn:" @@${IP_of_logstash}:$PORT
&~
2) Configurar logstash syslog listener e parser para logs
Neste caso, os logs não serão armazenados adicionalmente no syslog, mas encaminhados diretamente para o logstash e o transporte syslog cuidará disso.