summaryrefslogtreecommitdiff
path: root/logger.c
diff options
context:
space:
mode:
authordormando <dormando@rydia.net>2022-04-06 16:59:18 -0700
committerdormando <dormando@rydia.net>2022-04-08 13:19:26 -0700
commit43a5d6832bce062587c9c088797f0eec46c1ded8 (patch)
treedc38f8278bb90a63a0d00e9fdb7da139565b97dd /logger.c
parent88e7960d21865d48f68b2463515dedde66cd9ae8 (diff)
downloadmemcached-43a5d6832bce062587c9c088797f0eec46c1ded8.tar.gz
proxy: replace proxycmds stream with proxyreqs
delete the magic logging and require mcp.log_req* be used if you want those types of entries to appear. keeps a separate data stream from "proxyuser" just in case that's useful. proxycmds wasn't able to get enough context to autogenerate useful log lines, so I'd rather not have it in there at all.
Diffstat (limited to 'logger.c')
-rw-r--r--logger.c31
1 files changed, 1 insertions, 30 deletions
diff --git a/logger.c b/logger.c
index 4b02681..0ef822c 100644
--- a/logger.c
+++ b/logger.c
@@ -304,33 +304,6 @@ static int _logger_parse_cce(logentry *e, char *scratch) {
}
#ifdef PROXY
-static void _logger_log_proxy_raw(logentry *e, const entry_details *d, const void *entry, va_list ap) {
- struct timeval start = va_arg(ap, struct timeval);
- char *cmd = va_arg(ap, char *);
- unsigned short type = va_arg(ap, int);
- unsigned short code = va_arg(ap, int);
-
- struct logentry_proxy_raw *le = (void *)e->data;
- struct timeval end;
- gettimeofday(&end, NULL);
- le->type = type;
- le->code = code;
- le->elapsed = (end.tv_sec - start.tv_sec) * 1000000 + (end.tv_usec - start.tv_usec);
- memcpy(le->cmd, cmd, 9);
- e->size = sizeof(struct logentry_proxy_raw);
-}
-
-static int _logger_parse_prx_raw(logentry *e, char *scratch) {
- int total;
- struct logentry_proxy_raw *le = (void *)e->data;
-
- total = snprintf(scratch, LOGGER_PARSE_SCRATCH,
- "ts=%d.%d gid=%llu type=proxy_raw elapsed=%lu cmd=%s type=%d code=%d\n",
- (int) e->tv.tv_sec, (int) e->tv.tv_usec, (unsigned long long) e->gid,
- le->elapsed, le->cmd, le->type, le->code);
- return total;
-}
-
// TODO (v2): the length caps here are all magic numbers. Haven't thought of
// something yet that I like better.
// Should at least make a define to the max log len (1024) and do some math
@@ -383,7 +356,6 @@ static int _logger_parse_prx_req(logentry *e, char *scratch) {
int total;
struct logentry_proxy_req *le = (void *)e->data;
- // TODO: encode detail / req
total = snprintf(scratch, LOGGER_PARSE_SCRATCH,
"ts=%d.%d gid=%llu type=proxy_req elapsed=%lu type=%d code=%d status=%d be=%.*s:%.*s detail=%.*s req=%.*s\n",
(int) e->tv.tv_sec, (int) e->tv.tv_usec, (unsigned long long) e->gid,
@@ -435,8 +407,7 @@ static const entry_details default_entries[] = {
[LOGGER_PROXY_CONFIG] = {512, LOG_PROXYEVENTS, _logger_log_text, _logger_parse_text,
"type=proxy_conf status=%s"
},
- [LOGGER_PROXY_RAW] = {512, LOG_PROXYCMDS, _logger_log_proxy_raw, _logger_parse_prx_raw, NULL},
- [LOGGER_PROXY_REQ] = {1024, LOG_PROXYUSER, _logger_log_proxy_req, _logger_parse_prx_req, NULL},
+ [LOGGER_PROXY_REQ] = {1024, LOG_PROXYREQS, _logger_log_proxy_req, _logger_parse_prx_req, NULL},
[LOGGER_PROXY_ERROR] = {512, LOG_PROXYEVENTS, _logger_log_text, _logger_parse_text,
"type=proxy_error msg=%s"
},