Closed malopez16 closed 5 years ago
Hola,
Correcto, no es necesario almacenar logs antiguos. Necesitamos el log de la última ejecución o de la ejecución actual si el servidor está corriendo.
El nombre del paquete es el MessageType. Según el enunciado, este string debe ser impreso en el log junto al timestamp y el contenido del paquete.
Sí, el formato del timestamp es libre. La idea es que sea fácilmente interpretable por un humano (esto descartaría el formato epoch o de Unix)
Saludos!
Gracias por responder! Entonces no es necesario usar exactamente la función que indican para obtener la hora, correcto? no funciona para los sistemas que usamos.. porque creo que está obsoleta (me pasa lo del link que dejé) La alternativa es usar la segunda función que mencioné (localtime). Está bien?
Sí, está bien, puedes usar la función que desees :)
Hola! otra consulta, el contenido enviado/recibido se refiere al payload ?
@francisca1 Hola, se refiere a tofos los bytes enviados/recibidos a través del socket, por lo que debe estar el ID, PayloadSize y Payload. Además, cada byte debe ser impreso según el tipo de dato que corresponden. (%d
si son enteros o %s
si son strings)
Estoy a punto de subir unos ejecutables para que vean como debería ser el log!
aaah ok gracias!, otra cosa, el log solo es gestionado en el server verdad? si esta en server y cliente habrian muchos paquetes repetidos, uno enviado por el cliente lo recibe el servidor
Según el enunciado, solo se requiere en el servidor. Concuerdo en que cada paquete aparecerá repetido, pero te aconsejo implementarlo también en el cliente porque será muy muy útil para debuggear cuando tu cliente se conecte al servidor de otro grupo. Con ese log podrás demostrar que el servidor del otro grupo está enviando mal y tu cliente está recibiendo bien.
Saludos!
Hola! Con respecto al log:
Cuando el servidor se inicia, luego de haber estado apagado, debemos borrar el log de la ejecución anterior? (el log debe partir limpio cada vez, correcto?)
Con "Nombre" del paquete se refieren al type id? Tenemos que hacer la traducción al nombre de ID a meesage type y guardar eso? o simplemente guardar el paquete que llegó?
Tenemos libertad con el formato de la timestamp? Creo que gettimeofday no es la forma más apropiada para obtener la hora convencionalmente (en linux no funciona por esto) pero sí es muy fácil sacar algún dato que no se repite, como por ejemplo, la cantidad de segundos. (Localtime sirve más para la hora exacta)
Gracias!
Saludos :)