Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8670:85476be1fee2 HEAD
Sending SIGUSR2 to dovecot-auth now also logs statistics about cache inserts.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Wed, 21 Jan 2009 15:48:51 -0500 |
parents | 14b9a90eb01d |
children | 92fa46fc86f8 |
files | src/auth/auth-cache.c |
diffstat | 1 files changed, 18 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/auth/auth-cache.c Wed Jan 21 12:40:06 2009 -0500 +++ b/src/auth/auth-cache.c Wed Jan 21 15:48:51 2009 -0500 @@ -19,6 +19,8 @@ unsigned int ttl_secs, neg_ttl_secs; unsigned int hit_count, miss_count; + unsigned int pos_entries, neg_entries; + unsigned long long pos_size, neg_size; }; char *auth_cache_parse_key(pool_t pool, const char *query) @@ -108,8 +110,15 @@ cache->hit_count, total_count, total_count == 0 ? 100 : (cache->hit_count * 100 / total_count)); - /* reset hit counter */ + i_info("Authentication cache inserts: " + "positive: %u %lluB, negative: %u %lluB", + cache->pos_entries, cache->pos_size, + cache->neg_entries, cache->neg_size); + + /* reset counters */ cache->hit_count = cache->miss_count = 0; + cache->pos_entries = cache->neg_entries = 0; + cache->pos_size = cache->neg_size = 0; } struct auth_cache *auth_cache_new(size_t max_size, unsigned int ttl_secs, @@ -249,6 +258,14 @@ cache->size_left -= alloc_size; hash_table_insert(cache->hash, node->data, node); + + if (*value != '\0') { + cache->pos_entries++; + cache->pos_size += alloc_size; + } else { + cache->neg_entries++; + cache->neg_size += alloc_size; + } } void auth_cache_remove(struct auth_cache *cache,