¿Cómo obtener resultados sincronizados con la hora (diferentes zonas horarias en los servidores)?

¿Cómo obtener resultados sincronizados con la hora (diferentes zonas horarias en los servidores)?

Entonces imagine que hay ~100 servidores con diferentes zonas horarias (no todas diferentes, pero sí muchas, muchas zonas horarias). Hay resultados en los registros del servidor como:

server1:BFE4C025   0420201413 P H sysplanar0     UNDETERMINED ERROR
server2:BFE4C025   0421032413 P H sysplanar0     UNDETERMINED ERROR

-> para que estén en la hora del servidor (diferentes zonas horarias) ->

0420201413 = 2013.04.20. 20:14
0421032413 = 2013.04.21 03:24

Convertir por ejemplo: 0421032413 a 2013.04.21 03:24 es trivial. Pero: nuevamente, la hora del servidor difiere, si doy el comando "fecha" en estos dos servidores exactamente al mismo tiempo:

server1:Tue Apr 23 07:23:24 EDT 2013
server2:Tue Apr 23 13:23:24 MESZ 2013

Entiendo esto. Pero necesito los registros mencionados (solo esas pocas líneas/servidor) en una zona horaria. ¿Por qué? Porque es muy, muy útil saber cuándo sucedieron exactamente las cosas en tu zona horaria, por ejemplo: CET TZ.

q: ¿Cómo puedo convertir la hora de los registros del servidor a la hora de Europa Central?

Respuesta1

Si solo desea convertir archivos syslog existentes, puede, por ejemplo, utilizar un pequeño programa python/perl/ruby para cambiar Tue Apr 23 07:23:24 EDT 2013algo con UTC (o CET).

Si desea tener más control sobre el formato de hora escrito en el archivo de registro, es posible que desee consultar syslog-ng. Su tsformat()función le permite configurar el formato de hora, por ejemplo, en iso8601.

Habiendo tenido que trabajar con servidores en 5 zonas horarias, recomiendo encarecidamente utilizar marcas de tiempo UTC. Dado que el horario de verano no comienza al mismo tiempo, hacer un seguimiento de lo que CET (o CEST) está en PST (o ya es PDT) es una pesadilla.

Respuesta2

Puede utilizarlo datepara imprimir la fecha y la hora y almacenarla con el mensaje de registro.

$ TZ='Europe/Warsaw' date
wto, 23 kwi 2013, 17:11:48 CEST
$ TZ='America/Los_Angeles' date
wto, 23 kwi 2013, 08:11:56 PDT
$ date --universal
wto, 23 kwi 2013, 15:13:14 UTC

Úselo tzselectpara buscar zonas horarias.

información relacionada