mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00
34 lines
936 B
Python
34 lines
936 B
Python
from platform import node
|
|
|
|
import statsd
|
|
|
|
import bigchaindb
|
|
from bigchaindb import config_utils
|
|
|
|
|
|
class Monitor(statsd.StatsClient):
|
|
"""Set up statsd monitoring."""
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
"""Overrides statsd client, fixing prefix to messages and loading configuration
|
|
|
|
Args:
|
|
*args: arguments (identical to Statsclient)
|
|
**kwargs: keyword arguments (identical to Statsclient)
|
|
"""
|
|
|
|
config_utils.autoconfigure()
|
|
|
|
if not kwargs:
|
|
kwargs = {}
|
|
|
|
# set prefix, parameters from configuration file
|
|
if 'prefix' not in kwargs:
|
|
kwargs['prefix'] = '{hostname}.'.format(hostname=node())
|
|
if 'host' not in kwargs:
|
|
kwargs['host'] = bigchaindb.config['statsd']['host']
|
|
if 'port' not in kwargs:
|
|
kwargs['port'] = bigchaindb.config['statsd']['port']
|
|
super().__init__(*args, **kwargs)
|
|
|