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.958 ]
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;
Configurando um domínio pelo serviço ipturbo empresarial (Brasil Telecom)
Jogando pesado na segurança de seu SSH
Mais sobre terminais leves....
Pequena solução para backup em redes mistas
NagVis - Gestor de mapas pra lá de especial
Como criar pacotes "task" para o APT
Ripando DVDs com Ubuntu Dapper Drake (AcidRip + MEncoder + Xvid)
Como executar tarefas a cada 5, 10 ou 15 minutos
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Usando o --load-average no Gentoo para evitar OOM Kill
Instalando o COSMIC DE no Gentoo (systemd)
Centralizar Logo com Transparência via ImageMagick
Ajudante para criar dicas e artigos no VOL (3)
O que você está ouvindo agora? [2] (228)









