File tree 2 files changed +29
-2
lines changed
2 files changed +29
-2
lines changed Original file line number Diff line number Diff line change @@ -268,6 +268,18 @@ describe "Utils" do
268
268
CNFManager .sample_cleanup(config_file: " sample-cnfs/sample-coredns-cnf" , verbose: true )
269
269
end
270
270
271
+ it " 'logger' should write logs to the file when LOG_PATH is set" , tags: [" logger" ] do
272
+ response_s = ` LOG_PATH=spec-test-testsuite.log ./cnf-testsuite test`
273
+ $? .success?.should be_true
274
+ (/ERROR -- cnf-testsuite: error test/ =~ response_s).should be_nil
275
+ File .exists?(" spec-test-testsuite.log" ).should be_true
276
+ (/ERROR -- cnf-testsuite: error test/ =~ File .read(" spec-test-testsuite.log" )).should_not be_nil
277
+ ensure
278
+ if File .exists?(" spec-test-testsuite.log" )
279
+ File .delete(" spec-test-testsuite.log" )
280
+ end
281
+ end
282
+
271
283
it " '#update_yml' should update the value for a key in a yml file" , tags: [" logger" ] do
272
284
begin
273
285
update_yml(" spec/fixtures/cnf-testsuite.yml" , " release_name" , " coredns --set worker-node='kind-control-plane'" )
Original file line number Diff line number Diff line change 79
79
80
80
# this first line necessary to make sure our custom formatter
81
81
# is used in the default error log line also
82
- Log .setup(Log ::Severity ::Error , Log :: IOBackend .new( formatter: log_formatter) )
83
- Log .setup(loglevel, Log :: IOBackend .new( formatter: log_formatter) )
82
+ Log .setup(Log ::Severity ::Error , log_backend )
83
+ Log .setup(loglevel, log_backend )
84
84
85
+ def log_backend
86
+ if ENV .has_key?(" LOGPATH" ) || ENV .has_key?(" LOG_PATH" )
87
+ log_file = ENV .has_key?(" LOGPATH" ) ? ENV [" LOGPATH" ] : ENV [" LOG_PATH" ]
88
+ else
89
+ log_file = " "
90
+ end
91
+
92
+ if log_file.empty?
93
+ backend = Log ::IOBackend .new(formatter: log_formatter)
94
+ else
95
+ log_io = File .open(log_file, " a" )
96
+ backend = Log ::IOBackend .new(io: log_io, formatter: log_formatter)
97
+ end
98
+ backend
99
+ end
85
100
86
101
def loglevel
87
102
levelstr = " " # default to unset
You can’t perform that action at this time.
0 commit comments