File tree Expand file tree Collapse file tree 6 files changed +120
-0
lines changed
Expand file tree Collapse file tree 6 files changed +120
-0
lines changed Original file line number Diff line number Diff line change @@ -86,6 +86,7 @@ log = "=0.4.28"
8686slog = " =2.7.0"
8787sloggers = " =2.2.0"
8888log4rs = " =1.4.0"
89+ logforth = { version = " =0.27.0" , features = [" append-rolling-file" , " append-single-file" ]}
8990fast_log = " =1.7.7"
9091fern = " =0.7.1"
9192flexi_logger = " =0.31.4"
@@ -168,6 +169,22 @@ path = "benches/ftlog/2_rotating_daily.rs"
168169[[bench ]]
169170name = " ftlog_3_level_off"
170171path = " benches/ftlog/3_level_off.rs"
172+ [[bench ]]
173+ name = " logforth"
174+ path = " benches/logforth/main.rs"
175+ harness = false
176+ [[bench ]]
177+ name = " logforth_1_file_async"
178+ path = " benches/logforth/1_file_async.rs"
179+ [[bench ]]
180+ name = " logforth_2_rotating_file_size_async"
181+ path = " benches/logforth/2_rotating_file_size_async.rs"
182+ [[bench ]]
183+ name = " logforth_3_rotating_daily_async"
184+ path = " benches/logforth/3_rotating_daily_async.rs"
185+ [[bench ]]
186+ name = " logforth_4_level_off"
187+ path = " benches/logforth/4_level_off.rs"
171188
172189[[example ]]
173190name = " 06_log_crate"
Original file line number Diff line number Diff line change 1+ #![ feature( test) ]
2+
3+ extern crate test;
4+
5+ #[ path = "../common/mod.rs" ]
6+ mod common;
7+
8+ use log:: { info, LevelFilter } ;
9+ use logforth:: append:: single_file:: SingleFileBuilder ;
10+ use test:: Bencher ;
11+
12+ unavailable_bench ! ( bench_1_file) ;
13+
14+ #[ bench]
15+ fn bench_2_file_async ( bencher : & mut Bencher ) {
16+ let path = common:: BENCH_LOGS_PATH . join ( "file_async.log" ) ;
17+
18+ let ( single_writer, _guard) = SingleFileBuilder :: new ( path) . build ( ) . unwrap ( ) ;
19+ logforth:: builder ( )
20+ . dispatch ( |d| d. filter ( LevelFilter :: Info ) . append ( single_writer) )
21+ . apply ( ) ;
22+
23+ bencher. iter ( || info ! ( bench_log_message!( ) ) )
24+ }
Original file line number Diff line number Diff line change 1+ #![ feature( test) ]
2+
3+ extern crate test;
4+
5+ #[ path = "../common/mod.rs" ]
6+ mod common;
7+
8+ use log:: { info, LevelFilter } ;
9+ use logforth:: append:: rolling_file:: { RollingFileBuilder , Rotation } ;
10+ use test:: Bencher ;
11+
12+ #[ bench]
13+ fn bench_3_rotating_file_size_async ( bencher : & mut Bencher ) {
14+ let ( single_writer, _guard) = RollingFileBuilder :: new ( & * common:: BENCH_LOGS_PATH )
15+ . rotation ( Rotation :: Never )
16+ . max_file_size ( common:: FILE_SIZE as usize )
17+ . filename_prefix ( "rotating_file_size_async" )
18+ . build ( )
19+ . unwrap ( ) ;
20+ logforth:: builder ( )
21+ . dispatch ( |d| d. filter ( LevelFilter :: Info ) . append ( single_writer) )
22+ . apply ( ) ;
23+
24+ bencher. iter ( || info ! ( bench_log_message!( ) ) )
25+ }
Original file line number Diff line number Diff line change 1+ #![ feature( test) ]
2+
3+ extern crate test;
4+
5+ #[ path = "../common/mod.rs" ]
6+ mod common;
7+
8+ use log:: { info, LevelFilter } ;
9+ use logforth:: append:: rolling_file:: { RollingFileBuilder , Rotation } ;
10+ use test:: Bencher ;
11+
12+ #[ bench]
13+ fn bench_4_rotating_daily_async ( bencher : & mut Bencher ) {
14+ let ( single_writer, _guard) = RollingFileBuilder :: new ( & * common:: BENCH_LOGS_PATH )
15+ . rotation ( Rotation :: Daily )
16+ . filename_prefix ( "rotating_daily_async" )
17+ . build ( )
18+ . unwrap ( ) ;
19+ logforth:: builder ( )
20+ . dispatch ( |d| d. filter ( LevelFilter :: Info ) . append ( single_writer) )
21+ . apply ( ) ;
22+
23+ bencher. iter ( || info ! ( bench_log_message!( ) ) )
24+ }
Original file line number Diff line number Diff line change 1+ #![ feature( test) ]
2+
3+ extern crate test;
4+
5+ #[ path = "../common/mod.rs" ]
6+ mod common;
7+
8+ use log:: { info, LevelFilter } ;
9+ use logforth:: append:: single_file:: SingleFileBuilder ;
10+ use test:: Bencher ;
11+
12+ #[ bench]
13+ fn bench_5_level_off ( bencher : & mut Bencher ) {
14+ let path = common:: BENCH_LOGS_PATH . join ( "level_off.log" ) ;
15+
16+ let ( single_writer, _guard) = SingleFileBuilder :: new ( path) . build ( ) . unwrap ( ) ;
17+ logforth:: builder ( )
18+ . dispatch ( |d| d. filter ( LevelFilter :: Off ) . append ( single_writer) )
19+ . apply ( ) ;
20+
21+ bencher. iter ( || info ! ( bench_log_message!( ) ) )
22+ }
Original file line number Diff line number Diff line change 1+ #![ feature( test) ]
2+
3+ extern crate test;
4+
5+ #[ path = "../common/mod.rs" ]
6+ mod common;
7+
8+ aggregate_bench_main ! ( ) ;
You can’t perform that action at this time.
0 commit comments