{"id":137,"date":"2011-07-30T19:31:17","date_gmt":"2011-07-30T22:31:17","guid":{"rendered":"http:\/\/blog.abratel.com.br\/2011\/07\/30\/instalando-qloganalyzer-no-asterisk-p-gerar-relatorios-de-filas-e-cdr\/"},"modified":"2011-07-30T19:52:26","modified_gmt":"2011-07-30T22:52:26","slug":"instalando-qloganalyzer-no-asterisk-p-gerar-relatorios-de-filas-e-cdr","status":"publish","type":"post","link":"https:\/\/blog.abratel.com.br\/?p=137","title":{"rendered":"Instalando qloganalyzer no ASTERISK p\/ gerar relat\u00f3rios de filas e cdr"},"content":{"rendered":"<p>O Queue LOG analyzer \u00e9 uma op\u00e7\u00e3o GPL para gera\u00e7\u00e3o de relat\u00f3rios e gr\u00e1ficos sobre as filas e CDR Call Detailed Record do Asterisk.<br \/>\nO autor \u00e9 o Earl C. Terwillinger.<\/p>\n<p>Existem alguns patchs para que o queue.log v\u00e1 para um banco de dados. Por\u00e9m fazer isso funcionar pode ser uma tormenta. A solu\u00e7\u00e3o passa por um script que leia o mesmo e insira os dados no banco. \u00c9 dessa forma que funciona no qloganalyzer.<\/p>\n<p>Depend\u00eancias<\/p>\n<p>Apache e php s\u00e3o necess\u00e1rios.<\/p>\n<p>apt-get install python-mysqldb<\/p>\n<p>Instalar pear graph:<br \/>\npear install Image_Canvas-0.3.3<br \/>\npear install Image_Graph-0.8.0<\/p>\n<p>Para gerar gr\u00e1ficos ser\u00e3o necess\u00e1rios os pacotes php-image-graph e php-gd . No Debian estes metapacotes se instalados via apt devem resolver o problema. Outras distros tamb\u00e9m devem possuir tais pacotes, por\u00e9m o nome pode variar um pouco.<\/p>\n<p>Os scripts do programa s\u00e3o feitos em Python. No Debian a instala\u00e7\u00e3o do meta-pacote python-mysqldb via apt deve resolver todos os problemas.<\/p>\n<p>Instalando<\/p>\n<p>0. V\u00e1 para o diret\u00f3rio raiz do servidor baixe o fonte de desconpacte.<\/p>\n<p>cd \/var\/www\/html<br \/>\nwget http:\/\/www.micpc.com\/qloganalyzer\/qanalyzer.tar.gz<br \/>\ntar -xzvf qanalyzer.tar.gz<\/p>\n<p>O qloganalyzer trabalha por default com um banco de dados (asterisk) e tr\u00eas tabelas: cdr, queuelog, users.<\/p>\n<p>asteriskcdrdv.cdr            Tabela padr\u00e3o do cdr do asterisk.<br \/>\nasteriskcdrdb.queuelog    Onde o script insere as informa\u00e7\u00f5es obtidas do queue.log.<br \/>\nasteriskcdrdb.users         Usu\u00e1rios do QueueLoganalyzer.<\/p>\n<p>A seguir criaremos o banco e cada tabela para o funcionamento do qloganalyzer e faremos a configura\u00e7\u00e3o do Asterisk. Caso seu asterisk j\u00e1 tenha esteja gravando o CDR no banco, pule o passo onde criamos a tabela cdr(1) e edite o arquivo .sql para criar a tabela qlog (passo 2) neste banco.<\/p>\n<p>1. Crie o banco se nao tiver ainda asteriskcdrdb e a tabela cdr<br \/>\ncd \/var\/www\/html\/qanalyzer\/install<br \/>\nmysql <cdr.sql  (edite antes para usar o asteriskcdrdb)\n\nCaso o mysql esteja usando senha use o comando:\nmysql -p < cdr.sql\n\nCrie o arquivo \/etc\/asterisk\/cdr_mysql.conf com o seguinte conte\u00fado:\n[global]\nhostname=127.0.0.1\ndbname=asteriskcdrdb\ntable=cdr\npassword=senhadomysql\nuser=root\nport=3306\nuserfielt=1\n\nO script cdrload.php pode ser usado para carregar qualquer dado existente no arquivo \/var\/log\/asterisk\/cdr-csv\/Master.csv na tabela cdr.\n\n2. Dentro do diret\u00f3rio .\/loader o arquivo queuelog.sql cont\u00e9m o c\u00f3digo SQL necess\u00e1rio para criar as tabelas queuelog e users.\ncd \/var\/www\/html\/qanalyzer\/install\/loader\nmysql <queuelog.sql (edite o script para usar o db asteriskcdrdb)\n\nNa tabela users temos os ids e senhas para cada login. O padr\u00e3o \u00e9 admin\/admin. Troque de acordo com suas necessiades.\n\nO script em Python loadq.py \u00e9 respons\u00e1vel pela carga de dados na tabela.\n\nO script em Shell loadq.sh roda o loadq.py como uma tarefa.\n\nCopie ambos para para \/usr\/sbin\n\ncp loadq.py loadq.sh \/usr\/local\/sbin\n\nPara funcionar do Debian foi necess\u00e1rio modificar a primeira linha do script em python:\nvi \/usr\/local\/sbin\/loadq.py\n\nSubstitua:\n\n#!\/usr\/bin\/env python\n\npor:\n\n#!\/usr\/bin\/python\n\nCaso necess\u00e1rio podemos alterar o usu\u00e1rio, senha e nome do banco editando o arquivo loadq.py.\n\nAdicione uma linha ao \/etc\/rc.local no caso do debian para inicializar automaticamente o script.\n\nvi \/etc\/rc.local\n\nAdicione a linha:\n\n\/usr\/local\/sbin\/loadq.py\n\nchmod +x \/usr\/sbin\/loadq.sh\nchmod +x \/usr\/sbin\/loadq.py\n\nExecute o script\nloadq.sh\n\n3. No diret\u00f3rio .\/graph existe o script image_graph.sh que pode der usado para instalar o Image_graph caso n\u00e3o o tenha instado via apt. \u00c9 requisito para para o qloanalyzer a fonte verdata.ttf para gerar os gr\u00e1ficos. Instale-a em \/usr\/share\/pear\/Image\/Canvas\/Fonts ou onde foi instalado o Image_Graph.\n\n(no meu caso debian 6 nao \u00e9 necessario o passo abaixo)\n4. Edite o php.ini para satisfazer as necessidades do qloganalyzer. Observe que tais par\u00e2metros podem fazer com que outras aplica\u00e7\u00f5es php\/apache deixem de funcionar ou fiquem inst\u00e1veis. Consulte o Web Designer se tiver d\u00favidas.\n\nNo Debian o php.ini usado pelo apache fica em \/etc\/php<4 ou 5>\/apache[2]\/php.ini<br \/>\nComo meu php \u00e9 o 5 e meu apache \u00e9 2 ficou:<\/p>\n<p>vi \/etc\/php5\/apache2\/php.ini<\/p>\n<p>Procure pelos par\u00e2metros abaixo e troque para Off:<\/p>\n<p>magic_quotes_gpc = Off<br \/>\nmagic_quotes_runtime = Off<\/p>\n<p>Editar o arquivo em install\/cdr chamado cdrload.php<\/p>\n<p><?PHP\n  $locale_db_host  = 'localhost';\n  $locale_db_name  = 'asteriskcdrdb';\n  $locale_db_login = 'asteriskuser';\n  $locale_db_pass  = 'senhadousuario';\n  $logfile = \"\/var\/log\/asterisk\/cdr-csv\/Master.csv\";\n\n______________________________________________________________\n\n5. Teste: aponte o browser para:\n\nhttp:\/\/<ip_do_servidor_que_foi_instalado\/qanalyzer\n\nSe n\u00e3o foi trocada a senha o usu\u00e1rio padr\u00e3o \u00e9 admin e a senha \u00e9 admin.\n\nMais: http:\/\/www.micpc.com\/qloganalyzer\/\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>O Queue LOG analyzer \u00e9 uma op\u00e7\u00e3o GPL para gera\u00e7\u00e3o de relat\u00f3rios e gr\u00e1ficos sobre as filas e CDR Call Detailed Record do Asterisk. O autor \u00e9 o Earl C. Terwillinger. Existem alguns patchs para que o queue.log v\u00e1 para um banco de dados. Por\u00e9m&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts\/137"}],"collection":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=137"}],"version-history":[{"count":0,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts\/137\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=137"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=137"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}