Analytics

created an analytics plugin that will send data to papertrail through syslog
That will not be enough because the addEvent function could still read from the channelFilter map. You could instead use a shared_lock (read-write lock) and have the mutating function grab an exclusive (write) lock while the reading function would grab a shared (read) lock. That being said, the standard doesn't yet have a shared lock but it is in boost. Otherwise you could just use a simple mutex on both the readers and the writers.