Since virLogParseAndDefineOutputs is going to be stripped from 'output defining'
logic, replace all relevant occurrences with virLogSetOutputs call to make the
change transparent to all original callers (daemons mostly).
Signed-off-by: Erik Skultety <eskultet@redhat.com>
if (virLogGetNbFilters() == 0)
virLogParseAndDefineFilters(config->log_filters);
- if (virLogGetNbOutputs() == 0)
- virLogParseAndDefineOutputs(config->log_outputs);
+ if (config->log_outputs && virLogGetNbOutputs() == 0)
+ virLogSetOutputs(config->log_outputs);
/*
* Command line override for --verbose
if (virAsprintf(&tmp, "%d:journald", priority) < 0)
goto error;
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
}
if (virAsprintf(&tmp, "%d:stderr", virLogGetDefaultPriority()) < 0)
goto error;
}
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
if (virLogGetNbFilters() == 0)
virLogParseAndDefineFilters(config->log_filters);
- if (virLogGetNbOutputs() == 0)
- virLogParseAndDefineOutputs(config->log_outputs);
+ if (config->log_outputs && virLogGetNbOutputs() == 0)
+ virLogSetOutputs(config->log_outputs);
/*
* Command line override for --verbose
if (access("/run/systemd/journal/socket", W_OK) >= 0) {
if (virAsprintf(&tmp, "%d:journald", virLogGetDefaultPriority()) < 0)
goto error;
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
}
if (virAsprintf(&tmp, "%d:stderr", virLogGetDefaultPriority()) < 0)
goto error;
}
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
if (virLogGetNbFilters() == 0)
virLogParseAndDefineFilters(config->log_filters);
- if (virLogGetNbOutputs() == 0)
- virLogParseAndDefineOutputs(config->log_outputs);
+ if (config->log_outputs && virLogGetNbOutputs() == 0)
+ virLogSetOutputs(config->log_outputs);
/*
* Command line override for --verbose
if (access("/run/systemd/journal/socket", W_OK) >= 0) {
if (virAsprintf(&tmp, "%d:journald", virLogGetDefaultPriority()) < 0)
goto error;
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
}
if (virAsprintf(&tmp, "%d:stderr", virLogGetDefaultPriority()) < 0)
goto error;
}
- virLogParseAndDefineOutputs(tmp);
+ virLogSetOutputs(tmp);
VIR_FREE(tmp);
}
virLogParseAndDefineFilters(debugEnv);
debugEnv = virGetEnvAllowSUID("LIBVIRT_LOG_OUTPUTS");
if (debugEnv && *debugEnv)
- virLogParseAndDefineOutputs(debugEnv);
+ virLogSetOutputs(debugEnv);
}
#ifdef TEST_OOM
char *oomstr;
#endif
+ size_t noutputs = 0;
+ virLogOutputPtr output = NULL;
+ virLogOutputPtr *outputs = NULL;
if (getenv("VIR_TEST_FILE_ACCESS"))
VIRT_TEST_PRELOAD(TEST_MOCK);
virLogSetFromEnv();
if (!getenv("LIBVIRT_DEBUG") && !virLogGetNbOutputs()) {
- if (virLogDefineOutput(virtTestLogOutput, virtTestLogClose, &testLog,
- VIR_LOG_DEBUG, VIR_LOG_TO_STDERR, NULL, 0) < 0)
+ if (!(output = virLogOutputNew(virtTestLogOutput, virtTestLogClose,
+ &testLog, VIR_LOG_DEBUG,
+ VIR_LOG_TO_STDERR, NULL)) ||
+ VIR_APPEND_ELEMENT(outputs, noutputs, output) < 0 ||
+ virLogDefineOutputs(outputs, noutputs) < 0) {
+ virLogOutputFree(output);
+ virLogOutputListFree(outputs, noutputs);
return EXIT_FAILURE;
+ }
}
if ((testRange = getenv("VIR_TEST_RANGE")) != NULL) {
fprintf(stderr, "%*s", 40 - (int)(testCounter % 40), "");
fprintf(stderr, " %-3zu %s\n", testCounter, ret == 0 ? "OK" : "FAIL");
}
+ virLogReset();
VIR_FREE(perl);
return ret;
}
{
int ret = -1;
int noutputs;
+ virLogOutputPtr *outputs = NULL;
const struct testLogData *data = opaque;
- noutputs = virLogParseAndDefineOutputs(data->str);
+ noutputs = virLogParseOutputs(data->str, &outputs);
if (noutputs < 0) {
if (!data->pass) {
VIR_TEST_DEBUG("Got expected error: %s\n",
ret = 0;
cleanup:
- virLogReset();
+ virLogOutputListFree(outputs, noutputs);
return ret;
}