Update to use couch_stats
diff --git a/priv/stats_descriptions.cfg b/priv/stats_descriptions.cfg
new file mode 100644
index 0000000..f769a97
--- /dev/null
+++ b/priv/stats_descriptions.cfg
@@ -0,0 +1,12 @@
+{[ddoc_cache, hit], [
+ {type, counter},
+ {desc, <<"number of design doc cache hits">>}
+]}.
+{[ddoc_cache, miss], [
+ {type, counter},
+ {desc, <<"number of design doc cache misses">>}
+]}.
+{[ddoc_cache, recovery], [
+ {type, counter},
+ {desc, <<"number of design doc cache recoveries">>}
+]}.
diff --git a/src/ddoc_cache.app.src b/src/ddoc_cache.app.src
index 7d03bdf..a64b2f5 100644
--- a/src/ddoc_cache.app.src
+++ b/src/ddoc_cache.app.src
@@ -32,7 +32,8 @@
ets_lru,
mem3,
fabric,
- couch_log
+ couch_log,
+ couch_stats
]},
{mod, {ddoc_cache_app, []}},
{env, [
diff --git a/src/ddoc_cache.erl b/src/ddoc_cache.erl
index 40d9467..6aa3efd 100644
--- a/src/ddoc_cache.erl
+++ b/src/ddoc_cache.erl
@@ -37,10 +37,13 @@
Key = {DbName, DocId, '_'},
case ddoc_cache_opener:match_newest(Key) of
{ok, _} = Resp ->
+ couch_stats:increment_counter([ddoc_cache, hit]),
Resp;
missing ->
+ couch_stats:increment_counter([ddoc_cache, miss]),
ddoc_cache_opener:open_doc(DbName, DocId);
recover ->
+ couch_stats:increment_counter([ddoc_cache, recovery]),
ddoc_cache_opener:recover_doc(DbName, DocId)
end.
@@ -48,10 +51,13 @@
Key = {DbName, DocId, RevId},
case ddoc_cache_opener:lookup(Key) of
{ok, _} = Resp ->
+ couch_stats:increment_counter([ddoc_cache, hit]),
Resp;
missing ->
+ couch_stats:increment_counter([ddoc_cache, miss]),
ddoc_cache_opener:open_doc(DbName, DocId, RevId);
recover ->
+ couch_stats:increment_counter([ddoc_cache, recovery]),
ddoc_cache_opener:recover_doc(DbName, DocId, RevId)
end.
@@ -59,10 +65,13 @@
Key = {DbName, validation_funs},
case ddoc_cache_opener:lookup(Key) of
{ok, _} = Resp ->
+ couch_stats:increment_counter([ddoc_cache, hit]),
Resp;
missing ->
+ couch_stats:increment_counter([ddoc_cache, mis]),
ddoc_cache_opener:open_validation_funs(DbName);
recover ->
+ couch_stats:increment_counter([ddoc_cache, recovery]),
ddoc_cache_opener:recover_validation_funs(DbName)
end.