Details
-
Improvement
-
Resolution: Fixed
-
Major
-
1.8.1-release-candidate
-
Security Level: Public
-
None
Description
We currently have some problem (ticket somewhere) where all memcached output is eaten by ns_server and logged as info level. Even if it's something really severe from inside memcached.
One way to address that could be if memcached logger would prepend log level to all log messages. So that ns_server can see what log message corresponds to which log level and then critical things can at last be logged with higher level and never lost.
Another potential problem is that ns_server being implemented in erlang really cannot block memcached from sending it log output too quickly. Thus ns_server has to eat everything.
If ns_server is unable to log memcached messages to it's own log quick enough it has to drop them on the floor. Otherwise it's queue of messages to be logged would eventually kill erlang vm. We have actually seen this early in 1.6 dev cycle.
In order to combat second problem of dropped memcached messages we can perhaps change memcached logging to send it's log messages to it's own log file(s). Perhaps in addition to duplicating really important messages to stderr and into ns_server's log.
NOTE: That's mostly against memcached component which has few logger implementations and which would include those extra logger implementation(s). But because jira doesn't have memcached component. I've thus I've assigned to bucket-engine.