Hello,

I am troubleshooting an issue on a Yocto based distribution with sending
logs
to a python program '/usr/bin/logoutput' via omprog.  If rsyslogd is started
by init script, or by me (as root) on the command line, I get the following
errors.

apr 12 21:35:02.865327 RSYSLO  action 'action-1-omprog' resumed (module
'omprog') [v8.2002.0 try https://www.rsyslog.com/e/2359 ]
apr 12 21:35:02.865350 RSYSLO  omprog: error sending message to program: Bad
file descriptor [v8.2002.0 try https://www.rsyslog.com/e/2119 ]
apr 12 21:35:02.865365 RSYSLO  action 'action-1-omprog' suspended (module
'omprog'), retry 0. There should be messages before this one giving the
reason f
or suspension. [v8.2002.0 try https://www.rsyslog.com/e/2007 ]
apr 12 21:35:03.866356 RSYSLO  action 'action-1-omprog' suspended (module
'omprog'), next retry is Sun Apr 12 21:35:33 2020, retry nbr 0. There should
be
messages before this one giving the reason for suspension. [v8.2002.0 try
https://www.rsyslog.com/e/2007 ]


and I never see 'logoutput' in the process listing.  However, if I start
rsyslogd with '-n' (foreground), my program is started and messages are
delivered as expected.  Even if I start it with -n and send it to the
background it is fine (rsyslogd -n &)  I don't have selinux or anything
enabled.

I have tried adding 'output' to the action configuration, thinking I would
get messages, but haven't gotten anything.

action(type="omprog"
        binary="/usr/bin/logoutput"
        forceSingleInstance="on"
        output="/tmp/omprog.out"
        template="output")

here are the lsof listings rsyslogd being started by init script

root@zcu102-zynqmp:/tmp/bin# lsof -p 6204
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAME
rsyslogd 6204 root  cwd    DIR              179,2     4096          2 /
rsyslogd 6204 root  rtd    DIR              179,2     4096          2 /
rsyslogd 6204 root  txt    REG              179,2   678072      19325
/usr/sbin/rsyslogd
rsyslogd 6204 root  mem    REG              179,2    27208      19316
/usr/lib/rsyslog/omprog.so
rsyslogd 6204 root  mem    REG              179,2    14528      19312
/usr/lib/rsyslog/mmjsonparse.so
rsyslogd 6204 root  mem    REG              179,2    19680      19292
/usr/lib/rsyslog/imklog.so
rsyslogd 6204 root  mem    REG              179,2    32912      19298
/usr/lib/rsyslog/imuxsock.so
rsyslogd 6204 root  mem    REG              179,2    46984        907 /lib/
libnss_files-2.30.so
rsyslogd 6204 root  mem    REG              179,2    23416      19300
/usr/lib/rsyslog/lmnet.so
rsyslogd 6204 root  mem    REG              179,2  1400792        874 /lib/
libc-2.30.so
rsyslogd 6204 root  mem    REG              179,2    27000        935
/lib/libuuid.so.1.3.0
rsyslogd 6204 root  mem    REG              179,2    43496      10991
/usr/lib/libfastjson.so.4.2.0
rsyslogd 6204 root  mem    REG              179,2    14168      10983
/usr/lib/libestr.so.0.0.0
rsyslogd 6204 root  mem    REG              179,2    14208        884 /lib/
libdl-2.30.so
rsyslogd 6204 root  mem    REG              179,2   113104        915 /lib/
libpthread-2.30.so
rsyslogd 6204 root  mem    REG              179,2    88304        939
/lib/libz.so.1.2.11
rsyslogd 6204 root  mem    REG              179,2   136752        862 /lib/
ld-2.30.so
rsyslogd 6204 root    0r   CHR                1,9      0t0       1032
/dev/urandom
rsyslogd 6204 root    1u  unix 0xffffffc05fdda000      0t0      40009
type=DGRAM
rsyslogd 6204 root    2w   REG              179,4    10350     131078
/data/log/syslog.log
rsyslogd 6204 root    3u  unix 0xffffffc05fdda480      0t0      40006
/dev/log type=DGRAM
rsyslogd 6204 root    4r   REG                0,4        0 4026531950
/proc/kmsg

and when started in the foreground (rsyslogd -n &)

root@zcu102-zynqmp:/tmp/bin# lsof -p 6239
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAME
rsyslogd 6239 root  cwd    DIR              179,2     4096          2 /
rsyslogd 6239 root  rtd    DIR              179,2     4096          2 /
rsyslogd 6239 root  txt    REG              179,2   678072      19325
/usr/sbin/rsyslogd
rsyslogd 6239 root  mem    REG              179,2    27208      19316
/usr/lib/rsyslog/omprog.so
rsyslogd 6239 root  mem    REG              179,2    14528      19312
/usr/lib/rsyslog/mmjsonparse.so
rsyslogd 6239 root  mem    REG              179,2    19680      19292
/usr/lib/rsyslog/imklog.so
rsyslogd 6239 root  mem    REG              179,2    32912      19298
/usr/lib/rsyslog/imuxsock.so
rsyslogd 6239 root  mem    REG              179,2    46984        907 /lib/
libnss_files-2.30.so
rsyslogd 6239 root  mem    REG              179,2    23416      19300
/usr/lib/rsyslog/lmnet.so
rsyslogd 6239 root  mem    REG              179,2  1400792        874 /lib/
libc-2.30.so
rsyslogd 6239 root  mem    REG              179,2    27000        935
/lib/libuuid.so.1.3.0
rsyslogd 6239 root  mem    REG              179,2    43496      10991
/usr/lib/libfastjson.so.4.2.0
rsyslogd 6239 root  mem    REG              179,2    14168      10983
/usr/lib/libestr.so.0.0.0
rsyslogd 6239 root  mem    REG              179,2    14208        884 /lib/
libdl-2.30.so
rsyslogd 6239 root  mem    REG              179,2   113104        915 /lib/
libpthread-2.30.so
rsyslogd 6239 root  mem    REG              179,2    88304        939
/lib/libz.so.1.2.11
rsyslogd 6239 root  mem    REG              179,2   136752        862 /lib/
ld-2.30.so
rsyslogd 6239 root    0u   CHR              253,0      0t0       1522
/dev/ttyPS0
rsyslogd 6239 root    1u   CHR              253,0      0t0       1522
/dev/ttyPS0
rsyslogd 6239 root    2u   CHR              253,0      0t0       1522
/dev/ttyPS0
rsyslogd 6239 root    3r   CHR                1,9      0t0       1032
/dev/urandom
rsyslogd 6239 root    4r  FIFO                0,9      0t0      39109 pipe
rsyslogd 6239 root    5w  FIFO                0,9      0t0      39109 pipe
rsyslogd 6239 root    6u  unix 0xffffffc05c6524c0      0t0      39111
/dev/log type=DGRAM
rsyslogd 6239 root    7w  FIFO                0,9      0t0      39110 pipe
rsyslogd 6239 root    8r   REG                0,4        0 4026531950
/proc/kmsg
rsyslogd 6239 root    9u  unix 0xffffffc05c652040      0t0      39114
type=DGRAM
rsyslogd 6239 root   10w   REG              179,4    10484     131078
/data/log/syslog.log

and here are pstree listings for each case.  first when started by init
script

root@zcu102-zynqmp:/tmp/bin# pstree -ps 6318
init(1)---rsyslogd(6318)-+-{rsyslogd}(6319)
                                         |-{rsyslogd}(6320)
                                         `-{rsyslogd}(6322)

and when started with rsyslogd -n &
root@zcu102-zynqmp:/tmp/bin# pstree -ps 6351
init(1)---start_getty(3688)---login(3715)---sh(3752)---rsyslogd(6351)-+-logoutput(6353)---{logoutput}(6357)

                                 |-{rsyslogd}(6352)

                                 |-{rsyslogd}(6354)

                                 |-{rsyslogd}(6355)

                                 `-{rsyslogd}(6356)

you can see that when I start it with the '-n' flag, my program gets started
and rsyslogd has a pipe to it.  Can someone help me understand why this is
only working for me when I use the '-n' flag.  In both cases, it is started
as root, so it doesn't seem like a permissions issue.

Thanks
_______________________________________________
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