Log.io è lo strumento di monitoraggio in tempo reale, alimentato da node.js e socket.io. Log.io offre una semplice interfaccia web per il monitoraggio dei log del server. Questa guida ti aiuterà a monitorare il registro del server con log.io su CentOS 7 / RHEL 7.
Configura repository EPEL:
Useremo npm per l'installazione di Log.io, quindi installiamo npm e node.js, sono disponibili nel repository EPEL. Installa EPEL rpm per configurare il repository su CentOS 7.
# rpm -Uvh http://ftp.riken.jp/Linux/fedora/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
Installa Log.io:
Installa npm e node.js usando il comando yum.
# yum install npm nodejs
npm è il gestore di pacchetti per jabascript che consente di gestire le dipendenze per l'applicazione, inoltre consente all'utente di installare le applicazioni node.js dal registro npm. Devi inserire un nome utente per l'installazione, ad esempio qui ho usato l'utente "root".
# npm install -g log.io --user "root"
Configura Log.io:
La directory Installed di Log.io è ~/.log.io che è una directory nascosta nella home directory dell'utente, utilizzata nel passaggio precedente per l'installazione, ha tre file di configurazione che ne controllano la natura di funzionamento.
harvester.conf
Questo è il file di configurazione per Harvester, non è altro che un log forwarder che continua a guardare i file di registro per le modifiche, inviando un nuovo registro al server. Possiamo configurare il nome del nodo, quali sono tutti i log da guardare e dove inviare un log.
Modifica il file Harvester, menziona il nome del nodo. Per impostazione predefinita, Harvester è impostato per monitorare solo il log di Apache, lo modificheremo in modo tale da monitorare il log dei messaggi. Poiché l'host del server è definito come 0.0.0.0, Harvester trasmetterà i registri a tutti i server Log.io in ascolto, si consiglia di impostare 127.0.0.1 (se la stessa macchina funge da server Log.io) o l'indirizzo IP del server remoto Server Log.io.
# vi ~/.log.io/harvester.conf exports.config = { nodeName: "ITzGEEK_server", # Node Name logStreams: { apache: [ "/var/log/httpd/access_log", # Monitoring Apache Logs "/var/log/httpd/error_log" ], messages: [ "/var/log/messages" # Monitoring Messages file ], }, server: { host: '192.168.0.1', # Sends the file to remote server, Set to 127.0.0.1 for local Log.io server port: 28777 } }
log_server.conf
Questo è il file di configurazione del server Log.io, dice al server su quale indirizzo IP dovrebbe ascoltare. Per impostazione predefinita, è in ascolto su tutte le interfacce IP per ricevere i registri dal client. L'indirizzo IP di ascolto può essere modificato modificando la stringa host.
# vi ~/.log.io/log_server.conf exports.config = { host: '0.0.0.0', # Listens on all ip for receving logs port: 28777 }
server_web.conf
Questo è il file di configurazione dell'interfaccia web, questo altera la funzionalità del portale web. Per impostazione predefinita, il portale web è accessibile sulla porta n. 28778 e su tutte le interfacce. Questo file offre un modo per aumentare la sicurezza inserendo l'autenticazione HTTP, proteggendo l'interfaccia Web con SSL, impedendo i registri da un indirizzo IP specifico e limitando l'accesso dell'interfaccia Web a un IP specifico.
# vi ~/.log.io/web_server.conf exports.config = { host: '0.0.0.0', # Listens all ip adress to recive the web interface requests port: 28778, /* // Enable HTTP Basic Authentication auth: { user: "admin", pass: "1234" }, */ /* // Enable HTTPS/SSL ssl: { key: '/path/to/privatekey.pem', cert: '/path/to/certificate.pem' }, */ /* // Restrict access to websocket (socket.io) // Uses socket.io 'origins' syntax restrictSocket: '*:*', */ /* // Restrict access to http server (express) restrictHTTP: [ "192.168.29.39", "10.0.*" ] */ }
Consenti interfaccia web e socket.io nel firewall per la ricezione dei log dalla mietitrice.
# firewall-cmd --add-port=28778/tcp --permanent # firewall-cmd --add-port=28777/tcp --permanent # firewall-cmd --reload
Monitoraggio dei registri del server:
Apri il tuo browser web e visita http://your-ip-address:28778 . Otterrai la seguente pagina con i log.
Questo è tutto, buon monitoraggio!!!.
Collegamenti esterni:
Log.io =https://github.com/NarrativeScience/Log.io
Node.js =http://nodejs.org/
socket.io =http://socket.io/
npm =https://www.npmjs.com/