The file zebra.log is actually not used, because daemon's --output
parameter sends all message to zebra-output (making that stdout
goes there too and --stdout does nothing). We do not need any
differentiation (if any at all) here; behavior does not change.
Note: zebra-error will only contain the daemon's error messages and not
the zebra error messages! So you will probably only find messages about
stopping zebra in zebra-error.
The loglevels are by default none,fatal,warn and can be changed via the
zebra_loglevels config variable (read by koha-functions.sh). If you remove
'none', you will have request-messages in the log. You can also keep 'none'
and add 'request' to achieve something similar (undocumented however).
Some of the parameters passed to daemon when stopping zebra are
superfluous and have been removed.
Test plan:
[1] Remove the file zebra.log. Look at last lines in zebra-error and
zebra-output.
[2] Remove zebra_loglevels from koha-conf (if present).
Start/restart Zebra. Search to verify if Zebra runs.
Stop Zebra and check zebra-error for a new line (killed by signal 15).
[3] Add fatal,warn in koha-conf:zebra_loglevels (do not include 'none').
Start Zebra. Check zebra-output for a line "[log] zebra_start".
Do a search and check zebra-output for lines with "[request]".
[4] Verify that zebra.log did not appear again.
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
daemon uses by default /tmp/ for pid files, if they are unspecified.
Pass the right directory to daemon, so it knows where to put the pid file.
Signed-off-by: Attila Kinali <attila@kinali.ch>
TEST PLAN
---------
1) Roll a distribution and confirm it works.
OR
1) Hack all the /var directories to point to git directories
2) Add a dummy user for the instance name
3) sudo the script with the faked instance name.
-- the daemon should be running and the pid file should be in
the expected directory.
The first way is the proper way to test, I did the latter. :)
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
As asked by Robin, a bash lib of functions is introduced with the common
functions to be reused. Most of the scripts are modified (reduced) to
include this file and the repeated functions cleaned.
No noticeable change in behaviour should be noticed.
As I've been todl in #debian-mentors, it is used that files for inclusion
should be installed at the apps directory (i.e. /usr/share/koha/) so this
patch makes the install script put the file in the bin/ directory.
All koha-* scripts assume the file is there already (and fail otherwise).
Sponsored-by: Universidad Nacional de Cordoba
Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Apache 2.4 expects the sites definition files use the sufix '.conf'
To reproduce:
- Install the 'koha-common' package on Debian 7 or Ubuntu 13.10+
(both known to include Apache 2.4).
- Create an instance (for example testlibrary) using the supplied
commands:
$ koha-create --create-db testlibrary
> FAIL: apache reports an error like this:
"ERROR: Site testlibrary does not exist!"
This patch adds a test on the Apache version and appends the ".conf"
sufix if needed.
To test:
1st step: koha-create gets fixed:
-- The hard way --
- Apply the patch, and build the koha-common package on top of this
commit.
- Install the built package on an Apache 2.4 Debian-based distro (Debian 7
or Ubuntu 13.10 will work)
- Create a test instance:
$ koha-create --create-db testlibrary
> SUCCESS: no more apache sites related error.
-- The easy way --
- Apply the patch, and copy the koha-create into an Apache 2.4
Debian-based distro
- Create a test instance using the koha-create script you just
copied:
$ ./koha-create --create-db testlibrary
> SUCCESS: no more apache sites related error.
2nd step: the rest of the touched scripts keep working as usual
koha-disable
koha-dump
koha-enable
koha-list
koha-remove
koha-restart-zebra
koha-stop-zebra
koha-start-zebra
They should all keep working. Can be tested "the easy way" too.
Note: there might be another issues regarding Apache 2.4 deployments
like the need for
$ a2enmod access_compat
and perhaps some directory permissions tweak, which I think should be
properly documented on the install instructions.
Sponsored-by: Universidad Nacional de Cordoba
Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
If koha-common is started when Zebra log files are owned by root
it will fail to start without any useful message (since Zebra can't
write errors in log files because it lacks permissions to do so).
This patch creates empty log files and ensure they have correct
permissions.
I can't pin-point why log files gets owned root, but I suspect it
has something to do with Zebra crashing and logrotate, but this is
just theory. We have seen this behaviour since koha 3.1 every
few months, and every time it happends we have root owned logs and
crashed Zebra so this patch will at least help sites which have
some kind of automatic koha-common start if it's not running.
Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Commented out the code that checks for intance name parameters on the zebra service handling scripts.
It restores the original behaviour, while leaving error checking code.
Regards
To+
Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
koha-start-zebra now
- Checks the instance exists.
- Checks the instance is enabled.
- Checks if the zebra daemon is already running.
Regards
To+
Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>