@@ -30,8 +30,11 @@ use std::sync::Arc;
3030
3131use cubesql:: telemetry:: LocalReporter ;
3232use cubesql:: { telemetry:: ReportingLogger , CubeError } ;
33+ #[ cfg( feature = "async-log" ) ]
34+ use log_nonblock:: NonBlockingLoggerBuilder ;
3335use neon:: prelude:: * ;
3436use neon:: result:: Throw ;
37+ #[ cfg( not( feature = "async-log" ) ) ]
3538use simple_logger:: SimpleLogger ;
3639
3740pub ( crate ) struct SQLInterface {
@@ -578,15 +581,34 @@ pub fn setup_logger(mut cx: FunctionContext) -> JsResult<JsUndefined> {
578581 Ok ( cx. undefined ( ) )
579582}
580583
581- pub fn create_logger ( log_level : log:: Level ) -> SimpleLogger {
582- SimpleLogger :: new ( )
584+ #[ cfg( not( feature = "async-log" ) ) ]
585+ pub fn create_logger ( log_level : log:: Level ) -> Box < dyn log:: Log > {
586+ let logger = SimpleLogger :: new ( )
587+ . with_level ( log:: Level :: Error . to_level_filter ( ) )
588+ . with_module_level ( "cubesql" , log_level. to_level_filter ( ) )
589+ . with_module_level ( "cube_xmla" , log_level. to_level_filter ( ) )
590+ . with_module_level ( "cube_xmla_engine" , log_level. to_level_filter ( ) )
591+ . with_module_level ( "cubejs_native" , log_level. to_level_filter ( ) )
592+ . with_module_level ( "datafusion" , log:: Level :: Warn . to_level_filter ( ) )
593+ . with_module_level ( "pg_srv" , log:: Level :: Warn . to_level_filter ( ) ) ;
594+
595+ Box :: new ( logger)
596+ }
597+
598+ #[ cfg( feature = "async-log" ) ]
599+ pub fn create_logger ( log_level : log:: Level ) -> Box < dyn log:: Log > {
600+ let logger = NonBlockingLoggerBuilder :: new ( )
583601 . with_level ( log:: Level :: Error . to_level_filter ( ) )
584602 . with_module_level ( "cubesql" , log_level. to_level_filter ( ) )
585603 . with_module_level ( "cube_xmla" , log_level. to_level_filter ( ) )
586604 . with_module_level ( "cube_xmla_engine" , log_level. to_level_filter ( ) )
587605 . with_module_level ( "cubejs_native" , log_level. to_level_filter ( ) )
588606 . with_module_level ( "datafusion" , log:: Level :: Warn . to_level_filter ( ) )
589607 . with_module_level ( "pg_srv" , log:: Level :: Warn . to_level_filter ( ) )
608+ . init ( )
609+ . unwrap ( ) ;
610+
611+ Box :: new ( logger)
590612}
591613
592614pub fn setup_local_logger ( log_level : log:: Level ) {
0 commit comments