Bem, eu peguei o rsyslog do seu git, fiz um ramificar da linha mais próxima para o que meu sistema está executando e corrigiu :
2013-11-30 13:39:59 localhost sshd[17331]: Accepted publickey for kaz from 192.1...
O que está acima é agora produzido graças a estas rsyslog.conf lines:
$template CustomFormat,"%timegenerated:::date-strftime(%Y-%m-%d %H:%M:%S)% %HOSTNAME% %syslogtag%%msg%0\n"
$ActionFileDefaultTemplate CustomFormat
O formato dado na questão é apenas %b %d %Y %H:%M:%S .
A novidade é date-strftime(...) , que especifica uma propriedade de data baseada na formatação strftime .
Isso é aplicado ao tempo na mensagem de log (seja tempo recebido ou tempo gerado).
Tendo entrado em contato com esta base de código, agora vou tomar banho e mergulhar na banheira.
Atualização de fevereiro de 2016:
Parece que este tópico surgiu em uma lista de discussão do rsyslogd em 2014, com uma referência para esta questão do Unix Stackexchange (o autor original reclama que date-strftime não está funcionando na versão do rsyslogd que ele está usando. Não está brincando!)
Isso resultou na edição 65 que ignora completamente a existência do meu patch strftime -based e segue com uma abordagem desajeitada com itens de substituição personalizados para o dia da semana, hora, ano e assim por diante. Por exemplo, para obter o ano, você precisa usar %timestamp:::date-year% . Este %timestamp:::xxx verbosity deve ser repetido para cada elemento da data!
Assim, %timestamp:::date-strftime(%Y-%m-%d %H:%M:%S) se transforma em:
%timestamp:::date-year%-%timestamp:::date-month%-%timestamp:::date-day% %timestamp:::date-hour%:%timestamp:::date-minute%:%timestamp:::date-second%
Bom sofrimento!