If you want to also copy the .log/.err/.out files that have an extra .date suffix, and assuming those dates are in YYYY-MM-DD format, and assuming GNU find (as your regexp suggests you're using), and GNU cp, you'd do
LC_ALL=C find "$path1" "$path2" \
-regextype posix-extended \
-regex '.*\.(log|err|out)(\.[0-9]{4}-[0-9]{2}-[0-9]{2})?' \
-type f \
-exec cp -t "$distination" {} +
Replace [0-9]{4}-[0-9]{2}-[0-9]{2} with [0-9]{8} for YYYYMMDD dates, etc.
The .*\.(log|err|out)(\.[0-9]{4}-[0-9]{2}-[0-9]{2})? extended regular expression matches on:
.*: any number (*) of characters (.), which thanks to LC_ALL=C means any byte, those bytes not having to form valid characters in the user's locale. Followed by:
\.: a literal . (dot / period). Followed by:
(log|err|out): either log, err or out.
(...)?: an optional (?) ..., ... being:
\.[0-9]{4}-[0-9]{2}-[0-9]{2}, a literal . again followed by 4 characters in the 0-9 range which thanks to LC_ALL=C again is limited to 0123456789, followed by -, 2 more of those digits, - and 2 more digits.
With BSD find, you'd use the -E option instead of the -regextype posix-extended predicate for the argument to -regex to be treated as an extended regexp.
file.log.tar.gz,tar.gzbeing the date?