@@ -96,16 +96,19 @@ namespace signalr
9696 }
9797 catch (const std::exception& e)
9898 {
99- logger.log (
100- trace_level::errors,
101- std::string (" shutdown threw an exception: " )
102- .append (e.what ()));
99+ if (logger.is_enabled (trace_level::error))
100+ {
101+ logger.log (
102+ trace_level::error,
103+ std::string (" shutdown threw an exception: " )
104+ .append (e.what ()));
105+ }
103106 }
104107 catch (...)
105108 {
106109 logger.log (
107- trace_level::errors ,
108- std::string ( " shutdown threw an unknown exception." ) );
110+ trace_level::error ,
111+ " shutdown threw an unknown exception." );
109112 }
110113 }
111114
@@ -182,9 +185,12 @@ namespace signalr
182185 }
183186 else
184187 {
185- connection->m_logger .log (trace_level::errors,
186- std::string (" connection could not be started due to: " )
187- .append (e.what ()));
188+ if (connection->m_logger .is_enabled (trace_level::error))
189+ {
190+ connection->m_logger .log (trace_level::error,
191+ std::string (" connection could not be started due to: " )
192+ .append (e.what ()));
193+ }
188194 }
189195
190196 connection->m_transport = nullptr ;
@@ -198,9 +204,12 @@ namespace signalr
198204
199205 if (!connection->change_state (connection_state::connecting, connection_state::connected))
200206 {
201- connection->m_logger .log (trace_level::errors,
202- std::string (" internal error - transition from an unexpected state. expected state: connecting, actual state: " )
203- .append (translate_connection_state (connection->get_connection_state ())));
207+ if (connection->m_logger .is_enabled (trace_level::error))
208+ {
209+ connection->m_logger .log (trace_level::error,
210+ std::string (" internal error - transition from an unexpected state. expected state: connecting, actual state: " )
211+ .append (translate_connection_state (connection->get_connection_state ())));
212+ }
204213
205214 assert (false );
206215 }
@@ -234,9 +243,12 @@ namespace signalr
234243 }
235244 catch (const std::exception& e)
236245 {
237- connection->m_logger .log (trace_level::errors,
238- std::string (" connection could not be started due to: " )
239- .append (e.what ()));
246+ if (connection->m_logger .is_enabled (trace_level::error))
247+ {
248+ connection->m_logger .log (trace_level::error,
249+ std::string (" connection could not be started due to: " )
250+ .append (e.what ()));
251+ }
240252 }
241253 connection->change_state (connection_state::disconnected);
242254 connection->m_start_completed_event .cancel ();
@@ -335,9 +347,12 @@ namespace signalr
335347 {
336348 if (disconnect_cts->is_canceled ())
337349 {
338- logger.log (trace_level::info,
339- std::string{ " ignoring stray message received after connection was restarted. message: " }
340- .append (message));
350+ if (logger.is_enabled (trace_level::info))
351+ {
352+ logger.log (trace_level::info,
353+ std::string{ " ignoring stray message received after connection was restarted. message: " }
354+ .append (message));
355+ }
341356 return ;
342357 }
343358
@@ -362,9 +377,12 @@ namespace signalr
362377 // or for the one that was already stopped. If this is the latter we just ignore it.
363378 if (disconnect_cts->is_canceled ())
364379 {
365- logger.log (trace_level::info,
366- std::string{ " ignoring stray error received after connection was restarted. error: " }
367- .append (e.what ()));
380+ if (logger.is_enabled (trace_level::info))
381+ {
382+ logger.log (trace_level::info,
383+ std::string{ " ignoring stray error received after connection was restarted. error: " }
384+ .append (e.what ()));
385+ }
368386
369387 return ;
370388 }
@@ -467,10 +485,13 @@ namespace signalr
467485 }
468486 catch (const std::exception& e)
469487 {
470- logger.log (
471- trace_level::errors,
472- std::string (" transport could not connect due to: " )
488+ if (logger.is_enabled (trace_level::error))
489+ {
490+ logger.log (
491+ trace_level::error,
492+ std::string (" transport could not connect due to: " )
473493 .append (e.what ()));
494+ }
474495
475496 callback (exception);
476497 }
@@ -479,9 +500,12 @@ namespace signalr
479500
480501 void connection_impl::process_response (std::string&& response)
481502 {
482- // TODO: log binary data better
483- m_logger.log (trace_level::messages,
484- std::string (" processing message: " ).append (response));
503+ if (m_logger.is_enabled (trace_level::debug))
504+ {
505+ // TODO: log binary data better
506+ m_logger.log (trace_level::debug,
507+ std::string (" processing message: " ).append (response));
508+ }
485509
486510 invoke_message_received (std::move (response));
487511 }
@@ -494,14 +518,17 @@ namespace signalr
494518 }
495519 catch (const std::exception &e)
496520 {
497- m_logger.log (
498- trace_level::errors,
499- std::string (" message_received callback threw an exception: " )
500- .append (e.what ()));
521+ if (m_logger.is_enabled (trace_level::error))
522+ {
523+ m_logger.log (
524+ trace_level::error,
525+ std::string (" message_received callback threw an exception: " )
526+ .append (e.what ()));
527+ }
501528 }
502529 catch (...)
503530 {
504- m_logger.log (trace_level::errors , " message_received callback threw an unknown exception" );
531+ m_logger.log (trace_level::error , " message_received callback threw an unknown exception" );
505532 }
506533 }
507534
@@ -523,7 +550,10 @@ namespace signalr
523550
524551 auto logger = m_logger;
525552
526- logger.log (trace_level::info, std::string (" sending data: " ).append (data));
553+ if (logger.is_enabled (trace_level::info))
554+ {
555+ logger.log (trace_level::info, std::string (" sending data: " ).append (data));
556+ }
527557
528558 transport->send (data, transfer_format, [logger, callback](std::exception_ptr exception)
529559 mutable {
@@ -537,10 +567,13 @@ namespace signalr
537567 }
538568 catch (const std::exception &e)
539569 {
540- logger.log (
541- trace_level::errors,
542- std::string (" error sending data: " )
543- .append (e.what ()));
570+ if (logger.is_enabled (trace_level::error))
571+ {
572+ logger.log (
573+ trace_level::error,
574+ std::string (" error sending data: " )
575+ .append (e.what ()));
576+ }
544577
545578 callback (exception);
546579 }
@@ -582,7 +615,7 @@ namespace signalr
582615
583616 while (m_start_completed_event.wait (60000 ) != 0 )
584617 {
585- m_logger.log (trace_level::errors ,
618+ m_logger.log (trace_level::error ,
586619 " internal error - stopping the connection is still waiting for the start operation to finish which should have already finished or timed out" );
587620 }
588621
@@ -629,7 +662,10 @@ namespace signalr
629662 }
630663 catch (const std::exception & ex)
631664 {
632- m_logger.log (trace_level::errors, std::string (" Connection closed with error: " ).append (ex.what ()));
665+ if (m_logger.is_enabled (trace_level::error))
666+ {
667+ m_logger.log (trace_level::error, std::string (" Connection closed with error: " ).append (ex.what ()));
668+ }
633669 }
634670 }
635671 else
@@ -643,16 +679,19 @@ namespace signalr
643679 }
644680 catch (const std::exception & e)
645681 {
646- m_logger.log (
647- trace_level::errors,
648- std::string (" disconnected callback threw an exception: " )
649- .append (e.what ()));
682+ if (m_logger.is_enabled (trace_level::error))
683+ {
684+ m_logger.log (
685+ trace_level::error,
686+ std::string (" disconnected callback threw an exception: " )
687+ .append (e.what ()));
688+ }
650689 }
651690 catch (...)
652691 {
653692 m_logger.log (
654- trace_level::errors ,
655- std::string ( " disconnected callback threw an unknown exception" ) );
693+ trace_level::error ,
694+ " disconnected callback threw an unknown exception" );
656695 }
657696 }
658697
@@ -723,11 +762,14 @@ namespace signalr
723762
724763 void connection_impl::handle_connection_state_change (connection_state old_state, connection_state new_state)
725764 {
726- m_logger.log (
727- trace_level::state_changes,
728- translate_connection_state (old_state)
729- .append (" -> " )
730- .append (translate_connection_state (new_state)));
765+ if (m_logger.is_enabled (trace_level::verbose))
766+ {
767+ m_logger.log (
768+ trace_level::verbose,
769+ translate_connection_state (old_state)
770+ .append (" -> " )
771+ .append (translate_connection_state (new_state)));
772+ }
731773
732774 // Words of wisdom (if we decide to add a state_changed callback and invoke it from here):
733775 // "Be extra careful when you add this callback, because this is sometimes being called with the m_stop_lock.
0 commit comments