Package Details: activemq 5.15.8-4

Git Clone URL: https://aur.archlinux.org/activemq.git (read-only)
Package Base: activemq
Description: Popular and powerful open source messaging and Integration Patterns provider
Upstream URL: http://activemq.apache.org
Licenses: Apache 2.0
Submitter: 4le34n
Maintainer: 4le34n
Last Packager: 4le34n
Votes: 4
Popularity: 0.297781
First Submitted: 2017-07-17 03:13
Last Updated: 2019-03-01 03:38

Latest Comments

lunaryorn commented on 2019-02-28 16:03

Could you perhaps also add the files in /opt/activemq/conf to the backup field of the PKGBUILD, to avoid changes in activemq.xml being overwritten on update?

lunaryorn commented on 2019-02-28 09:05

Thanks for the update.

I think the current service file isn't right, tho: The type's still forking, but java -jar activemq.jar doesn't fork, nor does it write a PID file. As far as I understand both of these things come from the service wrapper used by the shell script (which exists to add all those service things like PID files and forking to Java apps). If you don't use this wrapper I think you have to use simple as type, and then systemd handles the forking and stuff itself. The PIDFile option isn't used in this case. The service file would look like this then:

[Unit]
Description=Messaging and Integration Patterns provider
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/java -jar /opt/activemq/bin/activemq.jar start

[Install]
WantedBy=multi-user.target

To use the forking type you need to use the activemq shell script which forks; in this case PIDFile must point to the actual PID file written by activemq (somewhere under /opt/activemq…/data I think).

lunaryorn commented on 2019-02-27 13:04

Please remove >/dev/null 2>&1 from ExecStart in service. ExecStart is no shell command, so the redirection has no effect (check systemctl status); the service starts only by coincidence, because activemq seems to ignore excess arguments.

The systemd.service manpage also recommends to set PIDFile for forking daemons, but why not switch to simple and use console instead of start, and thus let systemd handle all the forking? You could then even use just java -jar /opt/activemq/bin/activemq.jar start as ExecStart, which would have the added benefit of making activemq's output appear in systemctl status activemq and journalctl.

4le34n commented on 2018-07-24 05:36

1. Ssruno wrote: "Doing a: ps aux | grep activemq ..."

   Can not reproduce:

sh-4.4# ps aux | grep activemq root 14362 0.0 0.0 18416 1832 ? Sl 16:12 0:00 /opt/activemq/bin/linux-x86-64/wrapper /opt/activemq/bin/linux-x86-64/wrapper.conf wrapper.syslog.ident=ActiveMQ wrapper.pidfile=/opt/activemq/bin/linux-x86-64/./ActiveMQ.pid wrapper.daemonize=TRUE wrapper.lockfile=/var/lock/subsys/ActiveMQ root 14366 4.4 3.9 4584456 299460 ? Sl 16:12 0:16 java -Dactivemq.home=../.. -Dactivemq.base=../.. -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.keyStore=../../conf/broker.ks -Djavax.net.ssl.trustStore=../../conf/broker.ts -Dcom.sun.management.jmxremote -Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=logging.properties -Dactivemq.conf=../../conf -Dactivemq.data=../../data -Djava.security.auth.login.config=../../conf/login.config -Xmx1024m -Djava.library.path=../../bin/linux-x86-64/ -classpath ../../bin/wrapper.jar:../../bin/activemq.jar -Dwrapper.key=lnFjVqvm1yxySrc_ -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=14362 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp org.apache.activemq.console.Main start

Try running with the default settings. Must earn properly. Then make further adjustments. Perhaps you need to reboot after installation. Or run the command: source /etc/profile.d/activemq.sh. And then run the service activemq.

2. Ssruno wrote: "PS: The <http://localhost:8161/demo/> doesn't work either"

Replace symbol link /usr/share/webapps/activemq with /usr/share/webapps/activemq-demo. And then the demo will work.

Ssruno commented on 2018-07-23 19:12

Doing a: ps aux | grep activemq

We can see that those paths are being formed with a double slash.

root 22069 2.9 1.9 4588012 306416 pts/1 Sl+ 14:54 0:14 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/activemq//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/opt/activemq//tmp -Dactivemq.classpath=/opt/activemq//conf:/opt/activemq//../lib/: -Dactivemq.home=/opt/activemq/ -Dactivemq.base=/opt/activemq/ -Dactivemq.conf=/opt/activemq//conf -Dactivemq.data=/opt/activemq//data -jar /opt/activemq//bin/activemq.jar start

Ssruno commented on 2018-07-23 18:59

Hi 4le34n, thanks for maintaining this package.

Just after finishing the installation I try to get the service up:

/opt/activemq/bin/activemq console

Accessing http://localhost:8161/admin/ doesn't work, in order to navigate it, I have to:

sudo ln -s /usr/share/webapps/activemq /opt/activemq/webapps

Maybe this tweak can be added for the next release.

PS: The http://localhost:8161/demo/ doesn't work either

sprooose commented on 2017-12-12 15:16

Is the web management console included in this package? I can't see that it has started in the startup trace.

4le34n commented on 2017-10-09 03:23

Everything works. Or I do not understand your question.

sh-4.4$ systemctl status activemq
● activemq.service - Messaging and Integration Patterns provider
Loaded: loaded (/usr/lib/systemd/system/activemq.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2017-10-09 14:18:32 +11; 2min 12s ago
Process: 18857 ExecStart=/opt/activemq/bin/linux-x86-64/activemq start >/dev/null 2>&1 (code=exited, status=0/SUCCESS)
Main PID: 18891
Tasks: 52 (limit: 4915)
CGroup: /system.slice/activemq.service
├─18891 /opt/activemq/bin/linux-x86-64/wrapper /opt/activemq/bin/linux-x86-64/wrapper.conf wrapper.syslog.ident=ActiveMQ wrapper.pidfile=/opt/activemq/bin/linux-x86-64/./ActiveMQ.pid wrapper.daemonize=TRUE wrapper.lockfile=/var/lock/subsys/ActiveMQ
└─18893 java -Dactivemq.home=../.. -Dactivemq.base=../.. -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.keyStore=../../conf/broker.ks -Djavax.net.ssl.trustStore=../../conf/broker.ts -Dcom.sun.management.jmxremote -Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=logging.properties -Dactivemq.conf=../../conf -Dactivemq.data=../../data -Djava.security.auth.login.config=../../conf/login.config -Xmx1024m -Djava.library.path=../../bin/linux-x86-64/ -classpath ../../bin/wrapper.jar:../../bin/activemq.jar -Dwrapper.key=kyeeHw0sE8GsFIgG -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=18891 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp org.apache.activemq.console.Main start

окт 09 14:18:31 LocalHost systemd[1]: Starting Messaging and Integration Patterns provider...
окт 09 14:18:31 LocalHost activemq[18857]: Starting ActiveMQ Broker...
окт 09 14:18:32 LocalHost systemd[1]: Started Messaging and Integration Patterns provider.
sh-4.4$ sudo ps aux | grep activemq
root 18891 0.0 0.0 18100 1952 ? Sl 14:18 0:00 /opt/activemq/bin/linux-x86-64/wrapper /opt/activemq/bin/linux-x86-64/wrapper.conf wrapper.syslog.ident=ActiveMQ wrapper.pidfile=/opt/activemq/bin/linux-x86-64/./ActiveMQ.pid wrapper.daemonize=TRUE wrapper.lockfile=/var/lock/subsys/ActiveMQ
root 18893 11.4 2.6 4584064 201704 ? Sl 14:18 0:16 java -Dactivemq.home=../.. -Dactivemq.base=../.. -Djavax.net.ssl.keyStorePassword=password -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.keyStore=../../conf/broker.ks -Djavax.net.ssl.trustStore=../../conf/broker.ts -Dcom.sun.management.jmxremote -Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=logging.properties -Dactivemq.conf=../../conf -Dactivemq.data=../../data -Djava.security.auth.login.config=../../conf/login.config -Xmx1024m -Djava.library.path=../../bin/linux-x86-64/ -classpath ../../bin/wrapper.jar:../../bin/activemq.jar -Dwrapper.key=kyeeHw0sE8GsFIgG -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=18891 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp org.apache.activemq.console.Main start

killermoehre commented on 2017-10-06 08:11

Your service is bogus. The redirect can't work, because ExecStart= is no shell. Just drop everything after the »start«