Commit 69909bbe2c43aad2b88eb458dc186772a2c1ec6a
1 parent
b3f75861
Exists in
master
Coletando navegadores por mes
Showing
3 changed files
with
46 additions
and
16 deletions
Show diff stats
rn/MdEstatisticasAgendamentoRN.php
... | ... | @@ -21,7 +21,7 @@ class MdEstatisticasAgendamentoRN extends InfraRN |
21 | 21 | |
22 | 22 | $this->gravarLog('Autenticar no WebService'); |
23 | 23 | if (!$enviar->autenticar()) { |
24 | - throw new InfraException('Problemas com a autenticação.'); | |
24 | + throw new InfraException('Problemas com a autenticação.'); | |
25 | 25 | } |
26 | 26 | |
27 | 27 | $this->gravarLog('Autenticado. Coletando indicadores'); |
... | ... | @@ -41,7 +41,7 @@ class MdEstatisticasAgendamentoRN extends InfraRN |
41 | 41 | |
42 | 42 | $this->gravarLog('Indicadores recebidos. Coletar indicadores do tipo lista'); |
43 | 43 | |
44 | - $this->gravarLog('Obter a data do último envio das quantidades de acessos '); | |
44 | + $this->gravarLog('Obter a data do último envio das quantidades de acessos '); | |
45 | 45 | $data = $enviar->obterUltimoAcesso(); |
46 | 46 | $this->gravarLog('Ultima data das quantidades de acessos: ' . $data . '. Coletar quantidade de acessos'); |
47 | 47 | |
... | ... | @@ -54,13 +54,16 @@ class MdEstatisticasAgendamentoRN extends InfraRN |
54 | 54 | $this->gravarLog('Coletado. Enviar: '); |
55 | 55 | $enviar->enviarVelocidades($velocidades, $id); |
56 | 56 | |
57 | - $this->gravarLog('Enviado. Coletar os sistemas operacionais dos usuários: '); | |
57 | + $this->gravarLog('Enviado. Coletar os sistemas operacionais dos usuários: '); | |
58 | 58 | $sistemasOperacionaisUsuarios = $coletor->obterSistemasOperacionaisUsuarios(); |
59 | 59 | $this->gravarLog('Coletado. Enviar: '); |
60 | 60 | $enviar->enviarSistemasUsuarios($sistemasOperacionaisUsuarios, $id); |
61 | 61 | |
62 | - $this->gravarLog('Enviado. Coletar os navegadores: '); | |
63 | - $navegadores = $coletor->obterNavegadores(); | |
62 | + $this->gravarLog('Enviado. Obter a data do último envio das quantidades de navegadores '); | |
63 | + $data = $enviar->obterUltimoNavegador(); | |
64 | + $this->gravarLog('Ultima data das quantidades de navegadores: ' . $data . '. Coletar quantidade de navegadores'); | |
65 | + | |
66 | + $navegadores = $coletor->obterNavegadores($data); | |
64 | 67 | $this->gravarLog('Coletado. Enviar: '); |
65 | 68 | $enviar->enviarNavegadores($navegadores, $id); |
66 | 69 | |
... | ... | @@ -90,7 +93,7 @@ class MdEstatisticasAgendamentoRN extends InfraRN |
90 | 93 | InfraDebug::getInstance()->setBolLigado(false); |
91 | 94 | InfraDebug::getInstance()->setBolDebugInfra(false); |
92 | 95 | InfraDebug::getInstance()->setBolEcho(false); |
93 | - throw new InfraException('Erro processando estatÃsticas do sistema.', $e); | |
96 | + throw new InfraException('Erro processando estatísticas do sistema.', $e); | |
94 | 97 | } |
95 | 98 | |
96 | 99 | } | ... | ... |
rn/MdEstatisticasColetarRN.php
... | ... | @@ -491,17 +491,39 @@ class MdEstatisticasColetarRN extends InfraRN |
491 | 491 | return $sistemas; |
492 | 492 | } |
493 | 493 | |
494 | - public function obterNavegadores() { | |
495 | - $query = "select count(*) as quantidade, identificacao as nome, versao from infra_navegador group by identificacao,versao"; | |
496 | - $rs = BancoSEI::getInstance()->consultarSql($query); | |
494 | + public function obterNavegadores($ultimadata = null) { | |
495 | + if ($ultimadata == null) { | |
496 | + $ultimadata = "1900-01-01"; | |
497 | + } | |
498 | + $current_month = date("Y-m-01"); | |
499 | + $sgbd = $this->obterTipoSGBD(); | |
500 | + $query = ''; | |
501 | + if ($sgbd == 'MySql') { | |
502 | + $query = "SELECT year(dth_acesso) as ano, month(dth_acesso) as mes, identificacao as nome, versao, count(*) as quantidade from sei.infra_navegador where date(dth_acesso) > '%s' and date(dth_acesso) < '%s' group by 1, 2, 3, 4 order by 1,2,3,4"; | |
503 | + // $query = "SELECT year(dth_acesso) as ano, month(dth_acesso) as mes, recurso, count(*) as quantidade FROM sei.infra_auditoria where date(dth_acesso) > '%s' and date(dth_acesso) < '%s' group by 1, 2, 3 order by 1, 2, 3"; | |
504 | + } elseif ($sgbd == 'SqlServer') { | |
505 | + $query = "SELECT year(dth_acesso) as ano, month(dth_acesso) as mes, identificacao as nome, versao, count(*) as quantidade from infra_navegador where dth_acesso > '%s' and dth_acesso < '%s' group by year(dth_acesso) as ano, month(dth_acesso) as mes, identificacao as nome, versao order by 1,2,3,4"; | |
506 | + //$query = "SELECT year(dth_acesso) as ano, month(dth_acesso) as mes, recurso, count(*) as quantidade FROM infra_auditoria where dth_acesso > '%s' and dth_acesso < '%s' group by year(dth_acesso), month(dth_acesso), recurso order by 1, 2, 3"; | |
507 | + } elseif ($sgbd == 'Oracle'){ | |
508 | + $query = "SELECT to_char(dth_acesso, 'YYYY') AS ano, to_char(dth_acesso, 'MM') AS mes, identificacao as nome, versao, count(*) as quantidade from sei.infra_navegador WHERE dth_acesso > date '%s' AND dth_acesso < date '%s' group by to_char(dth_acesso, 'YYYY') AS ano, to_char(dth_acesso, 'MM') AS mes, identificacao as nome, versao order by to_char(dth_acesso, 'YYYY') AS ano, to_char(dth_acesso, 'MM') AS mes, identificacao as nome, versao"; | |
509 | + // $query = "SELECT to_char(dth_acesso, 'YYYY') AS ano, to_char(dth_acesso, 'MM') AS mes, recurso, count(*) as quantidade FROM sei.infra_auditoria WHERE dth_acesso > date '%s' AND dth_acesso < date '%s' GROUP BY to_char(dth_acesso, 'YYYY'), to_char(dth_acesso, 'MM'), recurso"; | |
510 | + } | |
497 | 511 | $lista = array(); |
498 | - foreach ($rs as $r) { | |
499 | - $result = array( | |
500 | - 'nome' => utf8_encode($r['nome']), | |
501 | - 'quantidade' => $r['quantidade'], | |
502 | - 'versao' => $r['versao'] | |
503 | - ); | |
504 | - array_push($lista, $result); | |
512 | + if ($query) { | |
513 | + $query = sprintf($query, $ultimadata, $current_month); | |
514 | + echo $query; | |
515 | + $rs = BancoSEI::getInstance()->consultarSql($query); | |
516 | + foreach ($rs as $r) { | |
517 | + $result = array( | |
518 | + 'nome' => utf8_encode($r['nome']), | |
519 | + 'quantidade' => $r['quantidade'], | |
520 | + 'versao' => $r['versao'], | |
521 | + 'ano' => $r['ano'], | |
522 | + 'mes' => $r['mes'], | |
523 | + ); | |
524 | + array_push($lista, $result); | |
525 | + } | |
526 | + | |
505 | 527 | } |
506 | 528 | return $lista; |
507 | 529 | } | ... | ... |
rn/MdEstatisticasEnviarRN.php
... | ... | @@ -34,6 +34,11 @@ class MdEstatisticasEnviarRN extends InfraRN |
34 | 34 | return date($data); |
35 | 35 | } |
36 | 36 | |
37 | + public function obterUltimoNavegador() { | |
38 | + $data = $this->doGet($this->url . '/navegadores/ultimo?sigla=' . $this->orgaoSigla, false); | |
39 | + return date($data); | |
40 | + } | |
41 | + | |
37 | 42 | public function enviarAcessos($acessos, $id) { |
38 | 43 | $url = $this->url . '/acessos'; |
39 | 44 | $obj = array( | ... | ... |