{
    "timestamp": "2026-10-15 07:57:52",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 07:58:05",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 07:58:35",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 07:58:36",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 07:58:37",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 07:58:37",
    "level": "INFO",
    "data": {
        "message": "Kết quả check bất thường cho score_id 6111",
        "idHistoryContest": "6ad02509bfd23815e778f438",
        "student_score_id": 6111,
        "abnormal_check": {
            "status": true,
            "is_abnormal": false,
            "abnormal_reasons": []
        }
    }
}
{
    "timestamp": "2026-10-15 14:17:58",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 14:30:15",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 8"
    }
}
{
    "timestamp": "2026-10-15 14:30:17",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 8"
    }
}
{
    "timestamp": "2026-10-15 14:30:18",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 8"
    }
}
{
    "timestamp": "2026-10-15 14:30:18",
    "level": "INFO",
    "data": {
        "message": "Kết quả check bất thường cho score_id 6112",
        "idHistoryContest": "6ad07e1fbfd23815e778f509",
        "student_score_id": 6112,
        "abnormal_check": {
            "status": true,
            "is_abnormal": true,
            "abnormal_reasons": [
                "Chuyển tab 8 lần (Vượt ngưỡng 6 lần)."
            ]
        }
    }
}
{
    "timestamp": "2026-10-15 14:30:18",
    "level": "INFO",
    "data": {
        "message": "Check threshold Speaking cho score_id 6112: courseId=4836, speakingScore=0, threshold=null, eligible=1",
        "student_score_id": 6112
    }
}
{
    "timestamp": "2026-10-15 14:30:19",
    "level": "INFO",
    "data": {
        "message": "Workflow đang được xử lý bởi tiến trình khác cho idHistoryContest: 6ad07e1fbfd23815e778f509",
        "idHistoryContest": "6ad07e1fbfd23815e778f509"
    }
}
{
    "timestamp": "2026-10-15 14:30:41",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 0"
    }
}
{
    "timestamp": "2026-10-15 14:42:55",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 13"
    }
}
{
    "timestamp": "2026-10-15 14:42:58",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 13"
    }
}
{
    "timestamp": "2026-10-15 14:42:59",
    "level": "INFO",
    "data": {
        "message": "Tab switch count: 13"
    }
}
{
    "timestamp": "2026-10-15 14:42:59",
    "level": "INFO",
    "data": {
        "message": "Kết quả check bất thường cho score_id 6113",
        "idHistoryContest": "6ad0811abfd23815e778f5a2",
        "student_score_id": 6113,
        "abnormal_check": {
            "status": true,
            "is_abnormal": true,
            "abnormal_reasons": [
                "Chuyển tab 13 lần (Vượt ngưỡng 6 lần)."
            ]
        }
    }
}
{
    "timestamp": "2026-10-15 14:42:59",
    "level": "INFO",
    "data": {
        "message": "Check threshold Speaking cho score_id 6113: courseId=4836, speakingScore=0, threshold=null, eligible=1",
        "student_score_id": 6113
    }
}
{
    "timestamp": "2026-10-15 14:42:59",
    "level": "INFO",
    "data": {
        "message": "Workflow đang được xử lý bởi tiến trình khác cho idHistoryContest: 6ad0811abfd23815e778f5a2",
        "idHistoryContest": "6ad0811abfd23815e778f5a2"
    }
}
