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: 25.831 ]
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
Mais sobre terminais leves....
Configurando um domínio pelo serviço ipturbo empresarial (Brasil Telecom)
Pequena solução para backup em redes mistas
Jogando pesado na segurança de seu SSH
Personalidades do mundo Open Source
K12LTSP - Executando o Mozilla antes do GDM
Ícones no Fluxbox, Openbox e Blackbox
Instalação e Configuração do Void com Cinnamon
WebCDWrite: O incrível serviço de gravação de CD-R sob demanda via HTTP
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Otimizando o uso de Memória RAM no Ubuntu com zRAM
Usando alias no Terminal para comandos longos
Simplificando o manual do terminal no Ubuntu 26.04
Bloqueio da instalação e reinstalação do Snap (snapd) no Ubuntu
Continuando meus tópicos anteriores (12)
VoidBR - Void Linux adaptado ao Brasil. (0)









