Skip to content

Commit 8103789

Browse files
committed
Fix logger
1 parent d0f8707 commit 8103789

File tree

5 files changed

+28
-36
lines changed

5 files changed

+28
-36
lines changed

ClientSource/Connection/MessageLogger.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,6 @@ void SerialLogger::log(const std::string& msg, Color color){
9696
m_logger.log(msg, color);
9797
}
9898
}
99-
void SerialLogger::log(std::string msg){
100-
if (ok_to_log()){
101-
m_logger.log(msg, COLOR_DARKGREEN);
102-
}
103-
}
10499

105100
bool SerialLogger::ok_to_log(){
106101
WallClock now = current_time();

ClientSource/Connection/MessageLogger.h

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
namespace PokemonAutomation{
1818

1919

20-
class MessageLogger : public MessageSniffer{
20+
class MessageLogger : public Logger, public MessageSniffer{
2121
public:
2222
MessageLogger(bool log_everything = false)
2323
: m_log_everything_owner(log_everything)
@@ -29,7 +29,6 @@ class MessageLogger : public MessageSniffer{
2929
{}
3030

3131

32-
// virtual void log(std::string msg) override;
3332
virtual void on_send(const BotBaseMessage& message, bool is_retransmit) override;
3433
virtual void on_recv(const BotBaseMessage& message) override;
3534

@@ -40,13 +39,12 @@ class MessageLogger : public MessageSniffer{
4039

4140

4241

43-
class SerialLogger : public Logger, public MessageLogger{
42+
class SerialLogger : public MessageLogger{
4443
public:
4544
SerialLogger(Logger& logger, bool log_everything);
4645

47-
virtual void log(const char* msg, Color color = Color()) override;
48-
virtual void log(const std::string& msg, Color color = Color()) override;
49-
virtual void log(std::string msg) override;
46+
virtual void log(const char* msg, Color color = COLOR_DARKGREEN) override;
47+
virtual void log(const std::string& msg, Color color = COLOR_DARKGREEN) override;
5048

5149
private:
5250
bool ok_to_log();

ClientSource/Connection/MessageSniffer.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ struct BotBaseMessage;
1717

1818
class MessageSniffer{
1919
public:
20-
virtual void log(std::string msg){}
2120
virtual void on_send(const BotBaseMessage& message, bool is_retransmit){}
2221
virtual void on_recv(const BotBaseMessage& message){}
2322
};

ClientSource/Connection/PABotBase.cpp

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ void PABotBase::process_ack_request(BotBaseMessage message){
312312

313313
if constexpr (!variable_length){
314314
if (message.body.size() != sizeof(Params)){
315-
m_sniffer->log("Ignoring message with invalid size.");
315+
m_logger.log("Ignoring message with invalid size.");
316316
return;
317317
}
318318
}
@@ -324,14 +324,14 @@ void PABotBase::process_ack_request(BotBaseMessage message){
324324
WriteSpinLock lg(m_state_lock, "PABotBase::process_ack_request()");
325325

326326
if (m_pending_requests.empty()){
327-
m_sniffer->log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
327+
m_logger.log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
328328
return;
329329
}
330330

331331
uint64_t full_seqnum = infer_full_seqnum(m_pending_requests, seqnum);
332332
std::map<uint64_t, PendingRequest>::iterator iter = m_pending_requests.find(full_seqnum);
333333
if (iter == m_pending_requests.end()){
334-
m_sniffer->log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
334+
m_logger.log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
335335
return;
336336
}
337337
iter->second.sanitizer.check_usage();
@@ -357,10 +357,10 @@ void PABotBase::process_ack_request(BotBaseMessage message){
357357
}
358358
return;
359359
case AckState::ACKED:
360-
m_sniffer->log("Duplicate request ack message: seqnum = " + std::to_string(seqnum));
360+
m_logger.log("Duplicate request ack message: seqnum = " + std::to_string(seqnum));
361361
return;
362362
case AckState::FINISHED:
363-
m_sniffer->log("Request ack on command finish: seqnum = " + std::to_string(seqnum));
363+
m_logger.log("Request ack on command finish: seqnum = " + std::to_string(seqnum));
364364
return;
365365
}
366366
}
@@ -369,7 +369,7 @@ void PABotBase::process_ack_command(BotBaseMessage message){
369369
auto scope_check = m_sanitizer.check_scope();
370370

371371
if (message.body.size() != sizeof(Params)){
372-
m_sniffer->log("Ignoring message with invalid size.");
372+
m_logger.log("Ignoring message with invalid size.");
373373
return;
374374
}
375375
const Params* params = (const Params*)message.body.c_str();
@@ -378,14 +378,14 @@ void PABotBase::process_ack_command(BotBaseMessage message){
378378
WriteSpinLock lg(m_state_lock, "PABotBase::process_ack_command()");
379379

380380
if (m_pending_commands.empty()){
381-
m_sniffer->log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
381+
m_logger.log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
382382
return;
383383
}
384384

385385
uint64_t full_seqnum = infer_full_seqnum(m_pending_commands, seqnum);
386386
auto iter = m_pending_commands.find(full_seqnum);
387387
if (iter == m_pending_commands.end()){
388-
m_sniffer->log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
388+
m_logger.log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
389389
return;
390390
}
391391
iter->second.sanitizer.check_usage();
@@ -399,10 +399,10 @@ void PABotBase::process_ack_command(BotBaseMessage message){
399399
iter->second.ack = std::move(message);
400400
return;
401401
case AckState::ACKED:
402-
m_sniffer->log("Duplicate command ack message: seqnum = " + std::to_string(seqnum));
402+
m_logger.log("Duplicate command ack message: seqnum = " + std::to_string(seqnum));
403403
return;
404404
case AckState::FINISHED:
405-
m_sniffer->log("Command ack on finished command: seqnum = " + std::to_string(seqnum));
405+
m_logger.log("Command ack on finished command: seqnum = " + std::to_string(seqnum));
406406
return;
407407
}
408408
}
@@ -411,7 +411,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
411411
auto scope_check = m_sanitizer.check_scope();
412412

413413
if (message.body.size() != sizeof(Params)){
414-
m_sniffer->log("Ignoring message with invalid size.");
414+
m_logger.log("Ignoring message with invalid size.");
415415
return;
416416
}
417417
const Params* params = (const Params*)message.body.c_str();
@@ -437,7 +437,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
437437
#endif
438438

439439
if (m_pending_commands.empty()){
440-
m_sniffer->log(
440+
m_logger.log(
441441
"Unexpected command finished message: seqnum = " + std::to_string(seqnum) +
442442
", command_seqnum = " + std::to_string(command_seqnum)
443443
);
@@ -447,7 +447,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
447447
uint64_t full_seqnum = infer_full_seqnum(m_pending_commands, command_seqnum);
448448
auto iter = m_pending_commands.find(full_seqnum);
449449
if (iter == m_pending_commands.end()){
450-
m_sniffer->log(
450+
m_logger.log(
451451
"Unexpected command finished message: seqnum = " + std::to_string(seqnum) +
452452
", command_seqnum = " + std::to_string(command_seqnum)
453453
);
@@ -466,7 +466,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
466466
m_cv.notify_all();
467467
return;
468468
case AckState::FINISHED:
469-
m_sniffer->log("Duplicate command finish: seqnum = " + std::to_string(seqnum));
469+
m_logger.log("Duplicate command finish: seqnum = " + std::to_string(seqnum));
470470
return;
471471
}
472472
}
@@ -494,7 +494,7 @@ void PABotBase::on_recv_message(BotBaseMessage message){
494494
return;
495495
case PABB_MSG_ERROR_INVALID_TYPE:{
496496
if (message.body.size() != sizeof(pabb_MsgInfoInvalidType)){
497-
m_sniffer->log("Ignoring message with invalid size.");
497+
m_logger.log("Ignoring message with invalid size.");
498498
return;
499499
}
500500
const pabb_MsgInfoInvalidType* params = (const pabb_MsgInfoInvalidType*)message.body.c_str();
@@ -509,7 +509,7 @@ void PABotBase::on_recv_message(BotBaseMessage message){
509509
}
510510
case PABB_MSG_ERROR_MISSED_REQUEST:{
511511
if (message.body.size() != sizeof(pabb_MsgInfoMissedRequest)){
512-
m_sniffer->log("Ignoring message with invalid size.");
512+
m_logger.log("Ignoring message with invalid size.");
513513
return;
514514
}
515515
const pabb_MsgInfoMissedRequest* params = (const pabb_MsgInfoMissedRequest*)message.body.c_str();

ClientSource/Connection/PABotBaseConnection.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,16 +92,16 @@ void PABotBaseConnection::push_error_byte(ErrorBatchType type, char byte){
9292
case ErrorBatchType::NO_ERROR_:
9393
break;
9494
case ErrorBatchType::ZERO_BYTES:
95-
m_sniffer->log("Skipped " + std::to_string(m_current_error_batch.size()) + " zero byte(s).");
95+
m_logger.log("Skipped " + std::to_string(m_current_error_batch.size()) + " zero byte(s).");
9696
break;
9797
case ErrorBatchType::FF_BYTES:
98-
m_sniffer->log("Skipped " + std::to_string(m_current_error_batch.size()) + " 0xff byte(s).");
98+
m_logger.log("Skipped " + std::to_string(m_current_error_batch.size()) + " 0xff byte(s).");
9999
break;
100100
case ErrorBatchType::ASCII_BYTES:
101-
m_sniffer->log("Received possible ASCII: " + m_current_error_batch);
101+
m_logger.log("Received possible ASCII: " + m_current_error_batch);
102102
break;
103103
case ErrorBatchType::OTHER:
104-
// m_sniffer->log("Skipped " + std::to_string(m_current_error_batch.size()) + " invalid length byte(s).");
104+
// m_logger.log("Skipped " + std::to_string(m_current_error_batch.size()) + " invalid length byte(s).");
105105
break;
106106
}
107107

@@ -119,7 +119,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
119119
uint8_t length = ~m_recv_buffer[0];
120120

121121
if (m_recv_buffer[0] == 0){
122-
// m_sniffer->log("Skipping zero byte.");
122+
// m_logger.log("Skipping zero byte.");
123123
push_error_byte(ErrorBatchType::ZERO_BYTES, 0);
124124
m_recv_buffer.pop_front();
125125
continue;
@@ -130,7 +130,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
130130
if (length == 0){
131131
push_error_byte(ErrorBatchType::FF_BYTES, ~length);
132132
}else{
133-
m_sniffer->log("Message is too short: bytes = " + std::to_string(length));
133+
m_logger.("Message is too short: bytes = " + std::to_string(length));
134134
push_error_byte(ErrorBatchType::OTHER, ~length);
135135
}
136136
m_recv_buffer.pop_front();
@@ -143,7 +143,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
143143
// std::string text = ascii < 32
144144
// ? ", ascii = " + std::to_string(ascii)
145145
// : std::string(", char = ") + ascii;
146-
// m_sniffer->log("Message is too long: bytes = " + std::to_string(length) + text);
146+
// m_logger.log("Message is too long: bytes = " + std::to_string(length) + text);
147147
push_error_byte(ErrorBatchType::ASCII_BYTES, ~length);
148148
m_recv_buffer.pop_front();
149149
continue;
@@ -170,7 +170,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
170170
// Compare
171171
// std::cout << checksumA << " / " << checksumE << std::endl;
172172
if (checksumA != checksumE){
173-
m_sniffer->log("Invalid Checksum: bytes = " + std::to_string(length));
173+
m_logger.log("Invalid Checksum: bytes = " + std::to_string(length));
174174
// std::cout << checksumA << " / " << checksumE << std::endl;
175175
// log(message_to_string(message[1], &message[2], length - PABB_PROTOCOL_OVERHEAD));
176176
m_recv_buffer.pop_front();

0 commit comments

Comments
 (0)