示例#1
0
        /// <summary>
        /// Добавить все счётчики из инстанса
        /// </summary>
        private void AddCountersFromInstance(string prefix, InstanceAggregatedInfo instance, List <GraphiteCounterData> result)
        {
            string newPrefix = prefix;

            if (!string.IsNullOrEmpty(instance.InstanceName))
            {
                newPrefix = prefix + "." + EscapeName(instance.InstanceName);
            }

            foreach (var counter in instance.Counters)
            {
                result.Add(ConvertCounterData(newPrefix, counter));
            }
        }
        /// <summary>
        /// Получить значения по инстансу
        /// </summary>
        private InstanceValueData BuildInstanceValueData(InstanceAggregatedInfo instanceInfo)
        {
            CounterValueData[] counters = new CounterValueData[instanceInfo.Counters.Count];
            for (int i = 0; i < counters.Length; i++)
            {
                counters[i] = BuildCounterValueData(instanceInfo.Counters[i]);
            }

            if (instanceInfo.SourceInstance != null)
            {
                return(new InstanceValueData(instanceInfo.InstanceName, counters));
            }
            else
            {
                return(new InstanceValueData(counters));
            }
        }