Skip to content

Commit

Permalink
fix: do not remove log file when logging disabled
Browse files Browse the repository at this point in the history
- initialization of FileLogger always removed log file - this change only
removes old file when logging is enabled in current run

Resolves: NEO-7199

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
  • Loading branch information
HoppeMateusz authored and Compute-Runtime-Automation committed Apr 20, 2023
1 parent cdd91d6 commit 44273fc
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
4 changes: 3 additions & 1 deletion shared/source/utilities/logger.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,9 @@ FileLogger<globalDebugFunctionalityLevel> &fileLoggerInstance() {
template <DebugFunctionalityLevel DebugLevel>
FileLogger<DebugLevel>::FileLogger(std::string filename, const DebugVariables &flags) {
logFileName = std::move(filename);
std::remove(logFileName.c_str());
if (enabled()) {
std::remove(logFileName.c_str());
}

dumpKernels = flags.DumpKernels.get();
logApiCalls = flags.LogApiCalls.get();
Expand Down
14 changes: 14 additions & 0 deletions shared/test/unit_test/utilities/logger_tests.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,20 @@ TEST(FileLogger, GivenSameFileNameWhenCreatingNewInstanceThenOldFileIsRemoved) {
EXPECT_FALSE(fileExists(fileLogger.getLogFileName()));
}

TEST(FileLogger, GivenSameFileNameWhenCreatingNewFullyDisabledLoggerThenOldFileIsNotRemoved) {
std::string testFile = "testfile";
DebugVariables flags;
flags.LogApiCalls.set(true);
FullyEnabledFileLogger fileLogger(testFile, flags);
fileLogger.useRealFiles(true);
fileLogger.writeToFile(fileLogger.getLogFileName(), "test", 4, std::fstream::out);

EXPECT_TRUE(fileExists(fileLogger.getLogFileName()));
FullyDisabledFileLogger fileLogger2(testFile, flags);
EXPECT_TRUE(fileExists(fileLogger.getLogFileName()));
std::remove(fileLogger.getLogFileName());
}

TEST(FileLogger, GivenFlagIsFalseWhenLoggingThenOnlyCustomLogsAreDumped) {
std::string testFile = "testfile";
DebugVariables flags;
Expand Down

0 comments on commit 44273fc

Please sign in to comment.