Logstash and Laravel (Part 2)

Part 1 ဖတ်ရန်

Logstash ကို setup လုပ်ပြီးပြီဆိုရင် laravel ဘက်မှာ config အတွက် စပါမယ်။ ပထမဆုံး https://github.com/saturngod/logstash-laravel က နေ download ချပြီး app/Logging folder ကို သင့် project ရဲ့ app အောက်မှာ သွားထည့်လိုက်ပါ။ အဲဒီ အခါမှာ သင့် project ထဲမှာ

  • app
    • Logging
      • LogstashHandler.php
      • LogstashLogger.php

ဆိုပြီး ရှိနေပါမယ်။

conifg/logging.php မှာ

'logstash' => [
            'driver' => 'custom',
            'via' => App\Logging\LogstashLogger::class,
            'channel' => 'logstash_sample',
            'with' => [
                'address' => "192.168.31.249",
                'port' => "5428"
            ]
],

ကို ဖြည့်ပါ။

address က logstash server IP ပါ။
port ကတော့ logstash config မှာ tcp နေရာမှာ ကြေငြာထားသည့် port ပါ။
channel ကတော့ logstash မှာ မြင်ရမယ့် tag ပါ။

ပြီးရင်

\Log::channel('logstash')->info("HELLO");

ဆိုပြီး ခေါ်လို့ရပါပြီ။

ပြီးလျှင် Logstash server ကို ဖွင့်ပါ။

Menu အောက်က Stack management ကို သွားပါ။


Index Patterns ကို ဖွင့်ပါ။ Create Index Pattern ကို နှိပ်ပါ။


laravel-* ထည့်ပြီး next step ကို နှိပ်ပါ။ Timefield မှာ @timestamp ကို ရွေးပြီး Create လုပ်ပါ။

Menu အောက်က Analytics အောက်က Discover ကို သွားပါ။ laravel-* ကိုရွေးပါ။

message နဲ့ tag ကို ညာဘက် က + လေး နှိပ်လိုက်ပါ။


log ထဲမှာ message နဲ့ tag ပဲ ပေါ်ပါတော့မယ်။


အပေါ်က search မှာ လိုချင်တာတွေကို filter လုပ်ပြီး ရှာလို့ရပါတယ်။ ဥပမာ

tag:just and message:life*

ဆိုရင် tag က just ဖြစ်ပြီး message က life ပါတာ ဖြစ်ပါလိမ့်မယ်။ elastic search ကို သုံးထားလို့ log ရှာရတာ မြန်ပြီး ပေါ့ပါတယ်။