slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Monitoring aplikacji PHP Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework PowerPoint Presentation
Download Presentation
Monitoring aplikacji PHP Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework

Loading in 2 Seconds...

play fullscreen
1 / 47

Monitoring aplikacji PHP Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework - PowerPoint PPT Presentation


  • 132 Views
  • Uploaded on

Monitoring aplikacji PHP Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework. Bartłomiej Rozkrut Empathy – Internet Software House. Kilka słów o mnie…. www.empathy.pl. Wstęp. Po co monitorować aplikacje PHP?. … aby uniknąć niezdrowej frustracji użytkowników? ;-).

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Monitoring aplikacji PHP Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework' - summer-dean


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Monitoring aplikacji PHP

Zaawansowany, aktywny monitoring aplikacji PHP / Zend Framework

Bartłomiej Rozkrut

Empathy – Internet Software House

slide3

Wstęp

Po co monitorować aplikacje PHP?

… aby uniknąć niezdrowej frustracji użytkowników? ;-)

www.empathy.pl

slide4

Wstęp

www.empathy.pl

slide7

Monitoring infrastruktury

Popularne narzędzia do monitoringu

www.empathy.pl

slide8

Monitoring infrastruktury

Nagios - dashboard

www.empathy.pl

slide9

Monitoring infrastruktury

Nagios – mapa sieci

www.empathy.pl

slide10

Monitoring infrastruktury

Cacti

www.empathy.pl

slide11

Monitoring infrastruktury

Munin

www.empathy.pl

slide12

Monitoring infrastruktury

Zabbix

www.empathy.pl

slide14

Monitoring aplikacji PHP

Prosty monitoring aplikacji

www.empathy.pl

slide15

Monitoring aplikacji PHP

gdy pojawia się …

  • Nie możemy się dostać na przeciążony serwer (opóźnienie konsoli)
  • Problem z dostępem do logów na serwerze
  • Dostajemy tysiące powiadomień mailowych – pada nam poczta ;-)
  • Nie mamy informacji o stanie serwera i aplikacji z przed awarii!
  • Pozostaje nam zablokowanie ruchu na firewallu lub twardy reset…

www.empathy.pl

slide16

Monitoring aplikacji PHP

Czego potrzebujemy?

  • Niezależnego systemu monitoringu
  • Korelacji pomiędzy monitoringiem infrastruktury, a aplikacji
  • Historii danych oraz wystąpień problemów
  • Wizualizacji danych
  • Elastycznego powiadamiania względem skali problemów
  • Powiadamiania o ustąpieniu problemu
  • Możliwości monitorowania typowych ścieżek nawigacji/akcji
  • Możliwości wykorzystania obecnych mechanizmów logowania

www.empathy.pl

slide17

Monitoring aplikacji PHP

Komercyjne rozwiązania

www.empathy.pl

slide20

Monitoring aplikacji PHP

Rozwiązania Open Source

  • Brak kompleksowego, dedykowanego rozwiązania 
  • Projekty:
  • Monitorix for Zend Framework
  • Alternative PHP Monitor – peclapm
  • Pinba
  • XH GUI

www.empathy.pl

slide21

Monitoring aplikacji PHP

Możliwe rozwiązania?

  • Wykorzystanie oprogramowania do monitoringu infrastruktury
    • Duży wybór narzędzi Open Source
    • Konieczność kompleksowej konfiguracji
    • Konieczność wyszukania wtyczek monitorujących
    • Część narzędzi jest przygotowana do monitoringu aplikacji

www.empathy.pl

slide22

Monitoring aplikacji PHP

Co możemy monitorować?

www.empathy.pl

slide23

Monitoring aplikacji PHP

Co możemy monitorować?

www.empathy.pl

slide24

Monitoring aplikacji PHP

  • Platforma Zabbix
  • Zaawansowany system monitoringu Open Source
  • Aktualnie mniej popularny od Nagiosa
  • Szybki – Server oraz Agent napisany w C, GUI w PHP
  • Wieloplatformowy – Server/Agent na Linux / BSD / Unix / Mac OS X + Agent na Windows / Novell
  • Prosta instalacja, dostępne Live CD oraz maszyny wirtualne
  • Dostępne GUI na smartphone – iPhone (Mozaby), Android (Mobbix) + wersja WWW dla urządzeń mobilnych (MoZBX)

www.empathy.pl

slide25

Monitoring aplikacji PHP

  • Możliwości Zabbix
  • Połączenie możliwości Nagiosa i Cacti – domyślnie wizualizacja danych
  • Możliwość pracy w konfiguracji rozproszonej – master-slave
  • Monitoring WWW poprzez specjalny moduł
  • Moduł monitorowania logów
  • Możliwość uruchamiania własnych skryptów monitorujących
  • Zaawansowane uprawnienia użytkowników, dostęp przez API
  • Zaawansowane możliwości powiadamiania oraz eskalacji
  • Szablony, mapy, zaawansowane panele „dashboard”
  • Możliwość kalkulacji SLA

www.empathy.pl

slide26

Monitoring aplikacji PHP

Rozproszona konfiguracja Zabbix

www.empathy.pl

slide27

Monitoring aplikacji PHP

Konfiguracja monitoringu prostych ścieżek nawigacji

www.empathy.pl

slide29

Monitoring aplikacji PHP

Selenium Remote Control + Zabbix_Sender

www.empathy.pl

slide30

Monitoring aplikacji PHP

Konfiguracja kontraktu SLA

www.empathy.pl

slide31

Monitoring aplikacji PHP

Podgląd realizacji SLA

www.empathy.pl

slide35

Case Study – kontri.pl

Powiązania pomiędzy systemami

www.empathy.pl

slide36

Case Study – kontri.pl

Serwer multimediów

www.empathy.pl

slide37

Case Study – kontri.pl

  • Wyzwania
  • Bardzo duże skomplikowanie aplikacji, wielosklepowość, B2C+B2B
  • Konieczność inteligentnego cachowania
    • każdy użytkownik może widzieć inną cenę
    • pełen on-line na stanach magazynowych
    • rezerwacje koszykowe
    • zaawansowana wieloatrybutowość
  • Mnogość integracji
    • system ERP
    • serwer stanów magazynowych
    • serwer multimediów
    • integracje z systemami internetowymi, kurierami

www.empathy.pl

slide38

Case Study – kontri.pl

  • Co monitorować?
  • Serwery i łącza
  • Obciążenie systemu, uptime
  • Użycie dysków twardych (w tym także ramdrive)
  • Użycie pamięci operacyjnej / użycie swap
  • Ilość połączeń do SQL, ilość locków na bazie
  • Dostępność i wolne zasoby MemCached
  • Dostępność i czas odpowiedzi serwera WWW, SMTP, PostgreSQL
  • Status macierzy dyskowej
  • Wykorzystanie dostępnego pasma
  • Czasy odpowiedzi serwerów, routerów oraz kluczowych sieci

www.empathy.pl

slide39

Case Study – kontri.pl

  • Co monitorować?
  • Aplikacja
  • Status połączenia WebService z systemem ERP
  • Czas trwania importu danych XML
  • Możliwość zapisu danych Zend_Cache
  • Ilość jednocześnie przetwarzanych dynamicznych requestów
  • Długość kolejek (mailowych, synchronizacyjnych)
  • Wersje oprogramowania – PHP, PostgreSQL
  • Zmiana pliku konfiguracyjnego aplikacji (md5)

www.empathy.pl

slide40

Case Study – kontri.pl

  • Co monitorować?
  • Biznes
  • Ilość jednoczesnych użytkowników
  • Ilość rezerwacji koszykowych – czy próba nadużycia?
  • Czy w ostatniej godzinie było złożone X zamówień?
  • Poprawność rezerwacji towaru w serwerze stanów magazynowych
  • Czas realizacji zamówienia – zmiana statusów
  • Selenium
    • Rejestracja, logowanie użytkownika
    • Złożenie próbnego zamówienia
    • Rezerwacja koszykowa towaru

www.empathy.pl

slide41

Case Study – kontri.pl

Architektura monitoringu

www.empathy.pl

slide42

Case Study – kontri.pl

  • Podstawowe pojęcia Zabbix
  • Host– monitorowane urządzenie
  • Item– parametr z danymi, przechowuje dane
  • Application – grupa parametrów
  • Trigger– test parametru względem zadanych warunków
  • Action – podjęcie akcji na podstawie triggera(ów)
  • Graph – wykres (line, stacked, pie) – dostępny konfigurator

www.empathy.pl

slide43

Case Study – kontri.pl

  • Zabbix_Server – przetwarza i przechowuje dane
  • Zabbix_Agent – instalowany na monitorowanym systemie
  • Zabbix_Proxy – instalowany poza LAN
  • Zabbix_Agent
  • Parametry użytkownika
  • UserParameter=users.active,phpusers_active.php
  • Zabbix_Sender
  • Wysyłanie wyników do serwera centralnego
  • zabbix_sender -z ZABBIX_SERVER
  • -s MONITOROWANY_HOST -k nazwa_parametru -o 0

www.empathy.pl

slide44

Case Study – kontri.pl

Monitoring logów

  • Przyrostowy monitoring logów
  • Działa poprawnie z rotacją logów
  • Zend_Log
    • Monitorujemy wystąpienia błędów PHP – WARN, ERROR
    • Monitorujemy błędy logiczne

www.empathy.pl

slide45

Case Study – kontri.pl

Powiadamianie

  • Elastyczna konfiguracja
    • Zdefiniowanie osób odpowiedzialnych
    • Zdefiniowanie czasu pracy osób oraz metod komunikacji
  • Pełna historia problemu – kto podjął, komentarz, rozwiązanie
  • Zmiana trendów - bez powiadomienia, ew. Jabber
  • Problemy mogące poczekać – powiadomienie e-mail
  • Problemy krytyczne – SMS 24x7

www.empathy.pl

slide46

Pytania?

www.empathy.pl

slide47

Dziękuję

bartek@empathy.plwww.empathy.pl/facebook