Problem with runninga mono application as a service

Issues related to applications and software problems
Post Reply
kevin00xxl
Posts: 1
Joined: 2017/05/11 22:34:08

Problem with runninga mono application as a service

Post by kevin00xxl » 2017/05/11 22:46:03

Hi Guys,

i am trying to run a mono application as a service.
the host is a VPS by OVH.net running CentOS 7 x64.
i have installed mono-complete and created a new user which will be used to run the service.

i created a new service called: "fivem.service" in the /usr/lib/systemd/system directory with the following contents:

[Unit]
Description=FiveM Server
After=network.target
[Service]
User=fivem
Group=fivem
Type=forking
ExecStart=/home/fivem/run.sh start
ExecStop=/home/fivem/run.sh stop
PIDFile=/tmp/fivem.lock
[Install]
WantedBy=multi-user.target


as you can see, it refers to /home/fivem/run.sh start to run the script that will run mono.
that script looks like this:

#!/bin/bash

PROGRAM_NAME="fivem"
LOCK_FILE="/tmp/"${PROGRAM_NAME}".lock"

usage()
{
echo "$0 (start|stop)"
}

stop()
{
if [ -e ${LOCK_FILE} ]
then
_pid=$(cat ${LOCK_FILE})
kill $_pid
rt=$?
if [ "$rt" == "0" ]
then
echo "Demon stop"
else
echo "Error stop demon"
fi
else
echo "Demon is not running"
fi
}

start()
{
mono-service -l:${LOCK_FILE} /home/fivem/CitizenMP.Server.exe
}

case $1 in
"start")
start
;;
"stop")
stop
;;
*)
usage
;;
esac
exit



Now the problem is: when i run that script as user fivem in a ssh console like this: sh /home/fivem/run.sh start the CitizenMP.Server.exe server starts and everything works perfectly! But when i start it with the fivem.service like: service fivem start i can see a mono process consuming 100% CPU and will eventually kill itself after 10 seconds or so.

i really hope you guys can help me out, i have been busy with this for the last couple of days and i cant find a way to fix this problem

aks
Posts: 3073
Joined: 2014/09/20 11:22:14

Re: Problem with runninga mono application as a service

Post by aks » 2017/05/12 22:20:35

i can see a mono process consuming 100% CPU
Interesting, how do you know that it's obsessing on CPU. Memory is so much slower than CPU, it probably isn't (being a bit pedantic, ignore me).
eventually kill itself after 10 seconds or so.
Very good netizen, knows something is wrong and does the only choice left to it!

Why the shell script? Very SYSV not systemd like at all. Systemd has many differenet ways of launching programs depending on the behaviour of the program (and they are detailed on Lennart Poettering's blog - http://0pointer.net/blog/). Go native, it'll make your life easier....

RPPerry3
Posts: 1
Joined: 2017/05/23 15:31:54

Re: Problem with runninga mono application as a service

Post by RPPerry3 » 2017/05/23 15:44:52

I installed Mono 5.0.0 by mistake (latest release) and I'm not sure how to completely removed all associated files so I can install Mono 4.8.1. Anyone have a suggestion on that?

Thanks,
Perry

aks
Posts: 3073
Joined: 2014/09/20 11:22:14

Re: Problem with runninga mono application as a service

Post by aks » 2017/05/24 16:53:42

Seems you've "hijacked" a post. You'd be better off posting in your own thread.
How did you install mono (i.e.: RPM/tarball/compilation)?

Post Reply