Logging သည် Php application များကို developer များတီထွင်နိုင်သည့် PHP application များကိုတီထွင်ခြင်းနှင့်ပြ issues နာများကိုနေရာချထားခြင်းနှင့်စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေရန်ကူညီပေးသည့်အခါအလွန်အရေးကြီးသောလုပ်ငန်းတစ်ခုဖြစ်သည်။ PHP သည် PHP_UNAME () function သည် php_uname () function သည် 0 င်ရောက်သည့်စနစ်အသေးစိတ်ကိုမှတ်တမ်းတင်ခြင်းနှင့်စွမ်းဆောင်ရည်ခွဲခြမ်းစိတ်ဖြာမှုကိုဖြည့်ဆည်းပေးနိုင်သည့် log in system အသေးစိတ်ကိုမှတ်တမ်းတင်နိုင်သည့်အသုံးဝင်သောကိရိယာများဖြစ်သည်။ ဒီဆောင်းပါးက Php_uname () function ကိုဘယ်လိုသုံးရမလဲ။
PHP_Uname () သည် operating system နှင့်ပတ်သက်သောအသေးစိတ်အချက်အလက်များကိုရရှိသော PHP built-in function ဖြစ်သည်။ ဤလုပ်ဆောင်ချက်ကိုခေါ်ဆိုခြင်းအားဖြင့် operating system အမည်, ဗားရှင်း, အိမ်ရှင်အမည်နှင့်အခြားအချက်အလက်များကိုသင်ရယူနိုင်သည်။ အထူးသဖြင့် php_uname () သည် အောက်ပါအချက်အလက်များကိုပြန်ပို့နိုင်သည်။
operating system ၏အမည်နှင့်ဗားရှင်း။
အိမ်ရှင်အမည်။
System Architecture (ဥပမာ x86_64) ။
operating system ဗားရှင်းအသေးစိတ်အချက်အလက်များ။
ဥပမာအားဖြင့်, အောက်ပါကုဒ်ကိုကွပ်မျက်ခြင်းသည် operating system ၏အမည်, ဗားရှင်းနှင့် hostname ကိုပြန်ပို့လိမ့်မည်။
<?php
echo php_uname();
?>
output နှင့်ဆင်တူသည်:
Linux localhost 5.4.0-42-generic #46-Ubuntu SMP Wed Jul 22 18:32:43 UTC 2020 x86_64
Debug level logging ကိုအကောင်အထည်ဖော်ရန် PHPP_UNAME () operating system information ကိုဖမ်းယူရန်နှင့် log file ထဲသို့ထည့်နိုင်သည်။ ၎င်းသည်ပလက်ဖောင်းအမျိုးမျိုးသို့မဟုတ်ပတ် 0 န်းကျင်ကိုနေရာချထားသည့်အခါ application ပတ် 0 န်းကျင်ကိုနားလည်ရန်ဤအချက်သည်အလွန်အထောက်အကူပြုသည်။
Php_uname () Debug Loggs ကိုတည်ဆောက်ရန် Php_uname () ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည့်ရိုးရှင်းသော PHP ဥပမာတစ်ခုမှာ -
<?php
// ဖိုင်လမ်းကြောင်းကို log
$logFile = 'debug_log.txt';
// လက်ရှိနေ့စွဲနှင့်အချိန်ကိုရယူပါ
$dateTime = date('Y-m-d H:i:s');
// operating system ကိုသတင်းအချက်အလက်ရယူပါ
$systemInfo = php_uname();
// Debug မှတ်တမ်းမက်ဆေ့ခ်ျများတည်ဆောက်ပါ
$logMessage = "[{$dateTime}] DEBUG: Operating System Info - {$systemInfo}\n";
// ဖိုင်များကိုမှတ်တမ်းတင်ရန်မှတ်တမ်းများကိုရေးပါ
file_put_contents($logFile, $logMessage, FILE_APPEND);
?>
အထက်ဖော်ပြပါကုဒ်သည် operating system အချက်အလက်နှင့်လက်ရှိ timestamp ကို debug_log.txt ဖိုင်ကိုရေးသားလိမ့်မည်။ PHP_UNAME () function သည် operating system အသေးစိတ်ကိုပေးသည့်အခါတိုင်း debug တစ်ခုစီနှင့်အတူ log file သည်ကြီးထွားလာလိမ့်မည်။
Debug အဆင့် Logging အတွက်, operating system အချက်အလက်ကိုမှတ်တမ်းတင်ခြင်းအပြင်သစ်ခုတ်ခြင်းအကြောင်းအရာကိုလည်းသင်တိုးချဲ့နိုင်သည်။ ဥပမာအားဖြင့်, သင်အသုံးပြုသူ IP address ကဲ့သို့သောမှတ်တမ်းသို့သတင်းအချက်အလက်များကိုထပ်မံဖြည့်ဆည်းပေးနိုင်သည်။
<?php
// ဖိုင်လမ်းကြောင်းကို log
$logFile = 'debug_log.txt';
// လက်ရှိနေ့စွဲနှင့်အချိန်ကိုရယူပါ
$dateTime = date('Y-m-d H:i:s');
// operating system ကိုသတင်းအချက်အလက်ရယူပါ
$systemInfo = php_uname();
// client ကိုရယူပါ IP စကားပေြာဟော
$clientIp = $_SERVER['REMOTE_ADDR'];
// မေတ္တာရပ်ခံရယူပါ URL
$requestUrl = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
// Debug မှတ်တမ်းမက်ဆေ့ခ်ျများတည်ဆောက်ပါ
$logMessage = "[{$dateTime}] DEBUG: OS Info - {$systemInfo} | Client IP - {$clientIp} | Request URL - {$requestUrl}\n";
// ဖိုင်များကိုမှတ်တမ်းတင်ရန်မှတ်တမ်းများကိုရေးပါ
file_put_contents($logFile, $logMessage, FILE_APPEND);
?>
ဤကုဒ်သည်သတင်းအချက်အလက်များကိုမှတ်တမ်းတင်ထားသည်။
လက်ရှိ timestamp ။
operating system သတင်းအချက်အလက်။
Client IP လိပ်စာ။
(hostname and path အပါအ 0 င်တောင်းဆိုမှု၏အပြည့်အစုံ URL ။
ဤနည်းအားဖြင့်သင်သည်သင်၏လျှောက်လွှာတင်နေသည်ကိုထိုးထွင်းသိမြင်မှုကိုရရှိစေရန်ကူညီရန်သတင်းအချက်အလက်များကိုပိုမိုရှာဖွေရန်အချက်အလက်များကိုပိုမိုထုတ်ဖော်ပြောဆိုနိုင်သည်။
ပတ် 0 န်းကျင်မျိုးစုံဖြင့်ချထားသည့် application များတွင်ကွဲပြားခြားနားသော operating systems နှင့်ပတ်ဝန်းကျင်ဆိုင်ရာဖွဲ့စည်းမှုကိုကြုံတွေ့ရနိုင်သည်။ သင်သည် php_uname () ကို သုံးနိုင်သည်။ ပတ်ဝန်းကျင်တစ်ခုချင်းစီအတွက်သစ်ထုတ်လုပ်မှုကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။ ဥပမာအားဖြင့်, သင်သည်ဖွံ့ဖြိုးရေး, စမ်းသပ်ခြင်း, ထုတ်လုပ်ခြင်းနှင့်အခြားပတ်ဝန်းကျင်များတွင်မတူညီသော log အဆင့်ဆင့်သတ်မှတ်ပြီးကွဲပြားခြားနားသော debugging သတင်းအချက်အလက်များကိုပင်မှတ်တမ်းတင်နိုင်သည်။
ဤတွင်ပတ်ဝန်းကျင်ဆိုင်ရာဆုံးဖြတ်ချက်များ၏ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
<?php
// ဖိုင်လမ်းကြောင်းကို log
$logFile = 'debug_log.txt';
// လက်ရှိနေ့စွဲနှင့်အချိန်ကိုရယူပါ
$dateTime = date('Y-m-d H:i:s');
// operating system ကိုသတင်းအချက်အလက်ရယူပါ
$systemInfo = php_uname();
// လက်ရှိပတ်ဝန်းကျင်ကိုတရားသူကြီး
$environment = getenv('APP_ENV'); // ပတ်ဝန်းကျင် variable ကို set ကိုဖြစ်ပါတယ်ယူဆ APP_ENV
// ပတ် 0 န်းကျင်အရကွဲပြားခြားနားသောသစ်ထုတ်လုပ်ရေးအကြောင်းအရာများကိုသတ်မှတ်ပါ
if ($environment == 'production') {
$logMessage = "[{$dateTime}] PROD DEBUG: OS Info - {$systemInfo}\n";
} else {
$logMessage = "[{$dateTime}] DEV DEBUG: OS Info - {$systemInfo} | Full Debug Info\n";
}
// ဖိုင်များကိုမှတ်တမ်းတင်ရန်မှတ်တမ်းများကိုရေးပါ
file_put_contents($logFile, $logMessage, FILE_APPEND);
?>
Log Content သည်ပတ်ဝန်းကျင်ပေါ် မူတည်. (ဥပမာ ထုတ်လုပ်မှု သို့မဟုတ် ဖွံ့ဖြိုးတိုးတက်မှု ကဲ့သို့သော) တွင် မူတည်. ကွဲပြားနိုင်သည်။ ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင်, သငျသညျဖွံ့ဖြိုးရေးပတ် 0 န်းကျင်တွင်အသေးစိတ်အတိုချုပ်စနစ်သတင်းအချက်အလက်များကိုသာမှတ်တမ်းတင်နိုင်သည်။
php_uname () function ကိုအသုံးပြုခြင်းသည် operating system information system information ကိုမှတ်တမ်းတင်ရန်အထူးသဖြင့် Debugging Phase တွင်သစ်ထုတ်လုပ်ရေးအတွက်ကောင်းသောအလေ့အကျင့်တစ်ခုဖြစ်သည်။ ၎င်းသည် developer များစနစ်၏လုပ်ငန်းခွင်ပတ် 0 န်းကျင်ကိုနားလည်ရန်နှင့်ပြ problems နာများကိုရှာဖွေခြင်းနှင့်ကုဒ်များကိုပိုမိုကောင်းမွန်စေရန်အထောက်အပံ့ပေးသည်။ သင်၏မှတ်တမ်းများသို့အကြောင်းအရာပိုမိုများပြားသောသတင်းအချက်အလက်များကိုထပ်ထည့်ခြင်းအားဖြင့်သင်၏လျှောက်လွှာ၏အပြုအမူကိုပိုမိုထိရောက်စွာခွဲခြမ်းစိတ်ဖြာနိုင်ပြီးပြ issues နာများကိုပိုမိုမြန်ဆန်စွာဖြေရှင်းနိုင်သည်။
PHP Development တွင် Php_uname () function ကိုပိုမိုကောင်းမွန်စွာအသုံးချပြီးစွမ်းဆောင်ရည်အားကောင်းသော debug logging function ကိုတည်ဆောက်ရန်ဤဆောင်းပါးသည်ဤဆောင်းပါးသည်ကူညီနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။