Exemple #1
0
// clean-up our ncurses window before throwing a fatal error
static void log_fatal(const gchar *dom, GLogLevelFlags level, const gchar *msg, gpointer dat) {
  endwin();
  // print to both log file and stdout
  if(stderrlog != stderr) {
    fprintf(stderrlog, "\n\n*%s* %s\n", loglevel_to_str(level), msg);
    fflush(stderrlog);
  }
  printf("\n\n*%s* %s\n", loglevel_to_str(level), msg);
}
Exemple #2
0
static int node_log_level_get(int argc, char **argv)
{
	int ret = 0, loglevel = -1;
	struct node_id nid;

	memset(&nid, 0, sizeof(nid));
	memcpy(nid.addr, sdhost, sizeof(sdhost));
	nid.port = sdport;

	ret = do_loglevel_get(&nid, &loglevel);
	switch (ret) {
	case EXIT_FAILURE:
	case EXIT_SYSFAIL:
		sd_err("Failed to execute request");
		ret = -1;
		break;
	case EXIT_SUCCESS:
		sd_info("%s (%d)", loglevel_to_str(loglevel), loglevel);
		break;
	default:
		sd_err("unknown return code of do_loglevel_get(): %d", ret);
		ret = -1;
		break;
	}

	return ret;
}
Exemple #3
0
// redirect all non-fatal errors to the log
static void log_redirect(const gchar *dom, GLogLevelFlags level, const gchar *msg, gpointer dat) {
  if(!(level & (G_LOG_LEVEL_INFO|G_LOG_LEVEL_DEBUG)) || (stderrlog != stderr && var_log_debug)) {
    char *ts = localtime_fmt("[%F %H:%M:%S %Z]");
    fprintf(stderrlog, "%s *%s* %s\n", ts, loglevel_to_str(level), msg);
    g_free(ts);
    fflush(stderrlog);
  }
}
Exemple #4
0
void rblog(enum rblog_levels log_level, char *msg) {
  if (log_level <= rblog_level) {
    char *term_color;
    if (log_level == RBLOG_ERROR) {
      term_color = TERM_RED;
    }
    if (log_level == RBLOG_WARN) {
      term_color = TERM_CYN;
    }
    if (log_level == RBLOG_INFO) {
      term_color = TERM_GRN;
    }
    if (log_level == RBLOG_DEBUG) {
      term_color = TERM_LGY;
    }
    fprintf(stderr, "%s%s: %s\n%s", term_color, loglevel_to_str(log_level), msg, TERM_NRM);
  }
}