2016-11-07 11:29:49 +00:00
|
|
|
#ifndef OD_LOG_H_
|
|
|
|
#define OD_LOG_H_
|
|
|
|
|
|
|
|
/*
|
2016-11-08 11:18:58 +00:00
|
|
|
* odissey.
|
|
|
|
*
|
|
|
|
* PostgreSQL connection pooler and request router.
|
2016-11-07 11:29:49 +00:00
|
|
|
*/
|
|
|
|
|
2016-11-29 12:57:46 +00:00
|
|
|
typedef struct od_log_t od_log_t;
|
2016-11-07 11:29:49 +00:00
|
|
|
|
2016-11-29 12:57:46 +00:00
|
|
|
struct od_log_t {
|
2016-11-29 12:54:01 +00:00
|
|
|
od_pid_t *pid;
|
2016-11-29 12:56:21 +00:00
|
|
|
od_syslog_t *syslog;
|
2016-11-07 11:29:49 +00:00
|
|
|
int fd;
|
|
|
|
};
|
|
|
|
|
2016-11-29 12:57:46 +00:00
|
|
|
int od_loginit(od_log_t*, od_pid_t*, od_syslog_t*);
|
|
|
|
int od_logopen(od_log_t*, char*);
|
|
|
|
int od_logclose(od_log_t*);
|
|
|
|
int od_logv(od_log_t*, od_syslogprio_t, char*, char*, va_list);
|
2016-11-15 11:38:31 +00:00
|
|
|
|
|
|
|
static inline int
|
2016-11-29 12:57:46 +00:00
|
|
|
od_log(od_log_t *l, char *fmt, ...)
|
2016-11-15 11:38:31 +00:00
|
|
|
{
|
|
|
|
va_list args;
|
|
|
|
va_start(args, fmt);
|
2016-11-28 14:47:39 +00:00
|
|
|
int rc = od_logv(l, OD_SYSLOG_INFO, NULL, fmt, args);
|
2016-11-15 11:38:31 +00:00
|
|
|
va_end(args);
|
|
|
|
return rc;
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline int
|
2016-11-29 12:57:46 +00:00
|
|
|
od_debug(od_log_t *l, char *fmt, ...)
|
2016-11-15 11:38:31 +00:00
|
|
|
{
|
|
|
|
va_list args;
|
|
|
|
va_start(args, fmt);
|
2016-11-28 14:47:39 +00:00
|
|
|
int rc = od_logv(l, OD_SYSLOG_DEBUG, "debug: ", fmt, args);
|
2016-11-15 11:38:31 +00:00
|
|
|
va_end(args);
|
|
|
|
return rc;
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline int
|
2016-11-29 12:57:46 +00:00
|
|
|
od_error(od_log_t *l, char *fmt, ...)
|
2016-11-15 11:38:31 +00:00
|
|
|
{
|
|
|
|
va_list args;
|
|
|
|
va_start(args, fmt);
|
2016-11-28 14:47:39 +00:00
|
|
|
int rc = od_logv(l, OD_SYSLOG_ERROR, "error: ", fmt, args);
|
2016-11-15 11:38:31 +00:00
|
|
|
va_end(args);
|
|
|
|
return rc;
|
|
|
|
}
|
2016-11-07 11:29:49 +00:00
|
|
|
|
|
|
|
#endif
|