infolightbulb_outlinenew_releasesreportwarning

Graylog ile Web Uygulama Loglarının İzlenmesi

Doruk Fişek

Graylog

graylog

Graylog Nedir?

  • Özgür log yönetim aracı

  • 2010’dan beri geliştiriliyor

  • Tek merkezi bir yerden tüm loglara erişime olanak tanıyor

  • Birçok kaynaktan (sunucu, aygıt, vs) logları yönetebiliyor

Graylog ile Logları

  • Toplayabiliriz

  • Arşivleyebiliriz

  • Arayabilir ve Bulabiliriz

  • İnceleyebiliriz

  • Korelasyon Kurabiliriz

Graylog’u Nerede Kullanırım Ki?

  • Çok sayıda sunucudaki web uygulama hatalarının detaylı incelenmesi

  • Web geliştiricilerine web üzerinden log erişimi vermek

  • Çok sayıda kullanıcının farklı yetkilere göre logları inceleyebilmesi

  • API verilen müşterilerin kullanımının incelenmesi

  • Uygulamanın log üretiminin gözetlenmesi ve uyarı üretilmesi

Graylog’un Yetenekleri

  • Kullanıcıların LDAP ile doğrulanması

  • Rol temelli erişim

  • Logların saklanma (retention) süresi belirlenebilmesi

  • Belirlenen kurallara göre uyarı üretme

  • REST API

  • Şifrelenmiş iletişim

Kullanım Örnekleri

  • Sisteme girme denemeleri

  • Çalışmayan zamanlanmış görevleri (cron)

  • DNS sorguları

  • Netflow logları

  • Windows event logları

  • Fırlatılan istisnalar

  • HTTP dönüş kodları

  • Engellenen paketler

  • IDS uyarıları

  • Hata mesajları

Kaynaklar

  • GELF

  • Syslog

  • Sidecar Collector

GELF de ne ki?

  • GELF = Graylog Extended Log Format

  • Syslog sistem kayıtları için kullanırken, GELF uygulamalar için ideal

  • Syslog gibi 1024 byte sınırı yok.

  • Birden fazla pakete bölünen tek bir upuzun log mesajı gönderilebiliyor.

  • Yapılandırılmış, özellikleri olan bir log gönderilebiliyor.

  • Hemen her dilde kitaplıkları var.

GELF - JSON

Örnek bir GELF Mesajı
{
  "version": "2.5",
  "host": "kiraz.ozguryazilim.com.tr",
  "short_message": "Kısa bir tanım",
  "full_message": "Detaylı döküm\n\nve bissürü hata satırı",
  "timestamp": 1385053862.3072,
  "level": 1,
  "_user_id": 9001,
  "_some_info": "hede",
  "_some_env_var": "hodo"
}

GELF - PHP

graylog gelf php

GELF - Java 1

graylog gelf log4j 1

GELF - Java 2

graylog gelf log4j 2

GELF - Ruby on Rails

graylog gelf rails

GELF - Python

graylog gelf python

GELF - Go

graylog gelf go

Graylog Arayüzü - 1

graylog ss 1

Graylog Arayüzü - 2

graylog ss 2

Graylog Arayüzü - 3

graylog ss 3

Graylog Arayüzü - 4

graylog ss 4

Graylog Arayüzü - 5

graylog ss 5

Graylog Arayüzü - 6

graylog ss 6

Graylog Arayüzü - 7

graylog ss 7

Graylog Arayüzü - 8

graylog ss 8

Graylog Arayüzü - 9

graylog ss 9

Kurulum

  • RHEL/CentOS, Debian/Ubuntu depoları

  • Hazır Docker imajı

  • Hazır sanal makine imajı (ova, qcow2)

  • Ansible Rolü

  • Puppet Modülü

Graylog’un Parçaları

  • Graylog sunucu servisi: Logların toplanması + web arayüzü

  • MongoDB: İstatistikler ve graflar

  • ElasticSearch: Tüm logların saklanması ve aranması

graylog arch small setup

Enterprise Sürüm?

  • 2016’dan beri var.

  • Arşivleme: Belirli bir süreden eski logların düz metin dosyalara aktarılması.

  • Denetim (Audit) Log’u: Sistemde değişiklik yapan tüm işlemlerin kaydı.

  • Graylog Inc.'ten doğrudan destek.

Sorular

  • ?