Tuesday, July 18, 2017

Using JournalCtl and Creating SOS Report


               အခု Article ကတော့ #journalctl command ကိုအသုံးပြုပြီး system ရဲ့ log information တွေကို ဘယ်လိုကြည့်ရလဲဆိုတာရယ် နောက်တစ်ခုက ကိုယ့်ရဲ့ system က Redhat support license ရှိ တယ်ဆိုရင် redhat support ကို #sosreport create လုပ်ပြီး ကိုယ့်စက်ရဲ့ system state  ကိုပို့ပေးလို့ရအောင် ဘယ်လိုမျိုး #sosreport တစ်ခုတည်ဆောက်မလဲဆိုတာ ဖြစ်ပါတယ်၊၊ 

#Journalctl

           RHEL 7 မှာ logging လုပ်တဲ့ ပုံစံနှစ်ခုပါလာပါတယ် #journalctl ရယ် #rsyslogd ရယ်ပါ။ #journalctl default က log information တွေကို Memory ပေါ်မှာပဲသိမ်းထားပြီး  #rsyslogd ကတော့ logs တွေကို disk ပေါ်မှာသိမ်းထားတဲ့ပုံစံဖြစ်ပါတယ်။ ၄င်း logging type နှစ်ခု စလုံးကို integrate လုပ်ပြီး အသုံးပြုလည်းရပါတယ်။
          #journalctl ကိုအသုံးပြုတဲ့အခါ သူ့ဆီမှာပါတဲ့ options တွေနဲ့ log ကို filter လုပ်ကြည့်လို့ရပါတယ်။ ဥပမာ time range နဲ့ ကြည့်တာတို့ log priority နှင့်ကြည့်တာတို့ နောက် service unit တစ်ခု ထဲကို ပဲကြည့်ချင်တာလို့ စသည့်တို့ကို customize လုပ်ကြည့်လို့ရပါတယ်။


#journalctl -ef

             #journalctl -ef command ကိုအသုံးပြုလျှင် last log information ကိုရောက်သွားမှာဖြစ်ပါတယ်။ ထို့အပြင် "-f " က "follow" mode ဖြစ်တဲ့အတွက် update log တွေကိုပါတစ်ပြိုင်နက် updateလုပ်ပြီးပြသွားမှာဖြစ်ပါတယ်။ 



#journalctl -u

            #journalctl -u command ကတော့ service units တွေရဲ့ logs တွေကို သီးသန့်ကြည့်ချင်တယ်ဆိုရင်အသုံးပြုပါတယ်။ ပုံမှာ networking.service နှင့် ပတ်သတ်သမျှ logs တွေကို ထုတ်ပြထားတာဖြစ်ပါတယ်။




#journalctl -p

             #journalctl -p command ကျတော့ logs တွေရဲ့ priority အလိုက်ကြည့်ချင်တယ်ဆိုရင်အသုံးပြုပါတယ်။ Priority တွေက "Debug -> Emerg" အထိရှိပါတယ်။


#journalctl --disk-usage

           #journalctl --disk-usage ကျတော့ system storage ပေါ်မှာ journalctl က ဘယ်လောက်ထိ နေရာယူထားလဲ ဆိုတာကြည့်ချင်ရင်အသုံးပြုပါတယ်။

#journalctl -b 

           #journalctl -b  ကိုတော့ current boot အခြေနေကိုကြည့်ချင်ရင်သုံးပါတယ်။ Different number တွေလဲရှိပြီး #man journalctl မှာ details ပြောထားပါတယ်။ #journalctl -b -1 ဆိုရင်တော့ last system boot အခြေနေကိုပြမှာဖြစ်ပါတယ်။




#journalctl --since

               #journalctl --since command ကတော့ အချိန်အပို်င်းခြားလိုက်ကြည့်ချင်တယ်ဆိုရင်အသုံးပြုပါတယ်။




#journalctl _UID / _GID

              #journalctl _UID (or) _GID command ကတော့ User ID (or) Group ID နဲ့ logs တွေ ထုတ်ကြည့်ချင်တယ်ဆိုရင် အသုံးပြုပါတယ်။


Permanently Store the Journalctl log

             ပုံမှန်အားဖြင့် #journalctl command ကရလာသော logs တွေသည် system reboot ချလိုက်ရင် Memory မှာပဲ သိမ်းထားသောကြောင့် တစ်နည်းအားဖြင့် /run/log/journal သည် tmpfs မှာသိမ်းထားသောကြောင့်  permanent save မဖြစ်ပါ။ အကယ်၍ logs တွေကို သိမ်းထားချင်ရင် /var/log/journal ဆိုပြီး directory တစ်ခု တည်ဆောက်ပါ၇မယ် ပြီးရင် လိုအပ်တဲ့ permission တွေသတ်မှတ်ပြီး system reboot လုပ်ခြင်းဖြင့် logs တွေကို permanent သိမ်းထားလို့ရပါတယ်။


Creating SOS Report

                   အဓိက #sos report တည်ဆောက်ရတာကတော့ redhat ကို support case တင်ချင်ရင် သူတို့ဖက်ကနေ sos report ကို request လုပ်လာလျှင် ပေးလို့ရအောင် ပြုလုပ်ခြင်းဖြစ်ပါတယ်။ အဓိက အားဖြင့် sos report ထဲမှာ logs တွေ system information တွေ နောက် configuration files တွေ ကို ထုတ်ပေးခြင်းဖြစ်ပါတယ်။

#yum install sos

             အရင်ဆုံး #yum install sos ဖြင့် installation လုပ်ပါမယ်။ 




#sosreport -l | less
           #sosreport -l | less command ဖြင့် available plugins တွေကိုကြည့်လို့ရပါတယ်။ ပုံမှန်အားဖြင့် #sosreport ဆိုပြီး အသုံးပြုလျှင် ရပြီဖြစ်ပြီး Customize လုပ်ချင်ရင်တော့ available plugins ကိုအသုံးပြုလို့ပါတယ်။ #sosreport ပြီးသွားလျှင် /var/tmp/ directory မှာ compress file အနေနှင့် ရောက်နေမှာဖြစ်ပြီး extract လုပ်ကြည့်ရင်တော့ system ရဲ့ current state filesတွေကို တွေ့ရမှာဖြစ်ပါတယ်။








 * အခု article မှာ #journalctl နှင့် ပတ်သက်ပြီး အသုံးများတဲ့ command အချို့သာ ပြောထားခြင်းဖြစ်ပါတယ်  အသေးစိတ်ထပ်သိချင်ရင်တော့ #man ကိုအသုံးပြုပြီးကြည့်နိုင်ပါတယ်။ အလားတူ #sosreport မှာလည်း default မဟုတ်ပဲ modify ပြုလုပ်ပြီး အသုံးပြုလို့ရပါတယ်။ 









Share:

0 comments:

Post a Comment