Итак, у меня есть следующий журнал:
2018-09-13 10:29:25 ERROR [kafka-coordinator-heartbeat-thread | SDRVRF] o.a.k.common.network.SslTransportLayer Failed to send SSL Close message
java.io.IOException: Broken pipe
at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:65)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
at org.apache.kafka.common.network.SslTransportLayer.flush(SslTransportLayer.java:194)
at org.apache.kafka.common.network.SslTransportLayer.close(SslTransportLayer.java:162)
at org.apache.kafka.common.utils.Utils.closeAll(Utils.java:663)
at org.apache.kafka.common.network.KafkaChannel.close(KafkaChannel.java:59)
at org.apache.kafka.common.network.Selector.doClose(Selector.java:584)
at org.apache.kafka.common.network.Selector.close(Selector.java:575)
at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:404)
at org.apache.kafka.common.network.Selector.poll(Selector.java:326)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:433)
at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:232)
at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.pollNoWakeup(ConsumerNetworkClient.java:270)
at org.apache.kafka.clients.consumer.internals.AbstractCoordinator$HeartbeatThread.run(AbstractCoordinator.java:931)
2018-09-13 10:29:25 WARN [kafka-coordinator-heartbeat-thread | SDRVRF] org.apache.kafka.clients.NetworkClient Connection to node 3 terminated during authentication. This may indicate that authentication failed due to invalid credentials.
Когда я пытаюсь отправить журнал с помощью rsyslog к слушателю tcp, я получаю следующий вывод:
<133>0 2018-09-13T16:06:31.928986+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] 2018-09-13 10:29:25 ERROR [kafka-coordinator-heartbeat-thread | SDRVRF] o.a.k.common.network.SslTransportLayer Failed to send SSL Close message
<133>0 2018-09-13T16:06:31.928992+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] java.io.IOException: Broken pipe
<133>0 2018-09-13T16:06:31.928994+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
<133>0 2018-09-13T16:06:31.928995+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
<133>0 2018-09-13T16:06:31.928999+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
<133>0 2018-09-13T16:06:31.929000+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at sun.nio.ch.IOUtil.write(IOUtil.java:65)
<133>0 2018-09-13T16:06:31.929001+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
<133>0 2018-09-13T16:06:31.929003+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.SslTransportLayer.flush(SslTransportLayer.java:194)
<133>0 2018-09-13T16:06:31.929004+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.SslTransportLayer.close(SslTransportLayer.java:162)
<133>0 2018-09-13T16:06:31.929006+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.utils.Utils.closeAll(Utils.java:663)
<133>0 2018-09-13T16:06:31.929009+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.KafkaChannel.close(KafkaChannel.java:59)
<133>0 2018-09-13T16:06:31.929010+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.Selector.doClose(Selector.java:584)
<133>0 2018-09-13T16:06:31.929012+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.Selector.close(Selector.java:575)
<133>0 2018-09-13T16:06:31.929013+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:404)
<133>0 2018-09-13T16:06:31.929015+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.common.network.Selector.poll(Selector.java:326)
<133>0 2018-09-13T16:06:31.929016+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:433)
<133>0 2018-09-13T16:06:31.929018+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:232)
<133>0 2018-09-13T16:06:31.929022+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.pollNoWakeup(ConsumerNetworkClient.java:270)
<133>0 2018-09-13T16:06:31.929024+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] at org.apache.kafka.clients.consumer.internals.AbstractCoordinator$HeartbeatThread.run(AbstractCoordinator.java:931)
<133>0 2018-09-13T16:06:31.929026+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] 2018-09-13 10:29:25 WARN [kafka-coordinator-heartbeat-thread | SDRVRF] o.a.k.common.network.SslTransportLayer Failed to send SSL Close message
Как видите, он не берет всю трассировку java-стека, вместо этого он читает файл построчно.
Я хочу, чтобы вывод был следующим:
<133>0 2018-09-13T16:06:31.929024+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] whole java stack trace
<133>0 2018-09-13T16:06:31.929024+02:00 server_ip nifi-app.log - - [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag="!tag.server_ip"] new java stack trace
etcetc
У меня есть следующая конфигурация rsyslog:
$ModLoad imfile
#variables required for non-syslog log file forwarding – SystemErr
$InputFileName /var/opt/nifi-app_xxxxxxx.log
$InputFileTag nifi-app.log:
$InputFilestartmsg.regex="^[[:digit:]]{4}/[[:digit:]]{2}/[[:digit:]]{2} [[:digit:]]{1,2}:[[:digit:]]{1,2}:[[:digit:]]{1,2}"
$template NiFiFormatMessages,"<%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msgid% [2ca55a90-1cce-4544-ac22-02544e7a7100@293 sourcetag=\"!tag.server_ip"] %msg%"
Я пробовал разные сценарии, используя также $InputFileReadMode
, но безуспешно.
Не могли бы вы сказать мне, как я могу настроить rsyslog для обработки трассировок стека Java для отправки слушателю tcp?
Заранее спасибо!