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.239 ]
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;
Mais sobre terminais leves....
Pequena solução para backup em redes mistas
Integrando Nagios com Asterisk
Configurando um domínio pelo serviço ipturbo empresarial (Brasil Telecom)
Jogando pesado na segurança de seu SSH
Exclusivo - Entrevista com Fábio Berbert, criador e mantenedor do projeto Viva o Linux!
Upgrade no Arch Linux usando outro PC com Internet rápida
Como contribuir para projetos abertos no GitHub
LaTeX - um poderoso diagramador de textos (parte 1)
A Evolução dos Sistemas Operacionais
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Instalação dualboot Windows 11 e Debian 13 (8)
Preciso recuperar videos *.mp4 corrompidos (11)
É normal não gostar de KDE? (11)









