{
    "timestamp": "2026-08-02 04:00:03",
    "level": "INFO",
    "message": "[syncCourseTypes] Hoàn thành toàn bộ. Tổng = 0"
}
{
    "timestamp": "2026-08-02 04:00:03",
    "level": "INFO",
    "message": "[syncCourses] Hoàn thành toàn bộ. Tổng = 1"
}
{
    "timestamp": "2026-08-02 04:00:03",
    "level": "INFO",
    "message": "[syncStudents] Hoàn thành toàn bộ. Tổng = 1"
}
{
    "timestamp": "2026-08-02 04:00:03",
    "level": "INFO",
    "message": "[syncCourseStudents] Hoàn thành toàn bộ. Tổng = 3"
}
{
    "timestamp": "2026-08-02 04:00:03",
    "level": "INFO",
    "message": "[syncStudentScores] Hoàn thành toàn bộ. Tổng = 2"
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "INFO",
    "message": "[syncUserAssignments] Hoàn thành toàn bộ. Tổng = 5"
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "INFO",
    "message": "[mirrorToZeus] Bắt đầu mirror dữ liệu sang Zeus (isSync = 139)..."
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "INFO",
    "message": "[mirrorToZeus] Hoàn tất bảng lcms_course_types. Tổng đã sync: 0"
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "ERROR",
    "message": "[mirrorToZeus] Bắt catch ngoại lệ bảng lcms_students chi tiết:",
    "context": {
        "msg": "SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_students` (`stu_created_at`, `stu_dob`, `stu_email`, `stu_gender`, `stu_id`, `stu_is_sync`, `stu_name`, `stu_phone`, `stu_updated_at`, `stu_user_id`, `stu_username`) values (2024-12-26 10:19:37, 2025-03-03, kienp2901@gmail.com, Male, 1, 139, Kiên Phạm, 0394859392, 2026-07-31 03:36:13, 485, SPW71652694) on duplicate key update `stu_name` = values(`stu_name`), `stu_email` = values(`stu_email`), `stu_username` = values(`stu_username`), `stu_user_id` = values(`stu_user_id`), `stu_phone` = values(`stu_phone`), `stu_dob` = values(`stu_dob`), `stu_gender` = values(`stu_gender`), `stu_is_sync` = values(`stu_is_sync`), `stu_updated_at` = values(`stu_updated_at`))",
        "trace": "#0 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(779): Illuminate\\Database\\Connection->runQueryCallback()\n#1 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(584): Illuminate\\Database\\Connection->run()\n#2 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Query\/Builder.php(3917): Illuminate\\Database\\Connection->affectingStatement()\n#3 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(599): Illuminate\\Database\\Query\\Builder->upsert()\n#4 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Concerns\/BuildsQueries.php(59): App\\Console\\Commands\\LmsDailySyncCommand->App\\Console\\Commands\\{closure}()\n#5 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(589): Illuminate\\Database\\Query\\Builder->chunk()\n#6 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(125): App\\Console\\Commands\\LmsDailySyncCommand->mirrorToZeus()\n#7 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(36): App\\Console\\Commands\\LmsDailySyncCommand->handle()\n#8 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#9 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure()\n#10 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()\n#11 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(696): Illuminate\\Container\\BoundMethod::call()\n#12 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(213): Illuminate\\Container\\Container->call()\n#13 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Command\/Command.php(341): Illuminate\\Console\\Command->execute()\n#14 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run()\n#15 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(1117): Illuminate\\Console\\Command->run()\n#16 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()\n#17 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(195): Symfony\\Component\\Console\\Application->doRun()\n#18 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Console\/Kernel.php(198): Symfony\\Component\\Console\\Application->run()\n#19 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application.php(1235): Illuminate\\Foundation\\Console\\Kernel->handle()\n#20 \/var\/www\/html\/lms_hocmai\/artisan(13): Illuminate\\Foundation\\Application->handleCommand()\n#21 {main}"
    }
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "ERROR",
    "message": "[mirrorToZeus] Bắt catch ngoại lệ bảng lcms_courses chi tiết:",
    "context": {
        "msg": "SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_courses` (`cou_created_at`, `cou_id`, `cou_is_sync`, `cou_last_round`, `cou_moodle_id`, `cou_name`, `cou_parent_id`, `cou_quiz_setting_type`, `cou_section_type`, `cou_total_round`, `cou_type`, `cou_type_id`, `cou_updated_at`, `cou_visible`) values (2025-10-27 03:19:39, 571, 139, 11147, 1987, Post class Loại 6, 568, 29, ?, 1, quiz, ?, 2026-07-31 03:39:00, 1) on duplicate key update `cou_moodle_id` = values(`cou_moodle_id`), `cou_name` = values(`cou_name`), `cou_type` = values(`cou_type`), `cou_parent_id` = values(`cou_parent_id`), `cou_total_round` = values(`cou_total_round`), `cou_last_round` = values(`cou_last_round`), `cou_section_type` = values(`cou_section_type`), `cou_quiz_setting_type` = values(`cou_quiz_setting_type`), `cou_type_id` = values(`cou_type_id`), `cou_visible` = values(`cou_visible`), `cou_is_sync` = values(`cou_is_sync`), `cou_updated_at` = values(`cou_updated_at`))",
        "trace": "#0 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(779): Illuminate\\Database\\Connection->runQueryCallback()\n#1 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(584): Illuminate\\Database\\Connection->run()\n#2 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Query\/Builder.php(3917): Illuminate\\Database\\Connection->affectingStatement()\n#3 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(599): Illuminate\\Database\\Query\\Builder->upsert()\n#4 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Concerns\/BuildsQueries.php(59): App\\Console\\Commands\\LmsDailySyncCommand->App\\Console\\Commands\\{closure}()\n#5 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(589): Illuminate\\Database\\Query\\Builder->chunk()\n#6 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(125): App\\Console\\Commands\\LmsDailySyncCommand->mirrorToZeus()\n#7 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(36): App\\Console\\Commands\\LmsDailySyncCommand->handle()\n#8 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#9 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure()\n#10 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()\n#11 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(696): Illuminate\\Container\\BoundMethod::call()\n#12 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(213): Illuminate\\Container\\Container->call()\n#13 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Command\/Command.php(341): Illuminate\\Console\\Command->execute()\n#14 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run()\n#15 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(1117): Illuminate\\Console\\Command->run()\n#16 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()\n#17 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(195): Symfony\\Component\\Console\\Application->doRun()\n#18 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Console\/Kernel.php(198): Symfony\\Component\\Console\\Application->run()\n#19 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application.php(1235): Illuminate\\Foundation\\Console\\Kernel->handle()\n#20 \/var\/www\/html\/lms_hocmai\/artisan(13): Illuminate\\Foundation\\Application->handleCommand()\n#21 {main}"
    }
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "ERROR",
    "message": "[mirrorToZeus] Bắt catch ngoại lệ bảng lcms_course_student chi tiết:",
    "context": {
        "msg": "SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_course_student` (`coustu_course_end`, `coustu_course_id`, `coustu_created_at`, `coustu_id`, `coustu_is_sync`, `coustu_student_id`, `coustu_updated_at`, `coustu_user_id`) values (2027-07-30 16:22:24, 832, 2026-07-30 16:22:24, 5700, 139, 3820, 2026-07-30 16:22:24, 465), (2027-07-30 16:22:24, 888, 2026-07-30 16:22:24, 5701, 139, 3820, 2026-07-30 16:22:24, 465), (2027-07-30 16:22:24, 1010, 2026-07-30 16:22:24, 5702, 139, 3820, 2026-07-30 16:22:24, 465) on duplicate key update `coustu_student_id` = values(`coustu_student_id`), `coustu_user_id` = values(`coustu_user_id`), `coustu_course_id` = values(`coustu_course_id`), `coustu_course_end` = values(`coustu_course_end`), `coustu_is_sync` = values(`coustu_is_sync`), `coustu_updated_at` = values(`coustu_updated_at`))",
        "trace": "#0 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(779): Illuminate\\Database\\Connection->runQueryCallback()\n#1 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(584): Illuminate\\Database\\Connection->run()\n#2 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Query\/Builder.php(3917): Illuminate\\Database\\Connection->affectingStatement()\n#3 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(599): Illuminate\\Database\\Query\\Builder->upsert()\n#4 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Concerns\/BuildsQueries.php(59): App\\Console\\Commands\\LmsDailySyncCommand->App\\Console\\Commands\\{closure}()\n#5 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(589): Illuminate\\Database\\Query\\Builder->chunk()\n#6 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(125): App\\Console\\Commands\\LmsDailySyncCommand->mirrorToZeus()\n#7 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(36): App\\Console\\Commands\\LmsDailySyncCommand->handle()\n#8 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#9 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure()\n#10 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()\n#11 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(696): Illuminate\\Container\\BoundMethod::call()\n#12 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(213): Illuminate\\Container\\Container->call()\n#13 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Command\/Command.php(341): Illuminate\\Console\\Command->execute()\n#14 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run()\n#15 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(1117): Illuminate\\Console\\Command->run()\n#16 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()\n#17 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(195): Symfony\\Component\\Console\\Application->doRun()\n#18 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Console\/Kernel.php(198): Symfony\\Component\\Console\\Application->run()\n#19 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application.php(1235): Illuminate\\Foundation\\Console\\Kernel->handle()\n#20 \/var\/www\/html\/lms_hocmai\/artisan(13): Illuminate\\Foundation\\Application->handleCommand()\n#21 {main}"
    }
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "ERROR",
    "message": "[mirrorToZeus] Bắt catch ngoại lệ bảng lcms_student_scores chi tiết:",
    "context": {
        "msg": "SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_student_scores` (`stusco_course_id`, `stusco_created_at`, `stusco_history_contest_id`, `stusco_id`, `stusco_is_sync`, `stusco_mock_contest_id`, `stusco_overall_score`, `stusco_score_status`, `stusco_student_id`, `stusco_updated_at`, `stusco_user_id`) values (5209, 2026-07-31 09:02:51, 6a6c64bb2ea79c996ef7a2b2, 5476, 139, 879, 1.5, 0, 1, 2026-08-01 16:00:04, 485), (5209, 2026-07-31 09:04:41, 6a6c65292ea79c996ef7a380, 5477, 139, 879, 1.5, 0, 1, 2026-08-01 07:00:05, 485) on duplicate key update `stusco_student_id` = values(`stusco_student_id`), `stusco_user_id` = values(`stusco_user_id`), `stusco_course_id` = values(`stusco_course_id`), `stusco_mock_contest_id` = values(`stusco_mock_contest_id`), `stusco_score_status` = values(`stusco_score_status`), `stusco_history_contest_id` = values(`stusco_history_contest_id`), `stusco_overall_score` = values(`stusco_overall_score`), `stusco_is_sync` = values(`stusco_is_sync`), `stusco_updated_at` = values(`stusco_updated_at`))",
        "trace": "#0 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(779): Illuminate\\Database\\Connection->runQueryCallback()\n#1 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(584): Illuminate\\Database\\Connection->run()\n#2 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Query\/Builder.php(3917): Illuminate\\Database\\Connection->affectingStatement()\n#3 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(599): Illuminate\\Database\\Query\\Builder->upsert()\n#4 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Concerns\/BuildsQueries.php(59): App\\Console\\Commands\\LmsDailySyncCommand->App\\Console\\Commands\\{closure}()\n#5 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(589): Illuminate\\Database\\Query\\Builder->chunk()\n#6 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(125): App\\Console\\Commands\\LmsDailySyncCommand->mirrorToZeus()\n#7 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(36): App\\Console\\Commands\\LmsDailySyncCommand->handle()\n#8 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#9 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure()\n#10 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()\n#11 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(696): Illuminate\\Container\\BoundMethod::call()\n#12 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(213): Illuminate\\Container\\Container->call()\n#13 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Command\/Command.php(341): Illuminate\\Console\\Command->execute()\n#14 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run()\n#15 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(1117): Illuminate\\Console\\Command->run()\n#16 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()\n#17 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(195): Symfony\\Component\\Console\\Application->doRun()\n#18 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Console\/Kernel.php(198): Symfony\\Component\\Console\\Application->run()\n#19 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application.php(1235): Illuminate\\Foundation\\Console\\Kernel->handle()\n#20 \/var\/www\/html\/lms_hocmai\/artisan(13): Illuminate\\Foundation\\Application->handleCommand()\n#21 {main}"
    }
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "ERROR",
    "message": "[mirrorToZeus] Bắt catch ngoại lệ bảng lcms_user_assignments chi tiết:",
    "context": {
        "msg": "SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_user_assignments` (`usrasi_completion_state`, `usrasi_completion_time`, `usrasi_course_id`, `usrasi_created_at`, `usrasi_id`, `usrasi_is_cron`, `usrasi_is_sync`, `usrasi_payload_data`, `usrasi_response_data`, `usrasi_section_id`, `usrasi_student_id`, `usrasi_updated_at`, `usrasi_zeus_id`) values (1, 2026-07-31 17:24:36, 5036, 2026-07-28 16:00:14, 197, 1, 139, {\"auto_assigned\": true, \"source_section_id\": 1849}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1838, \"name\": \"Lesson 1 - Unit 1 - Reading\"}, \"auto_assigned_from\": 1849}, 5037, 4162, 2026-08-02 02:00:20, 563), (1, 2026-07-31 17:24:36, 5036, 2026-07-28 16:00:15, 199, 1, 139, {\"auto_assigned\": true, \"source_section_id\": 1849}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1838, \"name\": \"Lesson 1 - Unit 1 - Reading\"}, \"auto_assigned_from\": 1849}, 5037, 4202, 2026-08-02 02:00:20, 568), (0, 2026-08-01 01:00:02, 5063, 2026-07-31 17:00:10, 201, 0, 139, {\"course_id\": \"227\", \"section_id\": \"1852\", \"tenant_key\": \"VWvi4u56mb\", \"zeus_user_id\": 242, \"x_tenant_code\": \"ICC\", \"completion_time\": \"2026-08-01 01:00:02\"}, {\"course\": {\"id\": 227, \"name\": \"Easy IELTS 25-Foundation\"}, \"section\": {\"id\": 1852, \"name\": \"Lesson 4 -Unit 1 - Speaking\"}}, 5067, 4031, 2026-07-31 18:00:02, 242), (0, 2026-08-01 01:00:02, 5036, 2026-07-31 17:00:11, 202, 0, 139, {\"auto_assigned\": true, \"source_section_id\": 1852}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1841, \"name\": \"Lesson 4 - Unit 1 - Speaking\"}, \"auto_assigned_from\": 1852}, 5040, 4031, 2026-07-31 18:00:02, 242), (1, 2026-08-02 01:00:03, 4319, 2026-08-01 18:00:06, 203, 1, 139, {\"course_id\": \"205\", \"section_id\": \"1681\", \"tenant_key\": \"VWvi4u56mb\", \"zeus_user_id\": 449, \"x_tenant_code\": \"ICC\", \"completion_time\": \"2026-08-02 01:00:03\"}, {\"course\": {\"id\": 205, \"name\": \"Kid's Box - Flyers\"}, \"section\": {\"id\": 1681, \"name\": \"Unit 1 - Lesson 2 - Grammar and Speaking\"}}, 4322, 3627, 2026-08-02 01:00:07, 449) on duplicate key update `usrasi_course_id` = values(`usrasi_course_id`), `usrasi_section_id` = values(`usrasi_section_id`), `usrasi_zeus_id` = values(`usrasi_zeus_id`), `usrasi_student_id` = values(`usrasi_student_id`), `usrasi_completion_time` = values(`usrasi_completion_time`), `usrasi_completion_state` = values(`usrasi_completion_state`), `usrasi_payload_data` = values(`usrasi_payload_data`), `usrasi_response_data` = values(`usrasi_response_data`), `usrasi_is_cron` = values(`usrasi_is_cron`), `usrasi_is_sync` = values(`usrasi_is_sync`), `usrasi_updated_at` = values(`usrasi_updated_at`))",
        "trace": "#0 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(779): Illuminate\\Database\\Connection->runQueryCallback()\n#1 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connection.php(584): Illuminate\\Database\\Connection->run()\n#2 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Query\/Builder.php(3917): Illuminate\\Database\\Connection->affectingStatement()\n#3 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(599): Illuminate\\Database\\Query\\Builder->upsert()\n#4 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Concerns\/BuildsQueries.php(59): App\\Console\\Commands\\LmsDailySyncCommand->App\\Console\\Commands\\{closure}()\n#5 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(589): Illuminate\\Database\\Query\\Builder->chunk()\n#6 \/var\/www\/html\/lms_hocmai\/app\/Console\/Commands\/LmsDailySyncCommand.php(125): App\\Console\\Commands\\LmsDailySyncCommand->mirrorToZeus()\n#7 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(36): App\\Console\\Commands\\LmsDailySyncCommand->handle()\n#8 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()\n#9 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure()\n#10 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()\n#11 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Container\/Container.php(696): Illuminate\\Container\\BoundMethod::call()\n#12 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(213): Illuminate\\Container\\Container->call()\n#13 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Command\/Command.php(341): Illuminate\\Console\\Command->execute()\n#14 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Console\/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run()\n#15 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(1117): Illuminate\\Console\\Command->run()\n#16 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()\n#17 \/var\/www\/html\/lms_hocmai\/vendor\/symfony\/console\/Application.php(195): Symfony\\Component\\Console\\Application->doRun()\n#18 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Console\/Kernel.php(198): Symfony\\Component\\Console\\Application->run()\n#19 \/var\/www\/html\/lms_hocmai\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/Application.php(1235): Illuminate\\Foundation\\Console\\Kernel->handle()\n#20 \/var\/www\/html\/lms_hocmai\/artisan(13): Illuminate\\Foundation\\Application->handleCommand()\n#21 {main}"
    }
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "INFO",
    "message": "[mirrorToZeus] Xong tất cả. Tổng = 0"
}
{
    "timestamp": "2026-08-02 04:00:04",
    "level": "INFO",
    "message": "[LmsDailySync] Hoàn thành",
    "context": {
        "tenantCode": "ICC",
        "isSync": 139,
        "elapsed_s": -0.7222759999999999,
        "syncCourseTypes": {
            "synced": 0
        },
        "syncCourses": {
            "synced": 1
        },
        "syncStudents": {
            "synced": 1
        },
        "syncCourseStudents": {
            "synced": 3
        },
        "syncStudentScores": {
            "synced": 2
        },
        "syncUserAssignments": {
            "synced": 5
        },
        "mirrorToZeus": {
            "synced": 0,
            "error": "Mirror lcms_students lỗi: SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_students` (`stu_created_at`, `stu_dob`, `stu_email`, `stu_gender`, `stu_id`, `stu_is_sync`, `stu_name`, `stu_phone`, `stu_updated_at`, `stu_user_id`, `stu_username`) values (2024-12-26 10:19:37, 2025-03-03, kienp2901@gmail.com, Male, 1, 139, Kiên Phạm, 0394859392, 2026-07-31 03:36:13, 485, SPW71652694) on duplicate key update `stu_name` = values(`stu_name`), `stu_email` = values(`stu_email`), `stu_username` = values(`stu_username`), `stu_user_id` = values(`stu_user_id`), `stu_phone` = values(`stu_phone`), `stu_dob` = values(`stu_dob`), `stu_gender` = values(`stu_gender`), `stu_is_sync` = values(`stu_is_sync`), `stu_updated_at` = values(`stu_updated_at`)) | Mirror lcms_courses lỗi: SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_courses` (`cou_created_at`, `cou_id`, `cou_is_sync`, `cou_last_round`, `cou_moodle_id`, `cou_name`, `cou_parent_id`, `cou_quiz_setting_type`, `cou_section_type`, `cou_total_round`, `cou_type`, `cou_type_id`, `cou_updated_at`, `cou_visible`) values (2025-10-27 03:19:39, 571, 139, 11147, 1987, Post class Loại 6, 568, 29, ?, 1, quiz, ?, 2026-07-31 03:39:00, 1) on duplicate key update `cou_moodle_id` = values(`cou_moodle_id`), `cou_name` = values(`cou_name`), `cou_type` = values(`cou_type`), `cou_parent_id` = values(`cou_parent_id`), `cou_total_round` = values(`cou_total_round`), `cou_last_round` = values(`cou_last_round`), `cou_section_type` = values(`cou_section_type`), `cou_quiz_setting_type` = values(`cou_quiz_setting_type`), `cou_type_id` = values(`cou_type_id`), `cou_visible` = values(`cou_visible`), `cou_is_sync` = values(`cou_is_sync`), `cou_updated_at` = values(`cou_updated_at`)) | Mirror lcms_course_student lỗi: SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_course_student` (`coustu_course_end`, `coustu_course_id`, `coustu_created_at`, `coustu_id`, `coustu_is_sync`, `coustu_student_id`, `coustu_updated_at`, `coustu_user_id`) values (2027-07-30 16:22:24, 832, 2026-07-30 16:22:24, 5700, 139, 3820, 2026-07-30 16:22:24, 465), (2027-07-30 16:22:24, 888, 2026-07-30 16:22:24, 5701, 139, 3820, 2026-07-30 16:22:24, 465), (2027-07-30 16:22:24, 1010, 2026-07-30 16:22:24, 5702, 139, 3820, 2026-07-30 16:22:24, 465) on duplicate key update `coustu_student_id` = values(`coustu_student_id`), `coustu_user_id` = values(`coustu_user_id`), `coustu_course_id` = values(`coustu_course_id`), `coustu_course_end` = values(`coustu_course_end`), `coustu_is_sync` = values(`coustu_is_sync`), `coustu_updated_at` = values(`coustu_updated_at`)) | Mirror lcms_student_scores lỗi: SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_student_scores` (`stusco_course_id`, `stusco_created_at`, `stusco_history_contest_id`, `stusco_id`, `stusco_is_sync`, `stusco_mock_contest_id`, `stusco_overall_score`, `stusco_score_status`, `stusco_student_id`, `stusco_updated_at`, `stusco_user_id`) values (5209, 2026-07-31 09:02:51, 6a6c64bb2ea79c996ef7a2b2, 5476, 139, 879, 1.5, 0, 1, 2026-08-01 16:00:04, 485), (5209, 2026-07-31 09:04:41, 6a6c65292ea79c996ef7a380, 5477, 139, 879, 1.5, 0, 1, 2026-08-01 07:00:05, 485) on duplicate key update `stusco_student_id` = values(`stusco_student_id`), `stusco_user_id` = values(`stusco_user_id`), `stusco_course_id` = values(`stusco_course_id`), `stusco_mock_contest_id` = values(`stusco_mock_contest_id`), `stusco_score_status` = values(`stusco_score_status`), `stusco_history_contest_id` = values(`stusco_history_contest_id`), `stusco_overall_score` = values(`stusco_overall_score`), `stusco_is_sync` = values(`stusco_is_sync`), `stusco_updated_at` = values(`stusco_updated_at`)) | Mirror lcms_user_assignments lỗi: SQLSTATE[HY000] [1049] Unknown database 'ZEUS_speakup' (Connection: zeus, SQL: insert into `lcms_user_assignments` (`usrasi_completion_state`, `usrasi_completion_time`, `usrasi_course_id`, `usrasi_created_at`, `usrasi_id`, `usrasi_is_cron`, `usrasi_is_sync`, `usrasi_payload_data`, `usrasi_response_data`, `usrasi_section_id`, `usrasi_student_id`, `usrasi_updated_at`, `usrasi_zeus_id`) values (1, 2026-07-31 17:24:36, 5036, 2026-07-28 16:00:14, 197, 1, 139, {\"auto_assigned\": true, \"source_section_id\": 1849}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1838, \"name\": \"Lesson 1 - Unit 1 - Reading\"}, \"auto_assigned_from\": 1849}, 5037, 4162, 2026-08-02 02:00:20, 563), (1, 2026-07-31 17:24:36, 5036, 2026-07-28 16:00:15, 199, 1, 139, {\"auto_assigned\": true, \"source_section_id\": 1849}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1838, \"name\": \"Lesson 1 - Unit 1 - Reading\"}, \"auto_assigned_from\": 1849}, 5037, 4202, 2026-08-02 02:00:20, 568), (0, 2026-08-01 01:00:02, 5063, 2026-07-31 17:00:10, 201, 0, 139, {\"course_id\": \"227\", \"section_id\": \"1852\", \"tenant_key\": \"VWvi4u56mb\", \"zeus_user_id\": 242, \"x_tenant_code\": \"ICC\", \"completion_time\": \"2026-08-01 01:00:02\"}, {\"course\": {\"id\": 227, \"name\": \"Easy IELTS 25-Foundation\"}, \"section\": {\"id\": 1852, \"name\": \"Lesson 4 -Unit 1 - Speaking\"}}, 5067, 4031, 2026-07-31 18:00:02, 242), (0, 2026-08-01 01:00:02, 5036, 2026-07-31 17:00:11, 202, 0, 139, {\"auto_assigned\": true, \"source_section_id\": 1852}, {\"course\": {\"id\": 226, \"name\": \"[Center] Easy IELTS 25 - Foundation\"}, \"section\": {\"id\": 1841, \"name\": \"Lesson 4 - Unit 1 - Speaking\"}, \"auto_assigned_from\": 1852}, 5040, 4031, 2026-07-31 18:00:02, 242), (1, 2026-08-02 01:00:03, 4319, 2026-08-01 18:00:06, 203, 1, 139, {\"course_id\": \"205\", \"section_id\": \"1681\", \"tenant_key\": \"VWvi4u56mb\", \"zeus_user_id\": 449, \"x_tenant_code\": \"ICC\", \"completion_time\": \"2026-08-02 01:00:03\"}, {\"course\": {\"id\": 205, \"name\": \"Kid's Box - Flyers\"}, \"section\": {\"id\": 1681, \"name\": \"Unit 1 - Lesson 2 - Grammar and Speaking\"}}, 4322, 3627, 2026-08-02 01:00:07, 449) on duplicate key update `usrasi_course_id` = values(`usrasi_course_id`), `usrasi_section_id` = values(`usrasi_section_id`), `usrasi_zeus_id` = values(`usrasi_zeus_id`), `usrasi_student_id` = values(`usrasi_student_id`), `usrasi_completion_time` = values(`usrasi_completion_time`), `usrasi_completion_state` = values(`usrasi_completion_state`), `usrasi_payload_data` = values(`usrasi_payload_data`), `usrasi_response_data` = values(`usrasi_response_data`), `usrasi_is_cron` = values(`usrasi_is_cron`), `usrasi_is_sync` = values(`usrasi_is_sync`), `usrasi_updated_at` = values(`usrasi_updated_at`))"
        }
    }
}
