====== Qc2-OPE-RUN ======1) NB Change in paths /var/kvalobs -> /var/lib/kvalobs and /var/kvalobs/log -> /var/log/kvalobs now included below, see https://svn.met.no/viewvc/kvoss/kvalobs/trunk/src/kvQabased/InitLogger.cc?view=log

Ok! Kvalobs Qc1 and Qc2 is built in the test environment. Qc2 is now integrated with the Qc1 environment by editing kv_ctl.conf

STEP 1: Update kv_ctl.conf

on dev-vm116 the relevant file is located: /metno/kvalobs/etc/kvalobs/kv_ctl.conf and shall be edited to include kvQc2:

#START_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvAgregated"
START_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvQc2"
#STOP_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvAgregated"
STOP_PROGS="kvServiced kvDataInputd kvQabased kvManagerd kvQc2"
TIMEOUT=70
KVUSER=kvalobs

Note the local kvalobs.conf (/metno/kvalobs/etc/kvalobs/kvalobs.conf) contains:

corba{
#Where is CORBA nameserver
#nameserver="corbans.oslo.dnmi.no"
nameserver="corbans.met.no"
#Which path in CORBA nameserver shall we use for
#this instance of kvalobs
path="kv_dev-vm116"
}

Illustrating a dedicated registration in the CORBA nameserver for the virtual machine kvalobs instance.

STEP 2: Remember that we are currently working with a local installation. The html log files for kvQabased are written to: /metno/kvalobs/var/log/kvalobs/html

The script called by the default cron job does not know this and needs to be modified by editing /usr/lib/kvalobs/bin/qabase_cron.sh and making it point to the correct log/html directory.

#! /bin/sh
QABASELOGDIR=/metno/kvalobs/var/log/kvalobs/html
##QABASELOGDIR=$(kvconfig --localstatedir)/kvalobs/log/html
#find $QABASELOGDIR -name '*.html' -type f -mtime +0 -exec rm -f {} \;
find $QABASELOGDIR -xdev -name '*.html' -type f -mmin +360 -exec rm -f {} \;
#find $QABASELOGDIR -name '*.html' -type f -exec rm -f {} \;
find $QABASELOGDIR -xdev -type d -cmin +120 -exec rmdir --ignore-fail-on-non-empty {} \;
# create nice map of existing log-files (output: html)
####find $QABASELOGDIR -name '*.html' -type f | /metno/kvalobs/bin/log_map > $QABASELOGDIR/log_map.html

Then run the corresponding standard cron jobs as described:

https://dokit.met.no/sysdok/kvalobs/installasjon#cron-jobber

Clean-up of the html log files is necessary to manage disk space.

STEP 3 Now run kvalobs as user kvalobs with kvQc2:

kvQc2 requires one additional environment variable to be set:

<code> $ export KVALOBS=/metno/kvalobs </code>

NOTE: The $KVALOBS historic configuration variable is no longer needed.

$ cd $HOME
$ bin/kvstart

The following result is expected:

KVBIN=/metno/kvalobs/bin
KVPID=/metno/kvalobs/var/kvalobs/run
TIMEOUT=70
Starter kvalobs dette kan ta noe tid!
Hvis det ikke skjer noe på MER enn 70 sekund
bruk CTRL-C for å avbryte!
Starter kvQabased ....Ok!
Starter kvManagerd ....Ok!
Starter kvDataInputd ....Ok!
Starter kvServiced ....Ok!
Starter kvQc2 ....Ok!

STEP 4 ... and to stop:

$ cd
$ bin/kvstop

The following result is expected:

listopt: 0
killallopt: 0
KVPID=/metno/kvalobs/var/kvalobs/run
TIMEOUT=70
node: dev-vm116
Stopper kvalobs dette kan ta noe tid!
Hvis det ikke skjer noe på MER enn 70 sekund
bruk CTRL-C for å avbryte!
kvServiced .....Stopped!
kvDataInputd .....Stopped!
kvQabased .....Stopped!
kvManagerd .....Stopped!
kvQc2 .....Stopped!

NB The timeout has been set to 70s since kvQc2 checks for new configuration files every minute and the rest of the time either sleeps or processes a given set of instructions.