MINOR: spoa-server: Externalise debug functions

Make external LOG and DEBUG function. Other process can use this ones
and later these functions will be replaced by another log system
This commit is contained in:
Thierry FOURNIER 2018-02-25 10:54:56 +01:00 committed by Willy Tarreau
parent 4aec0a4a9a
commit 880d7e15ba
2 changed files with 23 additions and 18 deletions

View File

@ -36,22 +36,6 @@
#define SLEN(str) (sizeof(str)-1)
#define LOG(fmt, args...) \
do { \
struct timeval now; \
int wid = *((int*)pthread_getspecific(worker_id)); \
\
gettimeofday(&now, NULL); \
fprintf(stderr, "%ld.%06ld [%02d] " fmt "\n", \
now.tv_sec, now.tv_usec, wid, ##args); \
} while (0)
#define DEBUG(x...) \
do { \
if (debug) \
LOG(x); \
} while (0)
/* Frame Types sent by HAProxy and by agents */
enum spoe_frame_type {
/* Frames sent by HAProxy */
@ -110,8 +94,8 @@ static const char *spoe_frm_err_reasons[SPOE_FRM_ERRS] = {
[SPOE_FRM_ERR_UNKNOWN] = "an unknown error occurred",
};
static bool debug = false;
static pthread_key_t worker_id;
bool debug = false;
pthread_key_t worker_id;
static void
check_ipv4_reputation(struct worker *w, struct in_addr *ipv4)

View File

@ -11,9 +11,11 @@
#ifndef __SPOA_H__
#define __SPOA_H__
#include <pthread.h>
#include <stdbool.h>
#include <stdint.h>
#include <netinet/in.h>
#include <sys/time.h>
#define MAX_FRAME_SIZE 16384
#define SPOP_VERSION "1.0"
@ -78,4 +80,23 @@ struct spoe_data {
union spoe_value u; /* spoe data value */
};
extern bool debug;
extern pthread_key_t worker_id;
#define LOG(fmt, args...) \
do { \
struct timeval now; \
int wid = *((int*)pthread_getspecific(worker_id)); \
\
gettimeofday(&now, NULL); \
fprintf(stderr, "%ld.%06ld [%02d] " fmt "\n", \
now.tv_sec, now.tv_usec, wid, ##args); \
} while (0)
#define DEBUG(x...) \
do { \
if (debug) \
LOG(x); \
} while (0)
#endif /* __SPOA_H__ */