There is no systemd on this platform.

More details about the platform:

Description:    Ubuntu 12.04.1 LTS
Release:    12.04
Codename:    precise

Linux 3.13.0-39-generic #66-Ubuntu SMP


On Fri, Nov 28, 2014 at 7:14 AM, Mehrdad Pazooki <[email protected]>
wrote:

> It's running in Ubuntu (precise). I'll check it for systemd. I think
> syslog call is blocking because of /dev/log . if I use UDP locally, will
> that bypass /Dev/log?
>
>
> On Fri, Nov 28, 2014, 04:08 Rainer Gerhards <[email protected]>
> wrote:
>
>> which platform is this running on? Is systemd journal active?
>>
>> Rainer
>>
>> 2014-11-27 22:37 GMT+01:00 Mehrdad Pazooki <[email protected]>:
>>
>> > Hi,
>> >
>> > I am calling syslog in c++ using syslog.h . the time it takes on each
>> call
>> > is too long. I am comparing it with IPC Queue and there is almost
>> 100usec
>> > overhead when I call syslog() vs ipc.
>> > I did some benchmarking, when I use a single process for hitting syslog
>> the
>> > performance is great it stays at avg 11usec/record for 1m records on my
>> > system. but if I run 10 of these processes the time will increase to
>> about
>> > 100usec/record.
>> >
>> > Another problem is that memory usage remains really low ~0% so that
>> tells
>> > me syslog() is somehow blocking and using cpu rather than do a set an
>> > forget to the queue and process it later on. another issue is that all
>> > workers are not engage. I see 5 workers but only 3 are working.
>> > The way I'm using it in prod is about 500 threads hit syslog(). I need
>> to
>> > keep the time it takes for a syslog() call to a constant of 10usec
>> ideal to
>> > max 40usec.
>> > Also, I am not doing openlog() before calling syslog()
>> >
>> > This is my configuration:
>> >
>> > #  /etc/rsyslog.conf    Configuration file for rsyslog.
>> > #
>> > #            For more information see
>> > #            /usr/share/doc/rsyslog-doc/
>> > html/rsyslog_conf.html
>> > #
>> > #  Default logging rules can be found in /etc/rsyslog.d/50-default.conf
>> >
>> >
>> > #################
>> > #### MODULES ####
>> > #################
>> > $ModLoad imuxsock # provides support for local system logging
>> > $ModLoad imklog   # provides kernel logging support (previously done by
>> > rklogd)
>> > #$ModLoad immark  # provides --MARK-- message capability
>> >
>> > # provides UDP syslog reception
>> > #$ModLoad imudp
>> > #$UDPServerRun 514
>> >
>> > # provides TCP syslog reception
>> > #$ModLoad imtcp
>> > #$InputTCPServerRun 514
>> >
>> >
>> > # For debug only
>> > # module(load="impstats" interval="1" severity="8")
>> >
>> > ###########################
>> > #### GLOBAL DIRECTIVES ####
>> > ###########################
>> >
>> > #
>> > # Use traditional timestamp format.
>> > # To enable high precision timestamps, comment out the following line.
>> > #
>> > $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
>> >
>> > # Filter duplicated messages
>> > $RepeatedMsgReduction off
>> >
>> > #
>> > # Set the default permissions for all log files.
>> > #
>> > $FileOwner root
>> > $FileGroup adm
>> > $FileCreateMode 0640
>> > $DirCreateMode 0755
>> > $Umask 0022
>> > $PrivDropToUser root
>> > $PrivDropToGroup root
>> >
>> > #
>> > # Where to place spool files
>> > #
>> > $WorkDirectory /var/spool/rsyslog
>> >
>> > $ActionResumeRetryCount         -1                    # infinite
>> retries if
>> > host is down
>> > $SystemLogRateLimitInterval     0
>> > $SystemLogRateLimitBurst        0
>> > $MaxMessageSize                    4k
>> >
>> > main_queue(
>> >     queue.Type="LinkedList"
>> >     queue.Size="1000000"
>> >     queue.workerThreads="8"
>> >     queue.workerThreadMinimumMessages="10000"
>> >     queue.SaveOnShutdown="on"
>> > )
>> >
>> >
>> >
>> > template(name="localone" type="string" string="%msg:2:$%\n") # ":2:$"
>> -->
>> > tells rsyslog to ignore the leading char, b/c rsyslog adds a leading
>> space
>> > to every message
>> >
>> > if $syslogfacility-text == 'local1' then {
>> >     action(
>> >         type="omfile"
>> >         template="localone"
>> >         file="/var/log/local1.log"
>> >         flushOnTXEnd="off"
>> >         asyncWriting="on"
>> >         ioBufferSize="64k"
>> >         queue.type="LinkedList"
>> >         queue.size="1000000"
>> >         queue.dequeueBatchSize="4096"
>> >         queue.workerThreads="8"
>> >         queue.workerThreadMinimumMessages="10000"
>> >         queue.SaveOnShutdown="on"
>> >         action.ResumeRetryCount="-1"
>> >     )
>> >     stop
>> > }
>> >
>> > #if $syslogtag contains 'rsyslogd-pstats' then {
>> > #     action(
>> > #        type="omfile"
>> > #        queue.type="LinkedList"
>> > #        queue.discardmark="1000"
>> > #        name="pstats"
>> > #        file="/var/log/pstats.log"
>> > #    )
>> > #    stop
>> > #}
>> > _______________________________________________
>> > rsyslog mailing list
>> > http://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
>> http://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
http://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