Bläddra i källkod

* Write all logs to .l-botnick when compiled in DEBUG mode

Bryan Drewery 17 år sedan
förälder
incheckning
008abfb85a
3 ändrade filer med 27 tillägg och 11 borttagningar
  1. 14 4
      src/debug.c
  2. 12 7
      src/log.c
  3. 1 0
      src/log.h

+ 14 - 4
src/debug.c

@@ -108,7 +108,9 @@ void init_debug()
 
 void sdprintf (const char *format, ...)
 {
+#ifndef DEBUG
   if (sdebug) {
+#endif
     char s[2001] = "";
     va_list va;
 
@@ -118,11 +120,19 @@ void sdprintf (const char *format, ...)
     
     remove_crlf(s);
 
-    if (!backgrd)
-      dprintf(DP_STDOUT, "[D:%d] %s%s%s\n", mypid, BOLD(-1), s, BOLD_END(-1));
-    else
-      printf("[D:%d] %s%s%s\n", mypid, BOLD(-1), s, BOLD_END(-1));
+#ifdef DEBUG
+    if (sdebug) {
+#endif
+      if (!backgrd)
+        dprintf(DP_STDOUT, "[D:%d] %s%s%s\n", mypid, BOLD(-1), s, BOLD_END(-1));
+      else
+        printf("[D:%d] %s%s%s\n", mypid, BOLD(-1), s, BOLD_END(-1));
+#ifdef DEBUG
+    }
+    logfile(LOG_DEBUG, s);
+#else
   }
+#endif
 }
 
 #ifdef NOTUSED

+ 12 - 7
src/log.c

@@ -155,7 +155,7 @@ void logidx(int idx, const char *format, ...)
     dprintf(idx, "%s\n", va_out);
 }
 
-#ifdef no
+#ifdef DEBUG
 /* CURRENTLY SPAWNS TONS OF FILES */
 FILE *logf;
 bool flush_log = 1;
@@ -178,7 +178,12 @@ void logfile_close(void)
 
 bool logfile_open()
 {
-  if (!(logf = fopen(".l", "a")))
+  if (!conf.bot || !conf.bot->nick) return 0;
+
+  char filename[20] = "";
+  simple_snprintf(filename, sizeof(filename), ".l-%s", conf.bot->nick);
+
+  if (!(logf = fopen(filename, "w")))
     return 0;
 
   if (!init_log_exit) {
@@ -214,8 +219,8 @@ void logfile(int type, const char *msg)
   if (!logf && !logfile_open())
     return;
 
-  if (!logfile_stat(".l"))
-    return;
+//  if (!logfile_stat(".l"))
+//    return;
 
   if (!egg_strncasecmp(msg, log_last, sizeof(log_last))) {
     repeats++;
@@ -299,11 +304,11 @@ void putlog(int type, const char *chname, const char *format, ...)
 
   /* strcat(out, "\n"); */
 
-#ifdef no
+#ifdef DEBUG
   /* FIXME: WRITE LOG HERE */
-  int logfile_masks = LOG_CMDS|LOG_ERRORS|LOG_WARN|LOG_BOTS|LOG_MISC;
+  int logfile_masks = LOG_ALL;
 
-  if (logfile_masks && (logfile_masks & type))
+  if ((logfile_masks && (logfile_masks & type)) || 1)
     logfile(type, out);
 #endif
   /* broadcast to hubs */

+ 1 - 0
src/log.h

@@ -34,6 +34,7 @@ int logmodes(const char *);
 char *masktype(int);
 char *maskname(int);
 void irc_log(struct chanset_t *, const char *, ...) __attribute__((format(printf, 2, 3)));
+void logfile(int type, const char *msg);
 
 extern int		conmask;
 extern bool		debug_output;