diff options
author | dormando <dormando@rydia.net> | 2022-04-06 16:59:18 -0700 |
---|---|---|
committer | dormando <dormando@rydia.net> | 2022-04-08 13:19:26 -0700 |
commit | 43a5d6832bce062587c9c088797f0eec46c1ded8 (patch) | |
tree | dc38f8278bb90a63a0d00e9fdb7da139565b97dd /logger.c | |
parent | 88e7960d21865d48f68b2463515dedde66cd9ae8 (diff) | |
download | memcached-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.c | 31 |
1 files changed, 1 insertions, 30 deletions
@@ -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" }, |