Чтобы сделать это, используйте один дополнительный дескриптор файла для переключения stderr и stdout:
find /var/log 3>&1 1>&2 2>&3 | tee foo.file
В основном это работает, или по крайней мере я думаю, что это работает, следующим образом:
Перенаправления оценены слева направо.
3>&1
Делает новый дескриптор файла, 3 дубликат (копия) fd 1 (stdout).
1>&2
Сделайте stdout (1) дубликат fd 2 (stderr)
2>&3
Сделайте fd 2, дубликат (копия) 3, который был ранее сделан копией stdout.
Таким образом, теперь stderr и stdout переключаются.
| tee foo.file
кладите для первого удара копирует дескриптор файла 1, который был превращен в stderr.
Можно использовать rsyslog, видеть http://wiki.rsyslog.com/index.php/Working_Apache_and_Rsyslog_configuration
Зарегистрировать все к удаленному серверу, вставленному/etc/rsyslog.d/0X-remote-server.conf:
*.* @<IP-address remote server>
Затем на удаленном сервере можно использовать, например, системный-журнал-ng с фильтрами для помещения всех входящих в систему отдельных каталогов (т.е. на VirtualHost).
Если Вы регистрируетесь по сети, мудро зашифровать Ваши данные. Можно использовать stunnel для этого (http://www.stunnel.org/).