Skip to content

GDP-ADMIN/elk-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ELK Demo

ELK Stack is combination of three great softwares that are Elasticsearch, Logstash, and Kibana that form end-to-end solution for logging infrastructure. Elasticsearch serves to index log data. Logstash serves to parse, transform, and transport log data. While Kibana serves to provide slick dashboard. ELK Stack is open source and state of the art of host your own logging solution. This demo repository is responsible to create demo architecture as follow:

-----------          ----------       ------------
| Gitlist |  --->   | Log File | ---> | Logstash |
-----------          ----------       ------------
                                           |
                                           v
                -----------       -----------------
                | Kibana | <--- | Elasticsearch | 
                -----------       -----------------

Quickstart

  1. Install Docker Engine
  2. Install Docker Compose
  3. Clone this repo, git clone https://github.com/GDP-ADMIN/elk-demo
  4. Start all containers, cd elk-demo && docker-compose up. (It takes sometime for this command to finish at first run)
  5. Visit Gitlist at http://localhost:8090/
  6. Visit Kibana at http://localhost:8080/ and use elk-demo as username and password

Demo Walkthrough

Gitlist is web based application to view and browser Git repository. This application is built with PHP. In this demo, gitlist will be deployed on top of Nginx and PHP5-FPM. Nginx log, created when accessing gitlist, will be read, transformed, and transported to Elasticsearch by Logstash. User will use Kibana to query and visualize log data they are interested to. Kibana is also serve as gateway to limit user interaction with Elasticsearch. You may be asked yourself why do we involve PHP application if we are only going to read nginx log. The answer is we need to calculate request time which is time nginx takes to process an incoming client request. Most of the time, nginx will report 0 request time when serving static file. Another reason is Nginx and FPM are current goto combination for web application.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published