Lo más rápido de implementar, es un Form con un Memo alineado alClient, fuente Courier New y una rutina llamada
Código Delphi
[-]Log(mensaje:string;const IncluirFecha:Boolean = true);
Cuando quieras guardarlo llamas al SAveTofile del memo y listo.
Se puede añadir un par de rutinas más, para que el nombre del archivo sea el nombre de tu aplicación con extensión .log, que al abrir el form mire si existe ese archivo y lo cargue.
Quizás un par de botones para borrar el log, seleccionar todo o cosas así.
Cuando empieces una aplicación nueva, solo tienes que importar ese Form ya hecho y listo, a funcionar. (yo lo uso muy a menudo para depurar la aplicación cuando el watch de delphi no me sirve o son bucles).
Saludos