SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
Agregacja i analiza
logów
Agenda
● Problemy z logami
● Jak to robimy w Divante - ELK Stack
o Elasticsearch
o Logstash
o Kibana
o Architektura
o Dodatko e arzędzia
● Podsumowanie
● Pytania
Jakie problemy z logami
oże y apotkać?
Problemy logów
Brak spójnego formatu logów.
http://blog.tersmitten.nl/how-to-colorize-your-log-files-with-ccze.html
Problemy logów
• cat
• grep
• awk
• sed
• tail
• yraże ia regular e
Bardzo utrud io a a aliza logów, wydłużo y czas reakcji.
Przeszukiwanie, analiza logów – old school
Problemy logów
O iąże ie ser era, ydaj ość aplika ji
• Sy hro i z y, lokują y zapis do pliku
• Opera je IO o iążają e ser er
• Ograniczona liczba i-node w systemie plików
• Relatywnie wolny zapis
• Sprząta ie logó
http://wiki.processmaker.com/index.php/Advanced_Performance_Monitor_Dashboards
Problemy logów
Złożo a ar hitektura - problem zapisu i odczytu
• Zapis/od zyt z ser eró za load ala er’e
- Zastosowanie NFS?
https://www.digitalocean.com/community/tutorials/5-common-server-setups-for-your-web-application
Problemy logów
Ciągły o itori g
• Bardzo utrud io e iągłe o itoro a ie szystki h para etró aplika ji
• Wymagana wiedza techniczna
Jak to robimy w Divante?
ELK Stack
Czym jest ELK Stack?
ELK Sta k to zesta arzędzi:
ELK zape ia s e tralizo a y syste zarządza ia
loga i rozproszo y h, ysoko dostęp y h syste a h.
E jak ElasticSearch
elasticsearch
● + Baza danych NoSQL
● + Wyszuki a ie peł oteksto e
● + REST Api (json)
● + Bazuje na Apache Lucene
● + Replikacja, snapshots
● + Dostęp a ofi jal a i lioteka dla PHP i Ja aS ript
● - Brak transakcji
● Wymagania: Java
E jak ElasticSearch
Instalacja i konfiguracja
● Instalacja Java Oracle
o sudo apt-get install python-software-properties
o sudo add-apt-repository -y ppa:webupd8team/java
o sudo apt-get update
o sudo apt-get -y install oracle-java8-installer
● Instalacja ElasticSearch
o wget i unzip najnowszej paczki do pobrania z strony
https://www.elastic.co/downloads
o Wykonanie konfiguracji w pliku elasticsearch.yml
● Urucho ie ie ElasticSearch’a:
o ./bin/elasticsearch -d
L jak Logstash
● Agrega ja logó z ielu źródeł
● Normalizacja (parsowanie, filtrowanie) pobranych danych
● Wysła ie z or alizo a y h da y h do roz aity h źródeł
● Wymagania : Java
INPUT
FILTER
PARSE
OUTPUT
L jak Logstash
Input: (41)
● elasticsearch, imap
● rabbitmq, redis
● sqlite, syslog
● tcp, twitter
● varnishlog, websocket
Output: (55)
● elasticsearch, mongodb,
● redis, email, file, csv
● hipchat, http
● jira, redmine, rabbitmq
● tcp, websocket, zabbix
Wię ej a: http://logstash.net/docs/1.4.2/
INPUT
FILTER
PARSE
OUTPUT
L jak Logstash
Filtry: (50)
● checksum
● csv, date
● elasticsearch
● fingerprint
● geoip, grep, grok
● json, json_encode
● ruby, split
● translate
● urldecode
● useragent, xml
Wię ej a: http://logstash.net/docs/1.4.2/
INPUT
FILTER
PARSE
OUTPUT
L jak Logstash
Filtr GROK
● Analizowanie i parsowanie dowolnego tekstu
● Grok jest najlepszym sposobem na przetworzenie najbardziej
nieustrukturyzowanych danych
● Po ad zor ó z ożli oś ią t orze ia łas y h
[ERROR] - 2015/13/03-11:01:31 - 192.168.0.1 - Some error message
[%{GREEDYDATA:message}] - %{DATESTAMP} - %{IP:client} - %{GREEDYDATA:message}
L jak Logstash
Instalacja i konfiguracja
● Instalacja Java Oracle i instalacja Logstash:
o wget i unzip najnowszej paczki do pobrania z strony
https://www.elastic.co/downloads
● Konfiguracja:
input {
file {
type => "syslog"
path => ["/var/log/auth.log", "/var/log/syslog"]
}}
● Urucho ie ie Logstash’a:
o ./bin/logstash
K jak Kibana
● Wizualizacja danych w formie aplikacji webowej
● Wyszukiwanie, filtrowanie, analizowanie danych
● Intuicyjny interfejs, nie tylko dla programistów
● Błyska i z e t orze ie i udostęp ia ie ielu kokpitó
● Łat e dostoso a ie dash oard’u - JSON
● Eksportowanie wyników
K jak Kibana
https://www.elastic.co/blog/kibana-4-literally
K jak Kibana
Wykres słupko y:
https://www.elastic.co/blog/kibana-4-beta-2-get-now
K jak Kibana
Wykres koło y:
https://www.elastic.co/blog/kibana-4-for-investigating-pacs-super-pacs-and-your-neighbors
K jak Kibana
Histogram:
http://blog.qbox.io/kibana-4-and-elasticsearch-v-1-4-4-and-1-3-9
K jak Kibana
Tabela danych:
https://www.elastic.co/blog/kibana-4-for-investigating-pacs-super-pacs-and-your-neighbors
K jak Kibana
Geolokalizacja:
https://www.elastic.co/blog/kibana-4-literally
K jak Kibana
Wykres po iązań:
http://demo.packetbeat.com/#/dashboard/elasticsearch/Packetbeat%2520Statistics
K jak Kibana
Instalacja i konfiguracja
● Instalacja Kibany:
o wget i unzip najnowszej paczki do pobrania z strony
https://www.elastic.co/downloads
● Konfiguracja:
o Ki a a jest sko figuro a a a do yśl y port Elasti sea h’a 9
● Uruchomienie Kibany:
o ./bin/kibana
● Start w przeglądarce:
o http://YOURDOMAIN.com:5601
ELK Stack
ARCHITEKTURA
ELK - Architektura
Podstawowa:
Jaki jest potencjalny problem?
ElasticSearch REST
API
ELK - Architektura
Wydaj ość + skalo al ość
Ko figura ja z ykorzysta ie Redis’a
Dostawcy
Indekser
ELK - Architektura
Wydaj ość + skalo al ość
Ko figura ja z ykorzysta ie e ha iz u kolejkują ego
Indekser
Dostawcy
Dodatkowe
NARZĘDZIA
Narzędzia
ElasticSearch Plugin: Head
Pa el o itoro a ia i zarządza ia Elasti Sear h’e
Instalacja:
● elasticsearch/bin/plugin -install mobz/elasticsearch-head
● http://localhost:9200/_plugin/head/
Narzędzia
ElasticSearch Plugin: Morfologik
Plugi poz alają y ykorzystać polskie z aki
w zapytaniach do ElasticSearch.
Instalacja:
● cd elasticsearch
● bin/plugin -install com.github.chytreg/elasticsearch-analysis-
morfologik/2.3.1
Narzędzia
Marvel
Aplika ja do iągłego o itori gu Elasti Sear h’a
http://blog.qbox.io/elasticsearch-marvel-released
ELK Stack
Podsumowanie
● Ujednolicona struktura logów
● Scentralizowany system logów
● Dash orad spo agają y yszuki a ie i a alizo a ie
● Zape ie ie iągłego o itori gu
● Szybszy czas reakcji
● Sz zęśli y Klie t otrzy a kolej e ykresy :)
VS
http://blog.rootshell.be/tag/unix/
http://imgbuddy.com/kibana-demo.asp
Dziękuję!
Bartosz Picho
sales@divante.co
divante.co/blog

Más contenido relacionado

Similar a Agregacja i analiza logów

Rails tobak2005
Rails tobak2005Rails tobak2005
Rails tobak2005Tomasz Bak
 
Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Natalia Stanko
 
Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Filip Rembialkowski
 
Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Divante
 
Pocałunek śmierci
Pocałunek śmierciPocałunek śmierci
Pocałunek śmierciDivante
 
Word up warszawa 2015
Word up warszawa 2015Word up warszawa 2015
Word up warszawa 2015Tomasz Dziuda
 
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...The Software House
 
WordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceWordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceDawid Urbański
 
OSGi, deklaratywnie
OSGi, deklaratywnieOSGi, deklaratywnie
OSGi, deklaratywnieCode-House
 
Extjs & netzke
Extjs & netzkeExtjs & netzke
Extjs & netzkeGaldoMedia
 
Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Semihalf
 
Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Wojciech Szymański
 
Programowanie Równolegle - Parallel Extensions
Programowanie Równolegle - Parallel ExtensionsProgramowanie Równolegle - Parallel Extensions
Programowanie Równolegle - Parallel ExtensionsWojciech Grześkowiak
 
20060416 Azure Boot Camp 2016- Azure Data Lake Storage and Analytics
20060416   Azure Boot Camp 2016- Azure Data Lake Storage and Analytics20060416   Azure Boot Camp 2016- Azure Data Lake Storage and Analytics
20060416 Azure Boot Camp 2016- Azure Data Lake Storage and AnalyticsŁukasz Grala
 

Similar a Agregacja i analiza logów (20)

Rails tobak2005
Rails tobak2005Rails tobak2005
Rails tobak2005
 
EXADATA - Infrastruktura Przyszłości
EXADATA - Infrastruktura PrzyszłościEXADATA - Infrastruktura Przyszłości
EXADATA - Infrastruktura Przyszłości
 
Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010
 
Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014
 
Monitoring sieci
Monitoring sieciMonitoring sieci
Monitoring sieci
 
Iron Python I Dlr
Iron Python I DlrIron Python I Dlr
Iron Python I Dlr
 
Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13
 
Pocałunek śmierci
Pocałunek śmierciPocałunek śmierci
Pocałunek śmierci
 
Jaki framework wybrać
Jaki framework wybraćJaki framework wybrać
Jaki framework wybrać
 
Scala
ScalaScala
Scala
 
Word up warszawa 2015
Word up warszawa 2015Word up warszawa 2015
Word up warszawa 2015
 
OpenEmbedded
OpenEmbeddedOpenEmbedded
OpenEmbedded
 
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
 
WordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceWordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyce
 
OSGi, deklaratywnie
OSGi, deklaratywnieOSGi, deklaratywnie
OSGi, deklaratywnie
 
Extjs & netzke
Extjs & netzkeExtjs & netzke
Extjs & netzke
 
Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.
 
Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.Hierarchia pamięci w systemach komputerowych.
Hierarchia pamięci w systemach komputerowych.
 
Programowanie Równolegle - Parallel Extensions
Programowanie Równolegle - Parallel ExtensionsProgramowanie Równolegle - Parallel Extensions
Programowanie Równolegle - Parallel Extensions
 
20060416 Azure Boot Camp 2016- Azure Data Lake Storage and Analytics
20060416   Azure Boot Camp 2016- Azure Data Lake Storage and Analytics20060416   Azure Boot Camp 2016- Azure Data Lake Storage and Analytics
20060416 Azure Boot Camp 2016- Azure Data Lake Storage and Analytics
 

Más de Divante

How to spin off the product from the agency
How to spin off the product from the agencyHow to spin off the product from the agency
How to spin off the product from the agencyDivante
 
I love-marketing - Technologie w ktore warto inwestowac w eCommerce
I love-marketing - Technologie w ktore warto inwestowac w eCommerceI love-marketing - Technologie w ktore warto inwestowac w eCommerce
I love-marketing - Technologie w ktore warto inwestowac w eCommerceDivante
 
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce Divante
 
Sprzedaż rozwiązuje wszystkie problemy
Sprzedaż rozwiązuje wszystkie problemySprzedaż rozwiązuje wszystkie problemy
Sprzedaż rozwiązuje wszystkie problemyDivante
 
Wejście do Omnichannel - 5 czynników sukcesu
Wejście do Omnichannel - 5 czynników sukcesuWejście do Omnichannel - 5 czynników sukcesu
Wejście do Omnichannel - 5 czynników sukcesuDivante
 
Wysoka skalowalność systemu e-commerce na przykładzie magento
Wysoka skalowalność systemu e-commerce na przykładzie magentoWysoka skalowalność systemu e-commerce na przykładzie magento
Wysoka skalowalność systemu e-commerce na przykładzie magentoDivante
 
Wzorce projektowe w Magento
Wzorce projektowe w MagentoWzorce projektowe w Magento
Wzorce projektowe w MagentoDivante
 
Code review
Code reviewCode review
Code reviewDivante
 
CDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteCDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteDivante
 
Kongres eHandlu - Przyszłość e-Commerce
Kongres eHandlu - Przyszłość e-CommerceKongres eHandlu - Przyszłość e-Commerce
Kongres eHandlu - Przyszłość e-CommerceDivante
 
Jak mierzyć e-Commerce - Big Data w e-Commerce
Jak mierzyć e-Commerce - Big Data w e-CommerceJak mierzyć e-Commerce - Big Data w e-Commerce
Jak mierzyć e-Commerce - Big Data w e-CommerceDivante
 
Sprzeda zagraniczna case study funmedia-bart-omiej postek
Sprzeda  zagraniczna case study funmedia-bart-omiej postekSprzeda  zagraniczna case study funmedia-bart-omiej postek
Sprzeda zagraniczna case study funmedia-bart-omiej postekDivante
 
Sprzeda zagraniczna case study divante-tomasz karwatka
Sprzeda  zagraniczna case study divante-tomasz karwatkaSprzeda  zagraniczna case study divante-tomasz karwatka
Sprzeda zagraniczna case study divante-tomasz karwatkaDivante
 
Sprzeda saa s via facebook-catvertiser_mi-osz belter
Sprzeda  saa s via facebook-catvertiser_mi-osz belterSprzeda  saa s via facebook-catvertiser_mi-osz belter
Sprzeda saa s via facebook-catvertiser_mi-osz belterDivante
 
Saa s sales funnel brand24_mick griffin
Saa s sales funnel brand24_mick griffinSaa s sales funnel brand24_mick griffin
Saa s sales funnel brand24_mick griffinDivante
 
Predictable revenue w praktyce usability tools_jakub królikowski
Predictable revenue w praktyce usability tools_jakub królikowskiPredictable revenue w praktyce usability tools_jakub królikowski
Predictable revenue w praktyce usability tools_jakub królikowskiDivante
 
Jak eskportuj polskie spó-ki technol right-hello_bartosz majewski
Jak eskportuj  polskie spó-ki technol right-hello_bartosz majewskiJak eskportuj  polskie spó-ki technol right-hello_bartosz majewski
Jak eskportuj polskie spó-ki technol right-hello_bartosz majewskiDivante
 
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...Divante
 
Quick Wins w e-Commerce
Quick Wins w e-CommerceQuick Wins w e-Commerce
Quick Wins w e-CommerceDivante
 
Generowanie sprzedaży międzynarodowej w Divante - case study
Generowanie sprzedaży międzynarodowej w Divante - case studyGenerowanie sprzedaży międzynarodowej w Divante - case study
Generowanie sprzedaży międzynarodowej w Divante - case studyDivante
 

Más de Divante (20)

How to spin off the product from the agency
How to spin off the product from the agencyHow to spin off the product from the agency
How to spin off the product from the agency
 
I love-marketing - Technologie w ktore warto inwestowac w eCommerce
I love-marketing - Technologie w ktore warto inwestowac w eCommerceI love-marketing - Technologie w ktore warto inwestowac w eCommerce
I love-marketing - Technologie w ktore warto inwestowac w eCommerce
 
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce
Zaskakujące czynniki porażek we wdrażaniu Omnichanel i eCommerce
 
Sprzedaż rozwiązuje wszystkie problemy
Sprzedaż rozwiązuje wszystkie problemySprzedaż rozwiązuje wszystkie problemy
Sprzedaż rozwiązuje wszystkie problemy
 
Wejście do Omnichannel - 5 czynników sukcesu
Wejście do Omnichannel - 5 czynników sukcesuWejście do Omnichannel - 5 czynników sukcesu
Wejście do Omnichannel - 5 czynników sukcesu
 
Wysoka skalowalność systemu e-commerce na przykładzie magento
Wysoka skalowalność systemu e-commerce na przykładzie magentoWysoka skalowalność systemu e-commerce na przykładzie magento
Wysoka skalowalność systemu e-commerce na przykładzie magento
 
Wzorce projektowe w Magento
Wzorce projektowe w MagentoWzorce projektowe w Magento
Wzorce projektowe w Magento
 
Code review
Code reviewCode review
Code review
 
CDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteCDP.pl - tech case study by Divante
CDP.pl - tech case study by Divante
 
Kongres eHandlu - Przyszłość e-Commerce
Kongres eHandlu - Przyszłość e-CommerceKongres eHandlu - Przyszłość e-Commerce
Kongres eHandlu - Przyszłość e-Commerce
 
Jak mierzyć e-Commerce - Big Data w e-Commerce
Jak mierzyć e-Commerce - Big Data w e-CommerceJak mierzyć e-Commerce - Big Data w e-Commerce
Jak mierzyć e-Commerce - Big Data w e-Commerce
 
Sprzeda zagraniczna case study funmedia-bart-omiej postek
Sprzeda  zagraniczna case study funmedia-bart-omiej postekSprzeda  zagraniczna case study funmedia-bart-omiej postek
Sprzeda zagraniczna case study funmedia-bart-omiej postek
 
Sprzeda zagraniczna case study divante-tomasz karwatka
Sprzeda  zagraniczna case study divante-tomasz karwatkaSprzeda  zagraniczna case study divante-tomasz karwatka
Sprzeda zagraniczna case study divante-tomasz karwatka
 
Sprzeda saa s via facebook-catvertiser_mi-osz belter
Sprzeda  saa s via facebook-catvertiser_mi-osz belterSprzeda  saa s via facebook-catvertiser_mi-osz belter
Sprzeda saa s via facebook-catvertiser_mi-osz belter
 
Saa s sales funnel brand24_mick griffin
Saa s sales funnel brand24_mick griffinSaa s sales funnel brand24_mick griffin
Saa s sales funnel brand24_mick griffin
 
Predictable revenue w praktyce usability tools_jakub królikowski
Predictable revenue w praktyce usability tools_jakub królikowskiPredictable revenue w praktyce usability tools_jakub królikowski
Predictable revenue w praktyce usability tools_jakub królikowski
 
Jak eskportuj polskie spó-ki technol right-hello_bartosz majewski
Jak eskportuj  polskie spó-ki technol right-hello_bartosz majewskiJak eskportuj  polskie spó-ki technol right-hello_bartosz majewski
Jak eskportuj polskie spó-ki technol right-hello_bartosz majewski
 
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...
10 b -dów przy wprowadzaniu e commerce na rynki zagr-goralewicz.co_bartosz gó...
 
Quick Wins w e-Commerce
Quick Wins w e-CommerceQuick Wins w e-Commerce
Quick Wins w e-Commerce
 
Generowanie sprzedaży międzynarodowej w Divante - case study
Generowanie sprzedaży międzynarodowej w Divante - case studyGenerowanie sprzedaży międzynarodowej w Divante - case study
Generowanie sprzedaży międzynarodowej w Divante - case study
 

Agregacja i analiza logów

  • 2. Agenda ● Problemy z logami ● Jak to robimy w Divante - ELK Stack o Elasticsearch o Logstash o Kibana o Architektura o Dodatko e arzędzia ● Podsumowanie ● Pytania
  • 3. Jakie problemy z logami oże y apotkać?
  • 4. Problemy logów Brak spójnego formatu logów. http://blog.tersmitten.nl/how-to-colorize-your-log-files-with-ccze.html
  • 5. Problemy logów • cat • grep • awk • sed • tail • yraże ia regular e Bardzo utrud io a a aliza logów, wydłużo y czas reakcji. Przeszukiwanie, analiza logów – old school
  • 6. Problemy logów O iąże ie ser era, ydaj ość aplika ji • Sy hro i z y, lokują y zapis do pliku • Opera je IO o iążają e ser er • Ograniczona liczba i-node w systemie plików • Relatywnie wolny zapis • Sprząta ie logó http://wiki.processmaker.com/index.php/Advanced_Performance_Monitor_Dashboards
  • 7. Problemy logów Złożo a ar hitektura - problem zapisu i odczytu • Zapis/od zyt z ser eró za load ala er’e - Zastosowanie NFS? https://www.digitalocean.com/community/tutorials/5-common-server-setups-for-your-web-application
  • 8. Problemy logów Ciągły o itori g • Bardzo utrud io e iągłe o itoro a ie szystki h para etró aplika ji • Wymagana wiedza techniczna
  • 9. Jak to robimy w Divante? ELK Stack
  • 10. Czym jest ELK Stack? ELK Sta k to zesta arzędzi: ELK zape ia s e tralizo a y syste zarządza ia loga i rozproszo y h, ysoko dostęp y h syste a h.
  • 11. E jak ElasticSearch elasticsearch ● + Baza danych NoSQL ● + Wyszuki a ie peł oteksto e ● + REST Api (json) ● + Bazuje na Apache Lucene ● + Replikacja, snapshots ● + Dostęp a ofi jal a i lioteka dla PHP i Ja aS ript ● - Brak transakcji ● Wymagania: Java
  • 12. E jak ElasticSearch Instalacja i konfiguracja ● Instalacja Java Oracle o sudo apt-get install python-software-properties o sudo add-apt-repository -y ppa:webupd8team/java o sudo apt-get update o sudo apt-get -y install oracle-java8-installer ● Instalacja ElasticSearch o wget i unzip najnowszej paczki do pobrania z strony https://www.elastic.co/downloads o Wykonanie konfiguracji w pliku elasticsearch.yml ● Urucho ie ie ElasticSearch’a: o ./bin/elasticsearch -d
  • 13. L jak Logstash ● Agrega ja logó z ielu źródeł ● Normalizacja (parsowanie, filtrowanie) pobranych danych ● Wysła ie z or alizo a y h da y h do roz aity h źródeł ● Wymagania : Java INPUT FILTER PARSE OUTPUT
  • 14. L jak Logstash Input: (41) ● elasticsearch, imap ● rabbitmq, redis ● sqlite, syslog ● tcp, twitter ● varnishlog, websocket Output: (55) ● elasticsearch, mongodb, ● redis, email, file, csv ● hipchat, http ● jira, redmine, rabbitmq ● tcp, websocket, zabbix Wię ej a: http://logstash.net/docs/1.4.2/ INPUT FILTER PARSE OUTPUT
  • 15. L jak Logstash Filtry: (50) ● checksum ● csv, date ● elasticsearch ● fingerprint ● geoip, grep, grok ● json, json_encode ● ruby, split ● translate ● urldecode ● useragent, xml Wię ej a: http://logstash.net/docs/1.4.2/ INPUT FILTER PARSE OUTPUT
  • 16. L jak Logstash Filtr GROK ● Analizowanie i parsowanie dowolnego tekstu ● Grok jest najlepszym sposobem na przetworzenie najbardziej nieustrukturyzowanych danych ● Po ad zor ó z ożli oś ią t orze ia łas y h [ERROR] - 2015/13/03-11:01:31 - 192.168.0.1 - Some error message [%{GREEDYDATA:message}] - %{DATESTAMP} - %{IP:client} - %{GREEDYDATA:message}
  • 17. L jak Logstash Instalacja i konfiguracja ● Instalacja Java Oracle i instalacja Logstash: o wget i unzip najnowszej paczki do pobrania z strony https://www.elastic.co/downloads ● Konfiguracja: input { file { type => "syslog" path => ["/var/log/auth.log", "/var/log/syslog"] }} ● Urucho ie ie Logstash’a: o ./bin/logstash
  • 18. K jak Kibana ● Wizualizacja danych w formie aplikacji webowej ● Wyszukiwanie, filtrowanie, analizowanie danych ● Intuicyjny interfejs, nie tylko dla programistów ● Błyska i z e t orze ie i udostęp ia ie ielu kokpitó ● Łat e dostoso a ie dash oard’u - JSON ● Eksportowanie wyników
  • 20. K jak Kibana Wykres słupko y: https://www.elastic.co/blog/kibana-4-beta-2-get-now
  • 21. K jak Kibana Wykres koło y: https://www.elastic.co/blog/kibana-4-for-investigating-pacs-super-pacs-and-your-neighbors
  • 23. K jak Kibana Tabela danych: https://www.elastic.co/blog/kibana-4-for-investigating-pacs-super-pacs-and-your-neighbors
  • 25. K jak Kibana Wykres po iązań: http://demo.packetbeat.com/#/dashboard/elasticsearch/Packetbeat%2520Statistics
  • 26. K jak Kibana Instalacja i konfiguracja ● Instalacja Kibany: o wget i unzip najnowszej paczki do pobrania z strony https://www.elastic.co/downloads ● Konfiguracja: o Ki a a jest sko figuro a a a do yśl y port Elasti sea h’a 9 ● Uruchomienie Kibany: o ./bin/kibana ● Start w przeglądarce: o http://YOURDOMAIN.com:5601
  • 28. ELK - Architektura Podstawowa: Jaki jest potencjalny problem? ElasticSearch REST API
  • 29. ELK - Architektura Wydaj ość + skalo al ość Ko figura ja z ykorzysta ie Redis’a Dostawcy Indekser
  • 30. ELK - Architektura Wydaj ość + skalo al ość Ko figura ja z ykorzysta ie e ha iz u kolejkują ego Indekser Dostawcy
  • 32. Narzędzia ElasticSearch Plugin: Head Pa el o itoro a ia i zarządza ia Elasti Sear h’e Instalacja: ● elasticsearch/bin/plugin -install mobz/elasticsearch-head ● http://localhost:9200/_plugin/head/
  • 33. Narzędzia ElasticSearch Plugin: Morfologik Plugi poz alają y ykorzystać polskie z aki w zapytaniach do ElasticSearch. Instalacja: ● cd elasticsearch ● bin/plugin -install com.github.chytreg/elasticsearch-analysis- morfologik/2.3.1
  • 34. Narzędzia Marvel Aplika ja do iągłego o itori gu Elasti Sear h’a http://blog.qbox.io/elasticsearch-marvel-released
  • 35. ELK Stack Podsumowanie ● Ujednolicona struktura logów ● Scentralizowany system logów ● Dash orad spo agają y yszuki a ie i a alizo a ie ● Zape ie ie iągłego o itori gu ● Szybszy czas reakcji ● Sz zęśli y Klie t otrzy a kolej e ykresy :)