11 colectoare de jurnal Open Source pentru logare centralizată

posted in: Articles | 0

diferența dintre produsele mediocre și produsele excelente este logarea. Aflați de ce este așa și cum să le legați împreună.la fel ca securitatea, logarea este o altă componentă cheie a aplicațiilor web (sau a aplicațiilor în general) care este marginalizată din cauza obiceiurilor vechi și a incapacității de a vedea înainte. Ceea ce mulți văd ca niște benzi inutile de bandă digitală sunt instrumente puternice pentru a privi în interiorul aplicațiilor dvs., pentru a corecta erorile, pentru a îmbunătăți zonele slabe și pentru a încânta clienții.,

înainte de a trece la logarea centralizată, Să analizăm mai întâi de ce logarea este o afacere atât de mare.

două tipuri (niveluri) de logare

calculatoarele sunt sisteme deterministe, cu excepția cazului în care nu sunt.în calitate de dezvoltator profesionist, am întâlnit multe cazuri în care comportamentul observat al aplicației a uimit pe toată lumea zile întregi, dar cheia a fost întotdeauna în jurnale. Fiecare software pe care îl rulăm produce (sau cel puțin ar trebui să genereze) jurnale, care ne spun prin ce trecea când a apărut situația problematică.,acum, logarea, așa cum o văd, este de două tipuri: jurnalele generate automat și jurnalele generate de programator. Vă rugăm să rețineți că acest lucru nu este nici o diferențiere manual, și citându-mă pe această terminologie vă va ateriza în probleme. 😉

Imaginea de mai sus arată ceea ce poate fi numit ca un jurnal generat automat.

în acest caz specific, este un sistem WordPress care înregistrează o condiție neașteptată (o notificare) atunci când rulează un cod PHP., Jurnalele ca acestea sunt generate tot timpul neobosit – de instrumente de baze de date precum MySQL, servere web precum Apache, limbaje de programare și medii, dispozitive mobile și chiar sisteme de operare.

acestea rareori conțin multă valoare, iar programatorii nici măcar nu se deranjează să se uite în ele, cu excepția cazului în care ceva nu merge bine. În astfel de momente, ei sapă adânc în bușteni, încercând să înțeleagă ce a mers prost.

dar jurnalele generate automat pot ajuta doar atât de mult., Dacă mai multe persoane au acces de administrator la un site, de exemplu, iar unul dintre ele se întâmplă să șteargă o informație esențială, este imposibil să detectați vinovatul cu ajutorul jurnalelor generate automat. Din perspectiva sistemelor legate împreună ca aplicație, a fost doar o altă zi la locul de muncă-cineva a avut autoritatea necesară pentru a executa o sarcină și astfel sistemul a efectuat-o.ceea ce este necesar aici este un strat suplimentar de logare explicită, extinsă, care creează trasee pentru partea umană a lucrurilor., Acestea sunt ceea ce eu numesc jurnale generate de programatori, și ele formează coloana vertebrală a industriilor sensibile, cum ar fi sectorul bancar. Iată un exemplu de ceea ce un astfel de sistem de logare ar putea arata ca:

Sursa: joomlatools.com

Logare este puterea

Deci, având în vedere aceste două tipuri de înregistrări într-un sistem, iată cum puteți beneficia de ele și să intensifice impactul.”deliciul clientului”a ajuns să fie cunoscut ca un gimmick inutil de marketing, dar datorită logării, acesta poate fi făcut foarte real., Știu de produse digitale care monitorizează jurnalele lor ca un șoim, și de îndată ce un client sparge ceva pe pagina, ei pot apela clientul și oferă pentru a ajuta.gândiți — vă doar la asta-în câteva secunde de la obținerea unei erori urâte, primiți un apel de la companie care spune: „Hei, am înțeles că încercați să adăugați acest articol în coș, dar a continuat să moară. Este în regulă pentru mine să adaug acest timp și să finalizez comanda pentru tine?”

client încântat? Fii sigur!,așa cum am mai spus, atunci când bug-urile nu sunt urmărite mult timp, dezvoltatorii din echipa dvs. se frustrează și pierd din ce în ce mai mult timp urmărindu-și cozile. Și aici este chestia cu depanarea — necesită o minte proaspătă, curioasă de la început. Dacă un WTF gândit atât de mult ca intra in creier, întregul proces merge pentru o aruncare.

și ce face greu de depanare? Din experiența mea, lipsa de logare, sau lipsa de cunoștințe de logare., Pentru început, este posibil să nu vă dați seama că baza de date preferată este, de asemenea, doar o altă bucată de software care generează jurnale sau nu vă conectați extensiv în aplicația dvs. (consultați jurnalele generate de programator de mai sus).

îmi amintesc în special un caz în care cererea nu răspundea și nimeni nu știa de ce. Câteva zile mai târziu, vinovatul a fost limita de i/o a discului atinsă din cauza traficului excesiv. Pentru că nimeni nu s-a deranjat să se uite acolo, nimeni nu și-a dat seama de ce.,ce se întâmplă dacă doi ani în jos linia clientul spune că toate aceste comenzi nu au fost plasate de ei, dar unele hacker?

ce argument ar trebui să distreze sau să respingă cererea lor? Dacă aveți logare extinse (adresa IP, data și ora, card de credit, etc.), atunci veți putea analiza toate acestea și veți ajunge la o decizie. Bun sau rău, va avea cel puțin o bază obiectivă, mai degrabă decât să semene cu o lovitură în întuneric.

Sursa: semnătura-citește.,com

același lucru este valabil și dacă veniți în unele lentile de reglementare sau sunt obligate să se supună unui audit terță parte, ca parte a unui nou proiect important. Neavând un sistem robust de logare vă va arăta într-o lumină proastă.

îmbunătățirea sistemelor existente

cum procedați pentru îmbunătățirea sistemului actual?

ar trebui să aruncați doar mai multe fire RAM și CPU la ea? Ce se întâmplă dacă aplicația dvs. este lentă, în ciuda resurselor suficiente? Unde este strangularea? Cel mai adesea, logarea este răspunsul.,

de exemplu, toate sistemele de baze de date majore au o caracteristică pentru logare interogări lente.

Sursa: speedawarenessmonth.com

Dacă vizitați lent jurnal de interogare în mod regulat, veți obține să știu care operațiunile și de a lua mai mult timp, și, prin urmare, să descopere mici, dar importante domenii care au nevoie de munca. Adesea, o mică schimbare ca aceasta funcționează mai bine decât dublarea capacității hardware.

nu contează câte moduri vă ajută un sistem de logare bun., Poate că cel mai bun argument este că este o activitate automatizată care, odată configurată, nu are nevoie de monitorizare și vă va salva de la ruină într-o zi.

cu asta din drum, să ne uităm la unele dintre uimitoare colectoare jurnal Open Source (unificat logging tools) acolo. Doar în cazul în care vă întrebați, am acoperit instrumentele comerciale de logare bazate pe cloud într-o postare anterioară.

Graylog

Graylog este una dintre cele mai importante nume din industrie, atunci când vine vorba de industria-clasa de exploatare forestieră și capabilități de vizualizare., De asemenea, este unic prin faptul că scanează jurnalele colectate pentru semne de vulnerabilități de securitate și vă notifică instantaneu.deși Graylog este un sistem centralizat de logare, acesta are flexibilitatea de care aveți nevoie, permițându-vă să Personalizați alertele, tablourile de bord și multe altele.Greylog este open-source, dar există un plan pentru întreprinderi dacă nevoile dvs. sunt complexe.cu clienți precum SAP, Cisco și LinkedIn pe lista sa, Graylog este un instrument în care poți avea încredere cu ochii închiși.,dacă sunteți fan sau utilizator al stivei elastice, Logstash merită verificat (stiva ELK este deja un lucru, în cazul în care nu știați). Ca și alte instrumente de logare din această listă, Logstash dacă este complet open-source, permițându-vă libertatea de a implementa și de a folosi după cum doriți.

dar nu vă înșelați: Logstash este o mamă cu capabilități care depășesc cu mult orice instrument de logare umil. Este capabil să colecteze cantități mari de date de pe mai multe platforme, vă permite să definiți și să executați propriile conducte de date, să înțelegeți depozitele de jurnal nestructurate și multe altele.,desigur, singura limitare este că funcționează numai cu suita elastică de produse, dar dacă începeți și căutați să scalați în curând, Logstash este calea de urmat!printre instrumentele de logare centralizate care funcționează ca un strat intermediar pentru ingestia de date, Flutend este primul dintre egali. Cu o excelentă bibliotecă de plugin-uri, Fluentd este capabil de a captura date de la aproape orice sistem de producție, se framanta-l în structura dorită, de a construi o conducta personalizat, și hrana pentru animale-l la favorite platformă de analiză, fie ea MongoDB sau Elasticsearch.,Fluentd este construit pe Ruby, este în întregime open source și este foarte popular datorită flexibilității și modularității sale.cu companii importante precum Microsoft, Atlassian și Twilio care utilizează platforma, Fluentd nu are nimic de dovedit. 🙂

Flume

dacă într-adevăr, seturi de date foarte mari sunt provocarea dvs. și, în cele din urmă, doriți să alimentați totul în ceva de genul Hadoop, Flume este una dintre cele mai bune alegeri din jur. Este un proiect” pur ” open source, în sensul că este întreținut de iubita noastră fundație Apache, ceea ce înseamnă că nu există un plan enterprise.,

Acest lucru poate sau nu poate fi ceea ce căutați exact. 🙂

Sursa: beyondcoder.com

Scris în Java (care continuă să mă uimească atunci când vine vorba de revolutionara tehnologie), Canal codul sursă este în întregime deschis. Flume este cel mai bun pentru dvs. dacă sunteți în căutarea unei platforme distribuite, tolerante la erori de ingestie a datelor pentru lucruri grele.,îi dau zero din zece pentru denumirea produsului, dar Octopussy poate fi o alegere bună dacă nevoile dvs. sunt simple și vă întrebați despre ce toată agitația legată de conducte, ingestie, agregare etc., este vorba.în opinia mea, Octopussy acoperă nevoile majorității produselor de acolo (Statisticile estimate sunt inutile, dar dacă ar trebui să ghicesc, aș spune că are grijă de 80% din cazurile de utilizare din lumea reală).

Octopussy nu are un UI Mare (vezi AICI), la toate, dar se face pentru ea în ceea ce privește viteza și lipsa de bloat., Sursa este disponibilă pe GitHub, așa cum era de așteptat, și cred că merită o privire serioasă.

Rsyslog

Rsyslog reprezintă un sistem rapid pentru procesarea jurnalelor.

este un utilitar pentru sistemele de operare Unix-like. Din punct de vedere tehnic, este un router de mesaje cu intrări și ieșiri încărcate dinamic și este extrem de configurabil.

se poate lua de intrare din mai multe surse de date, transforma, și trimite de ieșire la mai multe destinații. Cu Rsyslog, puteți livra 1 milion de mesaje pe secundă peste destinații locale.,

Rsyslog oferă, de asemenea, un agent Windows care lucrează foarte strâns cu agentul Linux Rsyslog. Este folosit pentru integrarea între cele două medii. Acest agent windows este utilizat pentru a transmite jurnalele de evenimente ale serviciului Windows și setup file monitor.

mai jos sunt alte caracteristici oferite de Rsyslog:

  • configurații flexibile
  • oferă capabilități multi-threading
  • protecție manipulare fișier jurnal folosind semnături jurnal și criptare.,
  • Suporta Mari platforme de Date
  • Oferă conținut bazate pe capabilități de filtrare

LOGalyze

LOGalyze a fost un produs comercial, care a fost recent făcut open-source. Deși nu am putut proiectul pe GitHub, ei fac un program de instalare Windows și tot codul sursă descărcabil.

dacă ai intenții cu o comunitate, poți găsi detalii despre o listă de corespondență aici.LOGalyze este o ofertă relativ flexibilă și puternică, care va funcționa frumos pentru implementările cu un singur sistem care încearcă să combine logarea din surse cunoscute precum Postfix, Apache etc.,, și produce ieșirea în format CSV, PDF, HTML sau formate similare. Da, Nu face totul, dar din moment ce a fost un produs comercial la un moment dat, o face destul de bine.

LogPacker

când vine vorba de alegerea unui instrument pentru job, am două criterii: trebuie să fie concentrat și trebuie să fie susținut de un model de afaceri activ. Problema cu software-ul open-source, în general, este că la câteva luni/ani pe drum, șansele de stagnare sau deces sunt mari. Nu există nici un număr de cât de multe instrumente de logare au fost lansate cu gusto, doar pentru a fi găsite acum în cimitirul GitHub.,

măsurată prin acest etalon, LogPacker este un favorit pentru mine.

după cum puteți spune din captura de ecran, LogPacker este vorba despre jurnalele, și nimic altceva. Împingerea lor este cu siguranță spre ofertele lor de cloud, dar sunteți mai mult decât binevenit să îl descărcați și să îl instalați pe serverele dvs. (pagina GitHub aici).Clustering și agregare sunt disponibile pentru cei care doresc să-l folosească la o scară non-trivială, și planuri de întreprindere sunt disponibile care doresc să lucreze cu API-ul sau au nevoie de implementări mai mari., O reîmprospătare minimalistă (concentrată, deși nu săracă în caracteristici) preia gestionarea înregistrărilor, în opinia mea!sunt sigur că există cei dintre noi care nu doresc ca toată ceremonia să fie asociată cu un sistem de logare” unificat”, „centralizat”. Afacerea lor vine de la servere unice și caută ceva rapid și eficient pentru vizionarea fișierelor lor de jurnal. Salută-l pe Logwatch.odată instalat, LogWatch poate scana jurnalele de sistem și poate crea un raport de tipul dorit., Este o bucată oarecum datată de software (citiți „de încredere”), deși, și a fost scris în Perl. Deci, veți avea nevoie de Perl 5.6+ pe serverul dvs. pentru a-l rula. Nu am capturi de ecran pentru a partaja ca este o linie de comandă pur, proces demonizat.dacă sunteți un drogat CLI și aveți o dragoste pentru modul vechi de școală de a face lucrurile, vă va plăcea Logwatch!

Syslog-ng

instrumentul Syslog-ng a fost dezvoltat ca o modalitate de a procesa fișierele de date Syslog (un protocol client-server stabilit pentru logarea sistemului) în timp real., De-a lungul timpului, însă, a ajuns să suporte alte formate de date: nestructurat, SQL și NoSQL. Cum funcționează protocolul Syslog sunt rezumate destul de bine în următoarea ilustrație.

syslog-ng este un grad de producție, de încredere de colectare jurnal și instrument de clasificare, care a fost scris în C și a fost un nume stabilit în industrie pentru mult timp. Cea mai bună parte este extensibilitatea sa, permițându-vă să scrieți pluginuri în C, Python, Java, Lua sau Perl.

lnav

scurt pentru (log Navigator), lnav este un instrument pur-terminal care funcționează pe o singură mașină, un singur director., Este pentru cei care au logare lor unificat într-un singur director sau doresc să filtreze și să afișeze jurnalele în timp real dintr-o singură sursă.

Dacă te-ai gândit motor lnav a fost nimic mai mult decât slăvit tailf |grep te-ai fi greșit. Există mai multe caracteristici care te vor face să te îndrăgostești de ea: vizualizare în serii de timp, imprimare drăguță (pentru JSON și alte formate), surse de jurnal cu coduri de culori, filtre puternice, capacitatea de a înțelege mai multe protocoale de logare și multe altele.,doar că, uneori, doriți un zero-hassle, zero setup, poate-strat de logare temporară, și lnav se potrivește proiectul de lege perfect!

concluzie

și acolo o ai!

a fost o listă greu de compilat, pentru a fi sincer, ca logare nu este la fel de popular ca, să zicem, de gestionare a conținutului, și toate mindshare pare să fi fost apucat de trei sau patru instrumente. Totuși, nevoile fiecăruia sunt diferite și am încercat să le acopăr pe larg.

de la instrumente stupide de linie de comandă, fără configurare la juggernauturi de date complete, totul este aici! Am pierdut ceva? Desigur, am făcut-o!

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *