<div dir="ltr">Thanks Mantas for replying. <div><br></div><div><span style="font-family:"courier new",monospace">ExecStartPre=-/bin/su ubuntu -c "/home/ubuntu/build-target/</span><span style="font-family:"courier new",monospace">kafka/kafka-systemd-prestart.</span><span style="font-family:"courier new",monospace">sh"</span><br style="font-family:"courier new",monospace"><span style="font-family:"courier new",monospace">ExecStart=/bin/su ubuntu -c "/home/ubuntu/build-target/</span><span style="font-family:"courier new",monospace">kafka/kafka-systemd-health.sh"</span><br style="font-family:"courier new",monospace"><span style="font-family:"courier new",monospace">ExecStopPost=-/bin/bash /home/ubuntu/build-target/</span><span style="font-family:"courier new",monospace">kafka/kafka-systemd-poststop.</span><span style="font-family:"courier new",monospace">sh</span><br></div><div><span style="font-family:"courier new",monospace"><br></span></div><div>If I specify <font face="courier new, monospace">User=</font> then all the scripts will be executed with that user. Can you let me know if I only need to execute <span style="font-family:"courier new",monospace">kafka-systemd-prestart.</span><span style="font-family:"courier new",monospace">sh </span><font face="arial, sans-serif">and</font><span style="font-family:"courier new",monospace"> </span><span style="font-family:"courier new",monospace">kafka-systemd-health.sh </span><font face="arial, sans-serif">with let's say</font><span style="font-family:"courier new",monospace"> ubuntu </span><font face="arial, sans-serif">user and</font><span style="font-family:"courier new",monospace"> </span><span style="font-family:"courier new",monospace">kafka-systemd-poststop.</span><span style="font-family:"courier new",monospace">sh </span><font face="arial, sans-serif">with</font><span style="font-family:"courier new",monospace"> root </span><font face="arial, sans-serif">user what is the recommended way to do this?</font></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jul 25, 2019 at 4:50 PM Mantas Mikulėnas <<a href="mailto:grawity@gmail.com">grawity@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Thu, Jul 25, 2019 at 1:26 PM Debraj Manna <<a href="mailto:subharaj.manna@gmail.com" target="_blank">subharaj.manna@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><font face="arial, sans-serif">I have unit file which looks like below. I am seeing some of the echo are showing up in syslog but not in journalctl. Can someone let me know what is going on? </font></div><div><font face="arial, sans-serif">systemd version 229 running on Ubuntu 16.</font></div><div><font face="arial, sans-serif"><br></font></div><font face="courier new, monospace">[Unit]<br>Description=Kafka Service<br><br>[Service]<br>Type=simple<br>Environment=KAFKA_HOME=/home/ubuntu/deploy/kafka<br>Environment=LIB_DIR=/var/lib/kafka<br>Environment=LOG_DIR=/var/log/kafka<br>Environment=TEMP_DIR=/home/ubuntu/tmp<br>Environment=TOOLS_JAR=/home/ubuntu/build-target/common-utils/tools-0.001-SNAPSHOT.jar<br>Environment=MIN_DATA_PARTITION_FREE_SPACE_PCT=10<br>Environment=MIN_DATA_PARTITION_FREE_SPACE_GB=10<br>Environment=DATA_PARTITION_NAME=/var<br><br>ExecStartPre=-/bin/mkdir -p /var/log/kafka<br>ExecStartPre=-/bin/chown -R ubuntu:ubuntu /var/log/kafka<br>ExecStartPre=-/bin/mkdir -p /var/lib/kafka/kafka-logs<br>ExecStartPre=-/bin/chown -R ubuntu:ubuntu /var/lib/kafka/kafka-logs<br>ExecStartPre=-/bin/rm -f /var/log/kafka/kafka-logs/.lock<br>ExecStartPre=-/bin/mkdir -p /home/ubuntu/tmp<br>ExecStartPre=-/bin/chown -R ubuntu:ubuntu /home/ubuntu/tmp<br>ExecStartPre=-/bin/chmod -R 775 /home/ubuntu/tmp<br>ExecStartPre=-/bin/su ubuntu -c "/home/ubuntu/build-target/kafka/kafka-systemd-prestart.sh"<br>ExecStart=/bin/su ubuntu -c "/home/ubuntu/build-target/kafka/kafka-systemd-health.sh"</font><div><pre style="color:rgb(0,0,0);font-family:Menlo;font-size:9pt"></pre></div></div></blockquote><div>[...] </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><pre style="color:rgb(0,0,0);font-size:9pt"><font face="arial, sans-serif">Doing </font><font face="courier new, monospace">sudo journalctl -u kafka.service</font><font face="arial, sans-serif"> looks like below</font></pre><pre style="color:rgb(0,0,0);font-size:9pt"><font face="courier new, monospace">Jul 25 07:41:39 platform2 systemd[1]: Started Kafka Service.<br>Jul 25 07:41:39 platform2 su[39160]: Successful su for ubuntu by root<br>Jul 25 07:41:39 platform2 su[39160]: + ??? root:ubuntu<br>Jul 25 07:41:39 platform2 su[39160]: pam_unix(su:session): session opened for user ubuntu by (uid=0)<br>Jul 25 07:41:40 platform2 bash[39192]: [Jul 25 2019 07:41:40-572] Exiting kafka...<br></font></pre><pre style="color:rgb(0,0,0);font-size:9pt"><span style="font-family:Menlo;font-size:9pt">I am not seeing some of the echo from kafka-systemd-prestart.sh in journatl but I am seeing those logs in syslog</span><br></pre><pre style="color:rgb(0,0,0);font-size:9pt"><font face="courier new, monospace">Jul 25 10:17:03 platform2 su[38464]: WatchedEvent state:SyncConnected type:None path:null<br>Jul 25 10:17:03 platform2 su[38464]: Node does not exist: /brokers/ids/2<br>Jul 25 10:17:03 platform2 su[38464]: [Jul 25 2019 10:17:03-343] partition /var free% 9 required% 10 freegb 134 required 10<br>Jul 25 10:17:03 platform2 su[38464]: [Jul 25 2019 10:17:03-344] Sufficient disk space is not available, sleeping for 60 seconds before exiting...</font></pre></div></div></blockquote><div><br></div><div>Take a look at `journalctl -o verbose SYSLOG_IDENTIFIER=su _PID=38464`.</div><div><br></div><div>I suspect the messages *are* in the journal, just not tagged with UNIT=kafka.service anymore. In some distros, `su` is actually configured to call pam_systemd and set up a new systemd-logind session – when this happens, the process is moved out of kafka.service into a user session scope, and its syslog messages are grouped accordingly.</div><div><br></div><div>Consider replacing `su` with `runuser`, or indeed with systemd's [Service] User= option.</div></div><div><br></div>-- <br><div dir="ltr" class="gmail-m_8820062590743338679gmail_signature"><div dir="ltr">Mantas Mikulėnas</div></div></div>
</blockquote></div>