Skip to content

Commit 4b1f9ee

Browse files
committed
Change loader log file location
Signed-off-by: Jemale Lockett <[email protected]>
1 parent b5def34 commit 4b1f9ee

File tree

2 files changed

+38
-2
lines changed

2 files changed

+38
-2
lines changed

source/loader/ze_loader.cpp

+37-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@
1010
#include "driver_discovery.h"
1111
#include <iostream>
1212

13+
#ifdef __linux__
14+
#include <unistd.h>
15+
#include <sys/types.h>
16+
#include <pwd.h>
17+
#endif // __linux__
18+
1319
namespace loader
1420
{
1521
///////////////////////////////////////////////////////////////////////////////
@@ -261,16 +267,45 @@ namespace loader
261267
auto discoveredDrivers = discoverEnabledDrivers();
262268
std::string loadLibraryErrorValue;
263269

264-
270+
const char *home_dir = "";
271+
#ifdef _WIN32
272+
std::string home_dir_string = getenv_string("USERPROFILE");
273+
if (home_dir == ""){
274+
auto home_drive = getenv_string("HOMEDRIVE");
275+
auto home_path = getenv_string("HOMEPATH");
276+
if ((home_drive != "") && (home_path != "")) {
277+
home_dir_string = home_drive + home_path;
278+
} else {
279+
home_dir_string = ".";
280+
}
281+
}
282+
home_dir = home_dir_string.c_str();
283+
#else
284+
home_dir = getenv("HOME");
285+
286+
if ((home_dir = getenv("HOME")) == NULL) {
287+
home_dir = getpwuid(getuid())->pw_dir;
288+
if (home_dir == NULL) {
289+
home_dir = ".";
290+
}
291+
}
292+
#endif
265293
auto loader_file = getenv_string("ZEL_LOADER_LOG_FILE");
266294
if (loader_file.empty()){
267295
loader_file = LOADER_LOG_FILE_DEFAULT;
268296
}
269297

298+
std::string full_log_file_path = "";
299+
300+
#ifdef _WIN32
301+
full_log_file_path = std::string(home_dir) + "\\" + LOADER_LOG_FILE_DIRECTORY + "\\" + loader_file;
302+
#else
303+
full_log_file_path = std::string(home_dir) + "/" + LOADER_LOG_FILE_DIRECTORY + "/" + loader_file;
304+
#endif
270305
auto logging_enabled = getenv_tobool( "ZEL_ENABLE_LOADER_LOGGING" );
271306

272307
auto log_level = getenv_string("ZEL_LOADER_LOGGING_LEVEL");
273-
zel_logger = std::make_shared<Logger>("ze_loader", loader_file, !log_level.empty() ? log_level : "warn", logging_enabled);
308+
zel_logger = std::make_shared<Logger>("ze_loader", full_log_file_path, !log_level.empty() ? log_level : "warn", logging_enabled);
274309
if ((log_level == "trace") && !debugTraceEnabled) {
275310
debugTraceEnabled = true;
276311
zel_logger->log_to_console = false;

source/utils/logging.h

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#define level_zero_loader_LOGGING_HPP
1111

1212
#define LOADER_LOG_FILE_DEFAULT "ze_loader.log"
13+
#define LOADER_LOG_FILE_DIRECTORY ".oneapi_logs"
1314

1415
#include <iostream>
1516
#include <sstream>

0 commit comments

Comments
 (0)