int trace_level = 1;
+static const char *assign_color(int color)
+{
+ switch (color) {
+ case 1:
+ return red_color;
+ case 2:
+ return green_color;
+ default:
+ return normal_color;
+ }
+}
+
void print_trace(const char *file, int line, int color, int l,
const char *fmt, ...)
{
time_t t = time(0);
char time[32];
char trace[1024];
+ const char *color_str = assign_color(color);
if (l > trace_level)
return;
strftime(time, sizeof(time), "%d.%m.%Y %T ", localtime(&t));
fprintf(stderr, "%s%s [%5d.%d] %s:%d %s %s",
- green_color, time,
+ color_str, time,
getpid(), get_parent_count(),
file, line, normal_color, trace);
fflush(stderr);