summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/daemon/dlt-daemon.c5
-rw-r--r--src/shared/dlt_common.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/src/daemon/dlt-daemon.c b/src/daemon/dlt-daemon.c
index cdfddec..5fee93e 100644
--- a/src/daemon/dlt-daemon.c
+++ b/src/daemon/dlt-daemon.c
@@ -843,6 +843,11 @@ int dlt_daemon_local_init_p1(DltDaemon *daemon, DltDaemonLocal *daemon_local, in
if (daemon_local->flags.dflag)
dlt_daemon_daemonize(daemon_local->flags.vflag);
+ /* Re-Initialize internal logging facility after fork */
+ dlt_log_set_filename(daemon_local->flags.loggingFilename);
+ dlt_log_set_level(daemon_local->flags.loggingLevel);
+ dlt_log_init(daemon_local->flags.loggingMode);
+
/* initialise structure to use DLT file */
ret = dlt_file_init(&(daemon_local->file), daemon_local->flags.vflag);
diff --git a/src/shared/dlt_common.c b/src/shared/dlt_common.c
index 0768880..c44be67 100644
--- a/src/shared/dlt_common.c
+++ b/src/shared/dlt_common.c
@@ -1762,7 +1762,7 @@ void dlt_log_init(int mode)
if (logging_mode == DLT_LOG_TO_FILE) {
/* internal logging to file */
- logging_handle = fopen(logging_filename, "w");
+ logging_handle = fopen(logging_filename, "a");
if (logging_handle == NULL) {
printf("Internal log file %s cannot be opened!\n", logging_filename);