Log.io este o mică aplicație simplă, dar eficientă construită deasupra Node.js și Socket.io, care permite monitorizarea fișierelor de jurnal de servere Linux în timp real prin intermediul widgeturilor ecranului interfeței web.
Acest tutorial vă va ghida cu privire la modul în care puteți instala și monitoriza orice fișiere jurnal locale în timp real cu Log.io instalat pe RHEL / CentOS 7 / 6.x prin configurare Log.io harvester pentru a monitoriza orice modificare locală a fișierelor jurnal.
1. CentOS Epel repository oferă pachetele binare pentru Node.js și NPM – Module ambalate nod. Instalați depozitele Epel emițând următoarea comandă.
# yum instalați http://fedora.mirrors.telekom.ro/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm.
Pe RHEL / CentOS 6.x - 32 Bit # yum instalați http://fedora.mirrors.telekom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm Pe RHEL / CentOS 6.x - 64 Bit # yum instalați http://fedora.mirrors.telekom.ro/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm.
2. După ce ai adăugat Epel Repos pe sistemul dvs., efectuați o actualizare a sistemului executând următoarea comandă.
# yum actualizare.
3.Node.js este o platformă de programare Javascript pe partea de server care vă permite să creați aplicații de rețea cu funcționalitate de backend. NPM (Node Package Manager) este practic managerul de pachete pentru Node.js. Deci, la următorul pas, continuați și instalați Node.js și binare NMP pe sistemul dvs. prin intermediul Manager de pachete YUM prin emiterea următoarelor comenzi.
# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - # yum install -y nodejs.
4.Log.io aplicația trebuie instalată pe sistemul dvs. prin NPM prin specificarea unui utilizator de sistem local valid, prin care trebuie să aibă loc instalarea. În timp ce puteți utiliza orice utilizator valid de sistem pentru a instala Log.io, vă recomand personal să instalați aplicația prin rădăcină utilizator sau alt utilizator de sistem cu privilegii de root.
Motivul utilizării acestei abordări este că Log.io trebuie să aibă acces pentru a citi fișierele de jurnal local și un utilizator cu privilegii de root non-privilegii nu poate accesa și citi unele fișiere jurnal importante.
Deci, conectați-vă cu contul root și instalați aplicația Log.io prin contul root prin emiterea următoarei comenzi (dacă utilizați alt utilizator, înlocuiți contul root cu utilizatorul de sistem în consecință).
# npm install -g log.io - utilizator „root”
5. După ce aplicația a fost instalată, schimbați-vă directorul de lucru în Log.io folder, care este ascuns, și faceți o listă de directoare pentru a vizualiza conținutul folderului pentru a configura aplicația în continuare.
# pwd [Asigurați-vă că sunteți pe calea cea bună] # cd .log.io / # ls.
6. Acum este timpul să vă configurați Log.io pentru a monitoriza fișierele jurnal locale în timp real. Să vedem cum funcționează Log.io.
Mai întâi deschis secerător.conf fișier pentru editare, care implicit monitorizează numai fișierele jurnal Apache și îl înlocuiește numeNod declarație pentru a se potrivi cu numele dvs. de gazdă și pentru a defini logStreams declarații cu fișierele jurnal interne pe care doriți să le monitorizați (în acest caz monitorizez mai multe fișiere jurnal, cum ar fi audit, mesaje și jurnale sigure). Utilizați extrasul de fișier de mai jos ca ghid.
# nano harvester.conf.
Extras din fișier de recoltat.
exporturi.config = {nodeName: "pxe-server", logStreams: {audit: ["/var/log/audit/audit.log"], mesaje: ["/ var / log / messages"], securizat: ["/ var / log / secure"]}, server: {host: '0.0.0.0', port: 28777 } }
De asemenea, dacă nu aveți nevoie de ieșirea recoltei pentru a fi trimisă la o telecomandă Log.io serverul schimbă linia gazdă pe Server instruciune pentru a-și trimite ieșirea numai local modificând adresa 0.0.0.0 cu adresa loopback (127.0.0.1).
7. Din motive de securitate, dacă nu vă așteptați la recoltarea la distanță a recoltei locale Log.io server deschis log_server.conf înregistrați și înlocuiți 0.0.0.0 adresa cu adresa loopback (127.0.0.1).
# nano log_server.conf.
8. Alte caracteristici de securitate, cum ar fi autentificarea acreditării, HTTPS sau restricția bazată pe IP-uri pe serverul web Log.io pot fi aplicate pe partea serverului web. Pentru acest tutorial voi folosi doar ca măsură de securitate doar datele de autentificare.
Deci, deschide web_server.conf fișier, decomentați întregul autentificare declarație prin ștergerea tuturor barelor și asteriscurilor și înlocuirea utilizator și trece în consecință, așa cum este sugerat în captura de ecran de jos.
# nano web_server.conf.
9. Pentru a obține acces web la Log.io server adaugă o regulă pe RHEL/CentOS 7 Firewall pentru a deschide TCP 28778 port prin emiterea următoarei comenzi.
# firewall-cmd --add-port = 28778 / tcp --permanent. # firewall-cmd --reload.
Notă: Utilizatorii RHEL / CentOS 6.x pot deschide portul 28778 pe firewall-ul iptable.
10. Pentru a începe Log.io aplicația de monitorizare a jurnalelor vă asigură că directorul curent de lucru este casa root .log.io și utilizați următoarele comenzi în următoarea ordine pentru a porni aplicația.
Mai întâi porniți serverul, puneți-l în fundal și apăsați tasta Enter # log.io-server & Porniți secerătorul de loguri în fundal # log.io-harvester &
11. După ce serverul a fost pornit deschideți un browser, introduceți adresa IP a serverelor dvs. urmată de 28778 numărul portului utilizând protocolul HTTP pe adresa URL și ar trebui să apară un prompt care solicită acreditările dvs. de conectare.
Introduceți utilizatorul și parola configurate pe pasul 8 să procedăm mai departe și Log.io aplicația ar trebui să fie acum vizibilă pe browserul dvs., prezentând fișiere jurnal monitorizate în timp real.
http://192.168.1.20:28778.
Pe interfața web adăugați ecrane noi și organizați-vă fluxurile sau nodurile în consecință.
12. A opri Log.io aplicația rulează următoarea comandă.
# pkill nod.
13. Pentru a utiliza o comandă care gestionează Log.io aplicație cu trei comutatoare ( start, Stop și stare) creați următorul script numit log.io pe /usr/local/bin director executabil și adăugați permisiunile de execuție la acest script.
# nano /usr/local/bin/log.io. # chmod + x /usr/local/bin/log.io.
Adăugați următorul fragment la acest fișier script.
#! / bin / bash start () {echo "Pornirea procesului log.io ..." /usr/bin/log.io-server & /usr/bin/log.io-harvester &} stop () {echo "Oprirea procesului io-log ..." pkill node} status () {echo "Status io-log process ..." netstat -tlp | grep nod} majuscule „$ 1” în start) start;; Stop) Stop;; stare) stare;; *) ecou "Utilizare: start | stop | status";; Esac.
14. Pentru a porni, opri sau vizualiza logarea stării Log.io cu contul root (sau utilizatorul care a fost instalat aplicația Log.io) și rulați următoarele comenzi pentru a gestiona cu ușurință aplicația.
# log.io start. # log.io status. # log.io oprește.
Asta e tot! In opinia mea Log.io este o aplicație web excelentă și eficientă pentru a monitoriza fișierele jurnal de servere locale sau la distanță, este în timp real și pentru a obține o perspectivă asupra a ceea ce se întâmplă intern în sisteme și în special pentru a depana problemele serverului atunci când sistemele tind să nu mai răspundă sau să se blocheze, fără a fi nevoie să utilizați un consolă.