Commit 8f5a12fd authored by Adam Wujek's avatar Adam Wujek 💬

userspace/snmpd: Improve verbosity if number of running processes is wrong

If any process is missing, print which one, how many are expected and counted.
Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
parent b3a59f58
......@@ -459,7 +459,10 @@ static void get_daemons_status(void)
char key[41]; /* 1 for null char */
int ret = 0;
int i;
int processes_wrong = 0; /* number of too many or too few processes */
int processes_wrong = 0; /* number of too many or too few processes
* (in total) */
int missing_process = 0; /* number of too many or too few processes
* (particular process) */
/* clear user space daemon counters */
......@@ -518,8 +521,20 @@ static void get_daemons_status(void)
/* Calculate delta between expected and counted number
* of processes. Neither too much or too few are ok.
* NOTE: abs "exp" too */
processes_wrong += abs(abs(userspace_daemons[i].exp)
missing_process = abs(abs(userspace_daemons[i].exp)
- userspace_daemons[i].cnt);
if (missing_process) {
snmp_log(LOG_ERR, "SNMP: " SL_ER
" wrsBootUserspaceDaemonsMissing: wrong "
"number of running %s processes. Expected %d,"
" counted %d\n",
userspace_daemons[i].key,
userspace_daemons[i].exp,
userspace_daemons[i].cnt
);
}
processes_wrong += missing_process;
}
/* save number of processes missing */
......
......@@ -160,7 +160,7 @@ time_t wrsOSStatus_data_fill(void)
/* check the number of missing daemons */
if (b->wrsBootUserspaceDaemonsMissing > 0) {
o->wrsBootSuccessful = WRS_BOOT_SUCCESSFUL_ERROR;
snmp_log(LOG_ERR, "SNMP: " SL_ER " %s: %d userspace daemons not started\n",
snmp_log(LOG_ERR, "SNMP: " SL_ER " %s: wrong number of userspace daemons (differs by %d)\n",
slog_obj_name, b->wrsBootUserspaceDaemonsMissing);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment