{
    "timestamp": "2026-04-02 10:25:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Starting sync activity completion for course_id=166, mode=all",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Found 50 users to process",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20669",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:45",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=3619",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:46",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21965",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16489",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:47",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=15651",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:48",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=8990",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17989",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:49",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=13396",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:50",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18728",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=14677",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=10, Success=10, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:51",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=12606",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:52",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21435",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23788",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:53",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22279",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:54",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22283",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24540",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:55",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=19474",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:56",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24880",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:56",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24484",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22722",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:57",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=20, Success=20, 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": 166,
    "message": "Processing 352 completion records for user_moodle_id=18171",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:58",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=10900",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23212",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:25:59",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20559",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:00",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16271",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:01",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22671",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:01",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24879",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:02",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=19705",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20029",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:03",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22672",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=30, Success=30, 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": 166,
    "message": "Processing 352 completion records for user_moodle_id=15408",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24418",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=3541",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21035",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=13388",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23581",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17377",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20267",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17297",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=8403",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=40, Success=40, 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": 166,
    "message": "Processing 352 completion records for user_moodle_id=19222",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18505",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16029",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=11517",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=4893",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:14",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21575",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:14",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23580",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18066",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18955",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18064",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:17",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 10:26:17",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Sync completed - Total users=50, Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Starting sync activity completion for course_id=166, mode=all",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Found 50 users to process",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:04",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20669",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:05",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=3619",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21965",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:06",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16489",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:07",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=15651",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:08",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=8990",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:09",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17989",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=13396",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:10",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18728",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:11",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=14677",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=10, Success=10, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=12606",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:12",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21435",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:13",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23788",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:14",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22279",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22283",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:15",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24540",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:16",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=19474",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:17",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24880",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24484",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:18",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22722",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:19",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=20, Success=20, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:19",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18171",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:20",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=10900",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:20",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23212",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:21",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20559",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:22",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16271",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:22",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22671",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:23",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24879",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:24",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=19705",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20029",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:25",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=22672",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:26",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=30, Success=30, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:26",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=15408",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:27",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=24418",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:27",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=3541",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:28",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21035",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:29",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=13388",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:29",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23581",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:30",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17377",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=20267",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:31",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=17297",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:32",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=8403",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:33",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=40, Success=40, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:33",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=19222",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:33",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18505",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:34",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=16029",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:35",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=11517",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:35",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=4893",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:36",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=21575",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:36",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=23580",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:37",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18066",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:38",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18955",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Processing 352 completion records for user_moodle_id=18064",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Progress - Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
{
    "timestamp": "2026-04-02 14:05:39",
    "level": "INFO",
    "function": "syncActivityCompletionExec",
    "course_id": 166,
    "message": "Sync completed - Total users=50, Processed=50, Success=50, Errors=0, Skipped=0",
    "memory_usage": "30 MB",
    "peak_memory": "30 MB"
}
