確かに,
INSERT INTO mdl_log (time, userid, course, ip, module, cmid, action, url, info)
VALUES ('1214887533', '0', '', '67.195.58.180', 'resource', '0', 'view', 'view.php?id=', ' ')
3つ目のcourseがnullで,でもリソースをviewしている訳ですから,ちょっと奇妙な感じですね.私はログの部分に関して詳しくないので,このcourseがnullという状況が異常なのか正常なのか分かりません.cmidがゼロというのはフロントページ?
この現象が発生する状況を再現させることができないと,Moodleのバグとして追求するのは難しそうですね.うーん,うちでも再現できないかなぁ.(それはそれで困りますが^^;)
#ディスクフルでは無いのにディスクフル,とエラーが出力されるのはMoodleの側の問題なのか,MySQL側の問題なのか? エラーメッセージをメールする仕組みを調べないと分からないですね.
lib/datalib.php内に,
$message = "Insert into log table failed at ". date('l dS \of F Y h:i:s A') .".\n It is possible that your disk is full.\n\n";
こんな部分があるようです(grep速報^^).
そして,function add_to_log()内で,
$sql ='INSERT INTO '. $CFG->prefix .'log (time, userid, course, ip, module, cmid, action, url, info)
VALUES (' . "'$timenow', '$userid', '$courseid', '$REMOTE_ADDR', '$module', '$cm', '$action', '$url', '$info')";
$result = $db->Execute($sql);
// MDL-11893, alert $CFG->supportemail if insert into log failed
if (!$result && $CFG->supportemail) {
$site = get_site();
$subject = 'Insert into log failed at your moodle site '.$site->fullname;
$message = "Insert into log table failed at ". date('l dS \of F Y h:i:s A') .".\n It is possible that your disk is full.\n\n";
$message .= "The failed SQL is:\n\n" . $sql;
こうですね.エラーが発生したら disk full の可能性アリ? ちょっと乱暴かも.