我尽力通过 SocketHandler 将指标直接记录到 carbon 中,但没有成功:
logger.conf
:
[loggers]
keys=root,carbon
[handlers]
keys=carbonHandler
[formatters]
keys=carbonFormatter
[logger_carbon]
level=DEBUG
handlers=carbonHandler
qualname=carbon
propagate=0
[logger_root]
level=DEBUG
handlers=carbonHandler
[handler_carbonHandler]
class=logging.handlers.SocketHandler
level=DEBUG
formatter=carbonFormatter
args=('$HOST', 2003)
[formatter_carbonFormatter]
format=%(message)s %(created)i
然后,用它来登录:
import logging
import logging.config
logging.config.fileConfig('logging.conf')
logger = logging.getLogger('carbon')
logger.info('test.python 42')
这是一个可悲的失败......
我可以用echo "test.metric 42 $(date +'%s')" | nc $HOST 2003
你看到什么了吗?
我会尝试做一些永远不会奏效的事情吗?
谢谢你的帮助!