94 lines
3.1 KiB
Diff
94 lines
3.1 KiB
Diff
diff -up ./plugins/imjournal/imjournal.c.default-tag ./plugins/imjournal/imjournal.c
|
|
--- ./plugins/imjournal/imjournal.c.default-tag 2018-05-17 08:50:11.416418022 -0400
|
|
+++ ./plugins/imjournal/imjournal.c 2018-05-17 08:53:02.884418022 -0400
|
|
@@ -78,6 +78,7 @@ static struct configSettings_s {
|
|
int bWorkAroundJournalBug; /* deprecated, left for backwards compatibility only */
|
|
int bFsync;
|
|
int bRemote;
|
|
+ char *dfltTag;
|
|
} cs;
|
|
|
|
static rsRetVal facilityHdlr(uchar **pp, void *pVal);
|
|
@@ -93,7 +94,8 @@ static struct cnfparamdescr modpdescr[]
|
|
{ "usepid", eCmdHdlrString, 0 },
|
|
{ "workaroundjournalbug", eCmdHdlrBinary, 0 },
|
|
{ "fsync", eCmdHdlrBinary, 0 },
|
|
- { "remote", eCmdHdlrBinary, 0 }
|
|
+ { "remote", eCmdHdlrBinary, 0 },
|
|
+ { "defaulttag", eCmdHdlrGetWord, 0 }
|
|
};
|
|
static struct cnfparamblk modpblk =
|
|
{ CNFPARAMBLK_VERSION,
|
|
@@ -104,6 +106,7 @@ static struct cnfparamblk modpblk =
|
|
#define DFLT_persiststateinterval 10
|
|
#define DFLT_SEVERITY pri2sev(LOG_NOTICE)
|
|
#define DFLT_FACILITY pri2fac(LOG_USER)
|
|
+#define DFLT_TAG "journal"
|
|
|
|
static int bLegacyCnfModGlobalsPermitted = 1;/* are legacy module-global config parameters permitted? */
|
|
|
|
@@ -268,7 +271,7 @@ readjournal(void)
|
|
|
|
/* Information from messages */
|
|
char *message = NULL;
|
|
- char *sys_iden;
|
|
+ char *sys_iden = NULL;
|
|
char *sys_iden_help = NULL;
|
|
|
|
const void *get;
|
|
@@ -331,7 +334,7 @@ readjournal(void)
|
|
if (journalGetData("SYSLOG_IDENTIFIER", &get, &length) >= 0) {
|
|
CHKiRet(sanitizeValue(((const char *)get) + 18, length - 18, &sys_iden));
|
|
} else {
|
|
- CHKmalloc(sys_iden = strdup("journal"));
|
|
+ CHKmalloc(sys_iden = strdup(cs.dfltTag));
|
|
}
|
|
|
|
/* trying to get PID, default is "SYSLOG_PID" property */
|
|
@@ -654,6 +657,11 @@ CODESTARTrunInput
|
|
"\"usepidfromsystem\" is depricated, use \"usepid\" instead");
|
|
}
|
|
|
|
+ if (cs.dfltTag == NULL) {
|
|
+ cs.dfltTag = strdup(DFLT_TAG);
|
|
+ }
|
|
+
|
|
+
|
|
if (cs.usePid && (strcmp(cs.usePid, "system") == 0)) {
|
|
pidFieldName = "_PID";
|
|
bPidFallBack = 0;
|
|
@@ -732,6 +740,7 @@ CODESTARTbeginCnfLoad
|
|
cs.bWorkAroundJournalBug = 1;
|
|
cs.bFsync = 0;
|
|
cs.bRemote = 0;
|
|
+ cs.dfltTag = NULL;
|
|
ENDbeginCnfLoad
|
|
|
|
|
|
@@ -754,6 +763,7 @@ BEGINfreeCnf
|
|
CODESTARTfreeCnf
|
|
free(cs.stateFile);
|
|
free(cs.usePid);
|
|
+ free(cs.dfltTag);
|
|
free(journalContext.cursor);
|
|
statsobj.Destruct(&(statsCounter.stats));
|
|
ENDfreeCnf
|
|
@@ -832,6 +842,8 @@ CODESTARTsetModCnf
|
|
cs.bFsync = (int) pvals[i].val.d.n;
|
|
} else if (!strcmp(modpblk.descr[i].name, "remote")) {
|
|
cs.bRemote = (int) pvals[i].val.d.n;
|
|
+ } else if (!strcmp(modpblk.descr[i].name, "defaulttag")) {
|
|
+ cs.dfltTag = (char *)es_str2cstr(pvals[i].val.d.estr, NULL);
|
|
} else {
|
|
dbgprintf("imjournal: program error, non-handled "
|
|
"param '%s' in beginCnfLoad\n", modpblk.descr[i].name);
|
|
@@ -799,6 +820,8 @@ CODEmodInit_QueryRegCFSLineHdlr
|
|
facilityHdlr, &cs.iDfltFacility, STD_LOADABLE_MODULE_ID));
|
|
CHKiRet(omsdRegCFSLineHdlr((uchar *)"imjournalusepidfromsystem", 0, eCmdHdlrBinary,
|
|
NULL, &cs.bUseJnlPID, STD_LOADABLE_MODULE_ID));
|
|
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"imjournaldefaulttag", 0, eCmdHdlrGetWord,
|
|
+ NULL, &cs.dfltTag, STD_LOADABLE_MODULE_ID));
|
|
ENDmodInit
|
|
/* vim:set ai:
|
|
*/
|