示例#1
0
        public StatsDOutput(TimberWinR.Manager manager, Parser.StatsDOutputParameters parameters, CancellationToken cancelToken)
            : base(cancelToken, "StatsD")
        {
            _params                     = parameters;
            _manager                    = manager;
            _port                       = parameters.Port;
            _host                       = parameters.Host;
            _interval                   = parameters.Interval;
            _flushSize                  = parameters.FlushSize;
            _idleFlushTimeSeconds       = parameters.IdleFlushTimeInSeconds;
            _maxQueueSize               = parameters.MaxQueueSize;
            _queueOverflowDiscardOldest = parameters.QueueOverflowDiscardOldest;
            _numThreads                 = parameters.NumThreads;
            _jsonQueue                  = new List <JObject>();

            var metricsConfig = new MetricsConfig
            {
                StatsdServerName = _host,
                Prefix           = parameters.Namespace,
            };

            StatsdClient.Metrics.Configure(metricsConfig);

            for (int i = 0; i < _numThreads; i++)
            {
                Task.Factory.StartNew(StatsDSender, cancelToken, TaskCreationOptions.LongRunning, TaskScheduler.Current);
            }
        }
示例#2
0
        public StatsDOutput(TimberWinR.Manager manager, Parser.StatsDOutputParameters parameters, CancellationToken cancelToken)
            : base(cancelToken, "StatsD")
        {
            _params = parameters;
            _manager = manager;
            _port = parameters.Port;
            _host = parameters.Host;
            _interval = parameters.Interval;
            _flushSize = parameters.FlushSize;
            _idleFlushTimeSeconds = parameters.IdleFlushTimeInSeconds;
            _maxQueueSize = parameters.MaxQueueSize;
            _queueOverflowDiscardOldest = parameters.QueueOverflowDiscardOldest;
            _numThreads = parameters.NumThreads;
            _jsonQueue = new List<JObject>();

            var metricsConfig = new MetricsConfig
            {
                StatsdServerName = _host,
                Prefix = parameters.Namespace,
            };

            StatsdClient.Metrics.Configure(metricsConfig);

            for (int i = 0; i < _numThreads; i++)
            {
                Task.Factory.StartNew(StatsDSender, cancelToken, TaskCreationOptions.LongRunning, TaskScheduler.Current);
            }
        }