လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MySQLI :: Periodic log collection အတွက်အလိုအလျောက် scripts အတွက် debug ကိုပေါင်းစပ်ပါ

MySQLI :: Periodic log collection အတွက်အလိုအလျောက် scripts အတွက် debug ကိုပေါင်းစပ်ပါ

M66 2025-06-01

PHP Development တွင် MySQLI :: Debug (Debug) သည် developers များကသတိမမူမိသော debugging tool တစ်ခုဖြစ်သည်။ MySQLI extensions အတွက် Debug Logs ကို log လုပ်ရန်ခွင့်ပြုထားပြီးဒေတာဘေ့စ်ဆက်သွယ်မှုများ, MySQLI :: Debug () debug () debug ကိုပေါင်းစပ်ရန်ဤဆောင်းပါးသည်နက်နဲပိုင်းတွင်လေ့လာလိမ့်မည်။

1 ။ MySQLI :: Debug (Debug) သို့မိတ်ဆက်

MySQLI :: Debug () Debug သည် MySQLI extension တွင် static method တစ်ခုဖြစ်သည်။ ၎င်းကိုအောက်ပါအတိုင်းအသုံးပြုသည် -

 mysqli::debug("d:t:o,/tmp/client.trace");

ဒီ command ရဲ့အဓိပ္ပာယ်ကတော့

  • D : သတင်းအချက်အလက်များကိုထုတ်ပြန်ခြင်း

  • T : timestamp ထည့်ပါ

  • o, / TMP / client.trace : output ကိုသတ်မှတ်ထားသော log file သို့ output ကိုရေးသည်

သို့သော်သတိပြုပါ - MySQLI :: Debug () Debug () debug () ကို ဒေတာ ဘေ့စ် connection မတည်ဆောက်မီဟု ခေါ်ရမည်။

2 ။ MySQLI :: debug ကိုအလိုအလျောက် scripts တွင်ဘာကြောင့်သုံးတာလဲ။

အလိုအလျောက်အလုပ်များ (ဥပမာအချက်အလက်များထပ်တူပြုခြင်း, အသုတ်အချက်အလက်ပြုပြင်ခြင်းစသဖြင့်) တွင် script operating စဉ်အတွင်းဒေတာဘေ့စ်၏အပြုအမူကိုခြေရာခံရန်လိုအပ်သည်။ MySQLI :: Debug (Debug () ကိုပေါင်းစည်းခြင်း () Debug () သည် အောက်ပါအားသာချက်များကိုယူဆောင်လာနိုင်သည်။

  • Backtracking: DataTracking : ဒေတာထပ်တူပြုခြင်းသည်ပျက်ကွက်ခြင်းသို့မဟုတ်ခြွင်းချက်တစ်ခုဖြစ်ပွားသည့်အခါပြ problem နာကို Log မှတစ်ဆင့်လျင်မြန်စွာတည်ရှိနိုင်သည်။

  • စွမ်းဆောင်ရည်အကောင်းမြင် - အချိန်ကုန်ခြင်းနှင့်အကောင်းမြင်ရန်အထောက်အကူပြုသည်။

  • Debugging ထိရောက်မှုကိုတိုးတက်စေခြင်း - အလားအလာရှိသောဆက်သွယ်မှုသို့မဟုတ်မေးမြန်းမှုပြ problems နာများကိုပိုမိုမြန်ဆန်စွာရှာဖွေပါ။

3 ။ ပေါင်းစည်းခြင်းစိတ်ကူးများနှင့်အကောင်အထည်ဖော်ခြင်းဥပမာ

MySQLI :: Debug ကို မည်သို့ပေါင်းစပ်ရမည်ကိုပြသသည့်ရိုးရှင်းသောအလိုအလျောက် scription ဥပမာတစ်ခု

 <?php
// စွမ်းဆောင်နိုင်စေ MySQLi Debug log,log ဖိုင်လမ်းကြောင်းများကိုပုံမှန်လှည့်ရန်သို့မဟုတ်သန့်ရှင်းရေးပြုလုပ်ရန်အကြံပြုပါသည်
mysqli::debug("d:t:o,/var/log/mysqli_debug.log");

// ဒေတာဘေ့စ် connection configuration ကို
$host = 'localhost';
$user = 'your_user';
$password = 'your_password';
$database = 'your_database';

// ဆက်သွယ်မှုတစ်ခုဖန်တီးပါ
$mysqli = new mysqli($host, $user, $password, $database);

// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
    error_log("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
    exit;
}

// ဒေတာဘေ့စစစ်ဆင်ရေးကိုတုပပါ
$query = "SELECT * FROM users WHERE status = 'active'";
$result = $mysqli->query($query);

if ($result) {
    while ($row = $result->fetch_assoc()) {
        // ဤနေရာတွင်သင်လိုအပ်သည့်လုပ်ဆောင်မှုဆိုင်ရာယုတ္တိဗေဒကိုလုပ်ဆောင်နိုင်သည်
        echo "အသုံးပြုသူ:" . $row['username'] . "\n";
    }
    $result->free();
} else {
    error_log("စုံစမ်းမှုမအောင်မြင်ပါ: " . $mysqli->error);
}

$mysqli->close();
?>

4 ။ Log Rotation ကိုနားလည်သဘောပေါက်ရန်အချိန်သတ်မှတ်ထားသည့်အလုပ်များနှင့်ပူးပေါင်းဆောင်ရွက်ပါ

ပုံမှန်မှတ်တမ်းစုဆောင်းခြင်းကို ရရှိရန်အတွက် operating system ၏ cron သို့မဟုတ်စီစဉ်ထားသည့်လုပ်ငန်းများကိုပေါင်းစပ်ရန်အကြံပြုသည်။

 # logs ဟောင်းများကိုသန့်ရှင်းရေးနှင့်နံနက်တိုင်း log collection ကိုပြန်လည်စတင်ပါ
0 0 * * * rm -f /var/log/mysqli_debug.log

Log Rotation နှင့် retention မူဝါဒများကိုအကောင်အထည်ဖော်ရန် Logrotate ကိုလည်းအသုံးပြုနိုင်သည်။

5 ။ Remote log upload (optional ကို)

ဖြန့်ဖြူးထားသောပတ်ဝန်းကျင်တွင် logs များကို Remote ဆာဗာများသို့ပုံမှန်တင်နိုင်သည်။

 $logFile = '/var/log/mysqli_debug.log';
$remote = 'https://m66.net/api/upload_log';

if (file_exists($logFile)) {
    $logData = file_get_contents($logFile);
    $response = file_get_contents($remote . '?token=YOUR_TOKEN', false, stream_context_create([
        'http' => [
            'method' => 'POST',
            'header' => "Content-type: application/x-www-form-urlencoded",
            'content' => http_build_query(['log' => $logData])
        ]
    ]));
}

6 ။ မှတ်စုဖို့အရာ

  • MySQLI :: Debug () Debug () ကို ထုတ်လုပ်မှုပတ် 0 န်းကျင်အချို့တွင်မသန်မစွမ်းဖြစ်အောင်လုပ်ခြင်းနှင့်ဖြန့်ကျက်ခြင်းမပြုမီအတည်ပြုရန်လိုအပ်သည်။

  • ကျေးဇူးပြု. မှတ်တမ်းဖိုင်သည်ခွင့်ပြုချက်ပြ issues နာများကြောင့်ရှုံးနိမ့်မှုများကိုရှောင်ကြဉ်ရန်အရေးအကြီးဆုံးခွင့်ပြုချက်ကိုသေချာစွာစစ်ဆေးပါ။

  • Log Content တွင်အထိခိုက်မခံသောသတင်းအချက်အလက်များပါ 0 င်နိုင်သည်။

7 ။ အကျဉ်းချုပ်

MySQLI :: Debug () debug () debug () ကို အလိုအလျောက် script များဖြင့်ပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ရှင်းလင်းသောဒေတာဘေ့စ်၏အပြုအမူမှတ်တမ်းများကိုရရှိနိုင်ပါသည်။ Timed Tasks နှင့် Log Rotation နည်းဗျူဟာများကိုပေါင်းစပ်ရန်အတွက်ဤကိရိယာ၏ထိရောက်မှုကိုတိုးမြှင့်စေရန်ဤကိရိယာ၏ထိရောက်မှုကိုတိုးမြှင့်နိုင်ရန်အတွက် PHP developer တိုင်းသည်ထိန်းသိမ်းထားနိုင်သည့် PHP developer တိုင်းသည်လျစ်လျူရှုခြင်းကိုလျစ်လျူရှုခြင်းမပြုနိုင်ပါ။