My solution is

        queue.type="LinkedList"
        queue.size="4096"
        queue.timeoutEnqueue="0" # timeout for reject new messages if queue
is full
        queue.dequeuebatchSize="4000"


ср, 7 февр. 2024 г. в 09:03, Prasad Koya via rsyslog <
rsyslog@lists.adiscon.com>:

> Alex, excuse me for using this thread for posting my question. But my
> question is also on the same topic.
>
> I have configured rsyslogd (v8.2102.0) to forward syslogs to two remote
> servers, one using TCP protocol and second one using UDP. Besides
> forwarding, I also have a rule to log to a local file. Here are the
> relevant sections from my rsyslog.conf. I can post the full file if needed.
>
>
>
> $MainMsgQueueTimeoutEnqueue 0
>
> local4.*              action(type="omfwd" target="10.240.219.64"
> action.resumeRetryCount="10" protocol="tcp" port="36456"
> template="Syslogs_ForwardFormat")
> local4.*              action(type="omfwd" target="10.16.39.124"
> protocol="udp" port="36456" template="Syslogs_ForwardFormat")
>
> *.*   /var/log/syslogs
>
> After the TCP connection is established and messages are getting forwarded,
> say someone pulls out the ethernet cable at the remote syslog collector 1
> that is using tcp protocol. Some number of syslogs from this point are
> still forwarded to the server 2 using udp protocol and written to the local
> file as well. However if the TCP connection to the first server does not
> recover then after some time, we do not see any syslogs in the local file
> or at the second syslog server. I straced rsyslogd and all I see is the
> recvmsg() calls on the /dev/log socket.
>
> How do we tell rsyslog to drop the TCP connection if the other end is no
> longer receiving the syslogs. Perhaps it can drop the connection and retry
> after say X minutes. I tried using resumeRetryCount as documented at
> https://www.rsyslog.com/doc/configuration/actions.html, but that is not
> helping in my situation. Perhaps I'm missing some other "action" setting?
> Appreciate if you can give me a pointer to a sample configuration or point
> me to relevant documentation.
>
> Thank you.
>
>
>
>
> On Mon, Feb 5, 2024 at 11:11 AM David Lang via rsyslog <
> rsyslog@lists.adiscon.com> wrote:
>
> > you have a queue of 1024 for rabbitmq, if there are more messages than
> > that
> > pending, other processing will stop until the queue can accept more
> > messages.
> > Setup a larger queue (potentially a disk assisted queue) to handle longer
> > outages.
> >
> > you may also want to consider configuring the queue to throw away
> messages
> > if it
> > gets too full.
> >
> > David Lang
> >
> >   On Mon, 5 Feb 2024, Alex via rsyslog wrote:
> >
> > > I have rsyslog (8.2310.0) in docker container from latest alpine image
> > as a
> > > syslog collector with forwarding to logstash.local and rabbitmq.local
> > >
> > > Rsyslog stops working when rabbitmq is unavailable and work fine when
> > > rabbitmq server is up
> > >
> > > How to configure rsyslog to work when the destination is unavailable ?
> > >
> > >
> > > module(load="omrabbitmq")
> > > module(load="imptcp" threads="3")
> > > input(type="imptcp" port="514" ruleset="syslogCollector")
> > >
> > > template(
> > >    name="json_syslog"
> > >    type="list"
> > >    option.json="on"
> > > ) {
> > >    constant(value="{")
> > >    constant(value="\"@timestamp\":\"")
> > > property(name="timereported" dateFormat="rfc3339")
> > >    constant(value="\",\"type\":\"syslog_json")
> > >    constant(value="\",\"tag\":\"")
> > > property(name="syslogtag" format="json")
> > >    constant(value="\",\"relayhost\":\"")     property(name="fromhost")
> > >    constant(value="\",\"relayip\":\"")
>  property(name="fromhost-ip")
> > >    constant(value="\",\"logsource\":\"")     property(name="source")
> > >    constant(value="\",\"hostname\":\"")      property(name="hostname"
> > > caseconversion="lower")
> > >    constant(value="\",\"program\":\"")
>  property(name="programname")
> > >    constant(value="\",\"source\":\"")        property(name="app-name"
> > > caseConversion="lower" onEmpty="null")
> > >    constant(value="\",\"priority\":\"")      property(name="pri")
> > >    constant(value="\",\"severity\":\"")
> > > property(name="syslogseverity" caseConversion="upper")
> > >    constant(value="\",\"facility\":\"")
> > property(name="syslogfacility")
> > >    constant(value="\",\"severity_label\":\"")
> > > property(name="syslogseverity-text")
> > >    constant(value="\",\"facility_label\":\"")
> > > property(name="syslogfacility-text")
> > >    constant(value="\",\"message\":\"")       property(name="msg"
> > format="json")
> > >    constant(value="\",\"end_msg\":\"")
> > >    constant(value="\"}\n")
> > > }
> > >
> > > ruleset(
> > >    name="syslogCollector"
> > > ) {
> > >   @@elk.local:5000;json_syslog
> > >   call send2mqtt
> > > }
> > >
> > > ruleset (
> > >    name="send2mqtt"
> > >
> > >    queue.type="LinkedList"
> > >    queue.size="1024"
> > >    queue.dequeueBatchSize="512"
> > >    queue.filename="q_mqtt"
> > >    queue.saveonshutdown="off"
> > >    queue.highwatermark="450"
> > >    queue.lowwatermark="50"
> > >
> > > ) {
> > >    action(
> > >        type="omrabbitmq"
> > >        host="rabbitmq.local"
> > >        verify_peer="off"
> > >        verify_hostname="off"
> > >        virtual_host="/"
> > >        user="xxx"
> > >        password="xxx"
> > >        exchange="syslog"
> > >        routing_key="messages"
> > >        body_template="json_syslog"
> > >
> > >        action.resumeRetryCount="0"
> > >        action.reportSuspension="on"
> > >        action.reportSuspensionContinuation="on"
> > >        action.resumeInterval="10"
> > >    )
> > > }
> > > _______________________________________________
> > > rsyslog mailing list
> > > https://lists.adiscon.net/mailman/listinfo/rsyslog
> > > http://www.rsyslog.com/professional-services/
> > > What's up with rsyslog? Follow https://twitter.com/rgerhards
> > > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
> myriad
> > of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> > DON'T LIKE THAT.
> > >
> > _______________________________________________
> > rsyslog mailing list
> > https://lists.adiscon.net/mailman/listinfo/rsyslog
> > http://www.rsyslog.com/professional-services/
> > What's up with rsyslog? Follow https://twitter.com/rgerhards
> > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
> > of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> > DON'T LIKE THAT.
> >
> _______________________________________________
> rsyslog mailing list
> https://lists.adiscon.net/mailman/listinfo/rsyslog
> http://www.rsyslog.com/professional-services/
> What's up with rsyslog? Follow https://twitter.com/rgerhards
> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> DON'T LIKE THAT.
_______________________________________________
rsyslog mailing list
https://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to