{
    "timestamp": "2026-04-02 10:25:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Starting sync activity completion for course_id=164, mode=all",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Found 96 users to process",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19261",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:50",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23784",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15266",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3619",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13952",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19584",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:54",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16917",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3567",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18392",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:56",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17054",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=10, Success=10, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15755",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20243",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:58",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=8990",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24335",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24622",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3518",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:01",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13358",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:02",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18170",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18728",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18425",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=20, Success=20, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18065",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=7070",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24881",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17417",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18168",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17453",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24694",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15825",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16269",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23447",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=30, Success=30, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18326",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17517",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19219",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16204",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:14",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24017",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13556",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16724",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17451",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:17",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=12880",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22542",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=40, Success=40, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23786",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:19",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=9596",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:19",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22918",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:20",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24178",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:21",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23379",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:21",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17604",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:22",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22913",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:23",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24825",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:23",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24947",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:24",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24334",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24824",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23699",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:26",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3574",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:27",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18424",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:27",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23212",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:28",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19382",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:29",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17885",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:29",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=4949",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:30",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24159",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22127",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=60, Success=60, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22956",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:32",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24948",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:33",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20560",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:34",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16488",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:34",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17357",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:35",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24060",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:36",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=11817",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:36",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3541",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:37",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18075",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17476",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=70, Success=70, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20620",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22282",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:40",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15527",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:40",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16602",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:41",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23582",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:42",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19483",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:42",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18193",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:43",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24866",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:44",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20735",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:44",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=8403",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=80, Success=80, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20601",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:46",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22280",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18505",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24171",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:48",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18115",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19263",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=4893",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:50",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23785",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24030",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18405",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=90, Success=90, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22543",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24483",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24488",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:54",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17400",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24262",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18169",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:56",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Sync completed - Total users=96, Processed=96, Success=96, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Starting sync activity completion for course_id=164, mode=all",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Found 96 users to process",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19261",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:01",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23784",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15266",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3619",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13952",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19584",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16917",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3567",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18392",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17054",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=10, Success=10, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15755",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20243",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=8990",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24335",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24622",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3518",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13358",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:14",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18170",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18728",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18425",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=20, Success=20, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18065",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:17",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=7070",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24881",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:19",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17417",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:20",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18168",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:20",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17453",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:21",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24694",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:22",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15825",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:23",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16269",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:23",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23447",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:24",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=30, Success=30, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:24",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18326",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17517",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:26",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19219",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:26",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16204",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:27",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24017",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:28",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=13556",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:28",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16724",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:29",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17451",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:30",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=12880",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:30",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22542",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=40, Success=40, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23786",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:32",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=9596",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:32",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22918",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:33",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24178",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:34",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23379",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:34",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17604",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:35",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22913",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:36",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24825",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:37",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24947",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:37",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24334",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24824",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23699",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3574",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:40",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18424",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:41",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23212",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:41",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19382",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:42",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17885",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:43",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=4949",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:43",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24159",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:44",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22127",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=60, Success=60, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22956",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24948",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:46",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20560",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16488",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17357",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:48",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24060",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=11817",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=3541",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:50",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18075",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17476",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=70, Success=70, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20620",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22282",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=15527",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=16602",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:54",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23582",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19483",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18193",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:56",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24866",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20735",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=8403",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:58",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=80, Success=80, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:58",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=20601",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22280",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18505",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24171",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:01",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18115",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:02",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=19263",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=4893",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=23785",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24030",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18405",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Progress - Processed=90, Success=90, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=22543",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24483",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24488",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=17400",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=24262",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Processing 380 completion records for user_moodle_id=18169",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:06:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 164,
    "message": "Sync completed - Total users=96, Processed=96, Success=96, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
