Ok, let's start from the beginning.
To have a logfile, just use the optional [logfile] field.
For example (I think it's pretty self-explanatory):
# ddrescue -f /dev/sdx /dev/sdy /var/log/ddrescuelog
Just one pass. You're done.
About the "-f" option: ddrescue doesn't copy only from disk to disk: it copies from a standard file, a partition or a disk to a standard file, a partition or a disk. It can copy from a file to a partition, or from a disk to a file, or whatever you like. Now: if the destination is a device or a partition, so if it isn't a regular file, ddrescue will refuse to overwrite it without "-f" option: "it's for your own protection"(R). So you're right using it.
About the logfile: ddrescue is thought for situations where the origin is tipically a disk with some bad unreadable sectors. ddrescue task is to copy as much as possible, as quick as possible, with the least possible stress. But something won't be copied, usually. It won't be possible to read some sectors on the origin, and the corresponding sectors on the destination will be zero-filled. That's why a logfile is so relevant: to know what has been copied and what hasn't.
But you're using ddrescue just to clone a healthy disk, so your logfile (yes, have it, it won't harm) will be really tiny and not interesting.
About "-g" option: let's say someone used ddrescue to recover data from a failing disk and without a logfile (shame on him!). Now he has the origin, he has the (partial) copy, he hasn't got the logfile. Thanks God (well, thanks ddrescue) he can generate the logfile (well, an approximate logfile) even "ex post", with "-g" option: ddrescue -g origin alreadymadecopy /var/log/ddrescuelog
. Of course this is not your case, so you're not interested at all in "-g" option, which makes ddrescue just compare an origin with a copy, and create a log about what has probably been done.
I hope we can get rid of those walls, now.
--
Bye