ASTNAGIOS 2.0 + FAN - Solução completa para monitoramento
Apresento minhas experiências com o FAN, assim como a segunda versão do script de integração Asterisk + Nagios, o qual já apresentei em artigo anterior.
[ Hits: 24.696 ]
Por: Sidney Alexandre Pagel em 06/04/2015
<?php
//variáveis de conexão
$servername = "192.168.X.X";
$username = "nagios";
$password = "XXXXX";
$dbname = "astnagios";
$id_contato = $argv[1];
//este parâmetro foi recebido na execução do PHP pelo contexto:
//exten => 3,2,System(/usr/bin/php /opt/php/servidores/insert.php ${id} ${id_evento})
//ela recebe portanto, o conteudo da variavel ${id}
$id_evento = $argv[2];
//esta variável recebe o conteúdo de ${id_evento}
//cria conexão
$conn = new mysqli($servername, $username, $password, $dbname);
//valida conexão
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
//variáveis insert
$horario = shell_exec("date +%H:%M:%S");
//cria sql de insert tabela eventos
$sql = "INSERT INTO checados ( id_evento, horario, contatosid_contato) VALUES ( '$id_evento','$horario','$id_contato')";
//valida insert
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close;
<?php
//variáveis de conexão
$servername = "192.168.X.X";
$username = "nagios";
$password = "XXXXXX";
$dbname = "astnagios";
//cria conexão
$conn = new mysqli($servername, $username, $password, $dbname);
//valida conexao
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
//faz um select para saber qual é o último evento inserido na tabela checados
$sql = "SELECT max(id_checado) as maior FROM checados";
$result = $conn->query($sql);
while($row = $result->fetch_assoc()) {
$maior = $row["maior"];
}
$sql2 = "UPDATE checados set hangup=1 where id_checado='$maior'";
//atualiza o valor do campo hangup com o valor "1". Esse é o campo pesquisado pela função
//de inserção de dados da aplicação astnagios. Quando a função retorna o valor 1, a //aplicação se interrompe. Isso é necessário para que a função só termine quando a ligação //realmente chegou a um fim. Por isso essa aplicação (hangup.php) é executada apenas em //caso de sucesso completo da ligação.
if ($conn->query($sql2) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql2 . "
" . $conn->error;
}
//parâmetros de validação do insert na base de dados
$conn->close;
O software livre na administração pública
Pequena solução para backup em redes mistas
NagVis - Gestor de mapas pra lá de especial
Integrando Nagios com Asterisk
Configurando um domínio pelo serviço ipturbo empresarial (Brasil Telecom)
Impressione seus amigos mudando as músicas no seu computador pelo celular
Monitoramento de Comunicação - Blackbox Exporter(ICMP) + Prometheus + Grafana
Falta de padronização no Linux
Como fazer RAID 0 com mdadm no Debian
librePods: liberte seus AirPods em 2026
Bluefin - A nova geração de ambientes de trabalho Linux
Como atualizar sua versão estável do Debian
Configurar aviso da temperatura da CPU no Conky
Pós-instalação do elementary OS 8.1
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Registro do 'last&qu... errado (1)
O WiFi não reconhece minha rede depois que o processo de suspensão é r... (2)









