Prueba algo un poco más como esto:
Select al.id, al.activity, al.activity_id
From activty_log
Join (Select max(aa.activity_id) as ma From activity_log aa group by aa.id) As al2
On al2.ma = al2.activity_id;
El truco es obtener el activity_id del máximo de cada grupo de registros que comparten id en una subconsulta, luego únase a esos resultados para obtener las otras columnas de ese registro específico.