Skip to content

Commit 11b4476

Browse files
committed
Fix logger
1 parent b03686d commit 11b4476

File tree

5 files changed

+24
-32
lines changed

5 files changed

+24
-32
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
@@ -308,7 +308,7 @@ void PABotBase::process_ack_request(BotBaseMessage message){
308308

309309
if constexpr (!variable_length){
310310
if (message.body.size() != sizeof(Params)){
311-
m_sniffer->log("Ignoring message with invalid size.");
311+
m_logger.log("Ignoring message with invalid size.");
312312
return;
313313
}
314314
}
@@ -320,14 +320,14 @@ void PABotBase::process_ack_request(BotBaseMessage message){
320320
WriteSpinLock lg(m_state_lock, "PABotBase::process_ack_request()");
321321

322322
if (m_pending_requests.empty()){
323-
m_sniffer->log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
323+
m_logger.log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
324324
return;
325325
}
326326

327327
uint64_t full_seqnum = infer_full_seqnum(m_pending_requests, seqnum);
328328
std::map<uint64_t, PendingRequest>::iterator iter = m_pending_requests.find(full_seqnum);
329329
if (iter == m_pending_requests.end()){
330-
m_sniffer->log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
330+
m_logger.log("Unexpected request ack message: seqnum = " + std::to_string(seqnum));
331331
return;
332332
}
333333
iter->second.sanitizer.check_usage();
@@ -353,10 +353,10 @@ void PABotBase::process_ack_request(BotBaseMessage message){
353353
}
354354
return;
355355
case AckState::ACKED:
356-
m_sniffer->log("Duplicate request ack message: seqnum = " + std::to_string(seqnum));
356+
m_logger.log("Duplicate request ack message: seqnum = " + std::to_string(seqnum));
357357
return;
358358
case AckState::FINISHED:
359-
m_sniffer->log("Request ack on command finish: seqnum = " + std::to_string(seqnum));
359+
m_logger.log("Request ack on command finish: seqnum = " + std::to_string(seqnum));
360360
return;
361361
}
362362
}
@@ -365,7 +365,7 @@ void PABotBase::process_ack_command(BotBaseMessage message){
365365
auto scope_check = m_sanitizer.check_scope();
366366

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

376376
if (m_pending_commands.empty()){
377-
m_sniffer->log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
377+
m_logger.log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
378378
return;
379379
}
380380

381381
uint64_t full_seqnum = infer_full_seqnum(m_pending_commands, seqnum);
382382
auto iter = m_pending_commands.find(full_seqnum);
383383
if (iter == m_pending_commands.end()){
384-
m_sniffer->log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
384+
m_logger.log("Unexpected command ack message: seqnum = " + std::to_string(seqnum));
385385
return;
386386
}
387387
iter->second.sanitizer.check_usage();
@@ -395,10 +395,10 @@ void PABotBase::process_ack_command(BotBaseMessage message){
395395
iter->second.ack = std::move(message);
396396
return;
397397
case AckState::ACKED:
398-
m_sniffer->log("Duplicate command ack message: seqnum = " + std::to_string(seqnum));
398+
m_logger.log("Duplicate command ack message: seqnum = " + std::to_string(seqnum));
399399
return;
400400
case AckState::FINISHED:
401-
m_sniffer->log("Command ack on finished command: seqnum = " + std::to_string(seqnum));
401+
m_logger.log("Command ack on finished command: seqnum = " + std::to_string(seqnum));
402402
return;
403403
}
404404
}
@@ -407,7 +407,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
407407
auto scope_check = m_sanitizer.check_scope();
408408

409409
if (message.body.size() != sizeof(Params)){
410-
m_sniffer->log("Ignoring message with invalid size.");
410+
m_logger.log("Ignoring message with invalid size.");
411411
return;
412412
}
413413
const Params* params = (const Params*)message.body.c_str();
@@ -433,7 +433,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
433433
#endif
434434

435435
if (m_pending_commands.empty()){
436-
m_sniffer->log(
436+
m_logger.log(
437437
"Unexpected command finished message: seqnum = " + std::to_string(seqnum) +
438438
", command_seqnum = " + std::to_string(command_seqnum)
439439
);
@@ -443,7 +443,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
443443
uint64_t full_seqnum = infer_full_seqnum(m_pending_commands, command_seqnum);
444444
auto iter = m_pending_commands.find(full_seqnum);
445445
if (iter == m_pending_commands.end()){
446-
m_sniffer->log(
446+
m_logger.log(
447447
"Unexpected command finished message: seqnum = " + std::to_string(seqnum) +
448448
", command_seqnum = " + std::to_string(command_seqnum)
449449
);
@@ -462,7 +462,7 @@ void PABotBase::process_command_finished(BotBaseMessage message){
462462
m_cv.notify_all();
463463
return;
464464
case AckState::FINISHED:
465-
m_sniffer->log("Duplicate command finish: seqnum = " + std::to_string(seqnum));
465+
m_logger.log("Duplicate command finish: seqnum = " + std::to_string(seqnum));
466466
return;
467467
}
468468
}
@@ -490,7 +490,7 @@ void PABotBase::on_recv_message(BotBaseMessage message){
490490
return;
491491
case PABB_MSG_ERROR_INVALID_TYPE:{
492492
if (message.body.size() != sizeof(pabb_MsgInfoInvalidType)){
493-
m_sniffer->log("Ignoring message with invalid size.");
493+
m_logger.log("Ignoring message with invalid size.");
494494
return;
495495
}
496496
const pabb_MsgInfoInvalidType* params = (const pabb_MsgInfoInvalidType*)message.body.c_str();
@@ -505,7 +505,7 @@ void PABotBase::on_recv_message(BotBaseMessage message){
505505
}
506506
case PABB_MSG_ERROR_MISSED_REQUEST:{
507507
if (message.body.size() != sizeof(pabb_MsgInfoMissedRequest)){
508-
m_sniffer->log("Ignoring message with invalid size.");
508+
m_logger.log("Ignoring message with invalid size.");
509509
return;
510510
}
511511
const pabb_MsgInfoMissedRequest* params = (const pabb_MsgInfoMissedRequest*)message.body.c_str();

ClientSource/Connection/PABotBaseConnection.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,14 +92,14 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
9292
uint8_t length = ~m_recv_buffer[0];
9393

9494
if (m_recv_buffer[0] == 0){
95-
m_sniffer->log("Skipping zero byte.");
95+
m_logger.log("Skipping zero byte.");
9696
m_recv_buffer.pop_front();
9797
continue;
9898
}
9999

100100
// Message is too short.
101101
if (length < PABB_PROTOCOL_OVERHEAD){
102-
m_sniffer->log("Message is too short: bytes = " + std::to_string(length));
102+
m_logger.log("Message is too short: bytes = " + std::to_string(length));
103103
m_recv_buffer.pop_front();
104104
continue;
105105
}
@@ -110,7 +110,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
110110
std::string text = ascii < 32
111111
? ", ascii = " + std::to_string(ascii)
112112
: std::string(", char = ") + ascii;
113-
m_sniffer->log("Message is too long: bytes = " + std::to_string(length) + text);
113+
m_logger.log("Message is too long: bytes = " + std::to_string(length) + text);
114114
m_recv_buffer.pop_front();
115115
continue;
116116
}
@@ -133,7 +133,7 @@ void PABotBaseConnection::on_recv(const void* data, size_t bytes){
133133
// Compare
134134
// std::cout << checksumA << " / " << checksumE << std::endl;
135135
if (checksumA != checksumE){
136-
m_sniffer->log("Invalid Checksum: bytes = " + std::to_string(length));
136+
m_logger.log("Invalid Checksum: bytes = " + std::to_string(length));
137137
// std::cout << checksumA << " / " << checksumE << std::endl;
138138
// log(message_to_string(message[1], &message[2], length - PABB_PROTOCOL_OVERHEAD));
139139
m_recv_buffer.pop_front();

0 commit comments

Comments
 (0)