BreadCrumbs: QueueMetrics

QueueMetrics

From Luke Jackson

(Difference between revisions)
Jump to: navigation, search
Revision as of 02:53, 19 July 2007 (edit)
Ljackson (Talk | contribs)
(Configure Statistics (Dameon))
← Previous diff
Revision as of 02:56, 19 July 2007 (edit)
Ljackson (Talk | contribs)
(Import and Start)
Next diff →
Line 143: Line 143:
chkconfig qloaderd on chkconfig qloaderd on
-== Import and Start ==+=== Start daemon and Import Statistics ===
[root@localhost qloader]# /etc/init.d/qloaderd start [root@localhost qloader]# /etc/init.d/qloaderd start

Revision as of 02:56, 19 July 2007

Contents

Install

wget -P /etc/yum.repos.d http://yum.loway.ch/loway.repo
yum install queuemetrics

If you are installing QM for the first time, run the following
commands to install the database:

cd /usr/local/queuemetrics/webapps/queuemetrics-1.3.4/WEB-INF/README
./installDb.sh

When you are done, point your browser to:
. http://thismachine:8080/queuemetrics
and login as user demoadmin / password demo.

If you are updating from a previous version, just point your
browser to:
. http://thismachine:8080/queuemetrics/dbtest
to check if your database link is working and update the
database to the latest version.

Configure MySQL Storage

Configure Statistics (Script)

perl /usr/local/queuemetrics/webapps/queuemetrics-1.3.4/WEB-INF/mysql-utils/queueLoader.pl /var/log/asterisk/queue_log P01 >>/dev/null 2>>/dev/null

Below is an part of the queueLoader.pl file:

! /usr/bin/perl

#
# Upload a given queue_log file to a partition of the queue_log table
# $Id: queueLoader.pl,v 1.10 2006/10/07 16:00:47 lenz Exp $
#
# usage:
# queueLoader.pl /my/queue_log/file partition_name /my/import/log
#
# to allow realtime upload of queue_log data, use:
#  queueLoader.pl /var/log/asterisk/queue_log P01 /var/log/qloader.log
#
#
# ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION
# If this file does not seem to work from the shell, do a
#        dos2unix queueLoader.pl
#        chmod +x queueLoader.pl
# to set things right.
# ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION
#

use strict;
use DBI;

my $mysql_host = "localhost";
my $mysql_db   = "queuemetrics";
my $mysql_user = "queuemetrics";
my $mysql_pass = "javadude";
my $logonfile  = "";

Configure Statistics (Dameon)

Below is the standard configuration file for qloader:

#! /usr/bin/perl

#
# Upload a given queue_log file to a partition of the queue_log table.
# $Id: qloader.pl,v 1.6 2007/04/01 16:49:02 lenz Exp $
#
# usage:
# queueLoader.pl /my/queue_log/file partition_name /my/activity/log
#
#
# ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION
# If this file does not seem to work from the shell, do a
#        dos2unix queueLoader.pl
# to set things right.
# ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION  ATTENTION
#

use strict;
use DBI;

my $mysql_host = "localhost";
my $mysql_db   = "queuemetrics";
my $mysql_user = "queuemetrics";
my $mysql_pass = "javadude";

my $dbh    = undef;
my $dberr  = 1;       # setto a 0 quando tutto va bene

my $file        = $ARGV[0] || "/var/log/asterisk/queue_log";
my $partition   = $ARGV[1] || "P01";
my $importLog   = $ARGV[2] || "/var/log/asterisk/qloader.log";

my $pidfile   = "/var/run/qloader.pid";

my $log_every_num = 100;

my $timezone_offset  = 0 * 3600;  # in seconds
my $heartbeat_delay  = 15 * 60;   # in seconds
my $use_subqueue     = 1;         # 0 no; 1 yes
my $split_subq_name  = 1;         # turn a subqueue name from 'xxx/yyy" to "xxx"
my $rewriteToAgent   = 1;         # 0 no; 1 yes
my @channelsToAgent  = ( 'Local', 'SIP' );

Create a softlink for the init.d script:

cd /usr/local/
ln -s queuemetrics/webapps/queuemetrics-1.3.4/WEB-INF/mysql-utils/qloader/ qloader

Copy over the init.d script:

cp /usr/local/qloader/RedHat-style-initscripts/qloaderd /etc/init.d/

Convert and Set Executable:

dos2unix /usr/local/qloader/qloader.pl
chmod +x /usr/local/qloader/qloader.pl
dos2unix /etc/init.d/qloaderd
chmod +x /etc/init.d/qloaderd 

Patch the logroate file for qloader

vi /etc/logrotate.d/asterisk
    postrotate
        /usr/sbin/asterisk -rx 'logger reload' >/dev/null 2>/dev/null || true
        /etc/init.d/qloaderd restart > /dev/null 2> /dev/null || true
    endscript

Enable qloaderd on boot:

chkconfig qloaderd on

Start daemon and Import Statistics

[root@localhost qloader]# /etc/init.d/qloaderd start
Starting qloader:

FAQ

Errore JDBC:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

RPM or Yum

If you installed via yum it is most likely that the symlink to the mysql java connect is broken and will need to be changed. You can find this link in the directory:

/usr/local/queuemetrics/webapps/queuemetrics-1.3.4/WEB-INF/lib

Broken Link

connector.jar -> /usr/share/java/mysql-connector-java-3.1.12-bin.jar

Issue the commands below to fix the symlink and then restart queuemetrics

cd /usr/local/queuemetrics/webapps/queuemetrics-1.3.4/WEB-INF/lib
unlink connector.jar
ln -s /usr/share/java/mysql-connector-java.jar connector.jar
/etc/init.d/queuemetrics restart

Custom Install

If you have not installed via rpm your situation my differ from what is listed above. If so simply download the MySQL Java Connector from the MySQL site.

Extract the MySQL Java Connector you have downloaded and locate a file named mysql-connector-java-X.X.X.jar. Move the file into /usr/share/java and follow the steps above to create a symlink to it. Once completed restart QueueMetrics.

Sources

Personal tools