fix: blacklist pattern can contain anything
switch to our own buffered writer

* so we can istrument the internal flushes
* also better metric names for the flush duration metrics
track flush errors