コード例 #1
0
ファイル: MetricsWorker.cs プロジェクト: vvv37912/iotedge
        public MetricsWorker(IMetricsScraper scraper, IMetricsStorage storage, IMetricsPublisher uploader)
        {
            this.scraper  = Preconditions.CheckNotNull(scraper, nameof(scraper));
            this.storage  = Preconditions.CheckNotNull(storage, nameof(storage));
            this.uploader = Preconditions.CheckNotNull(uploader, nameof(uploader));

            this.metricFilter = new MetricTransformer()
                                .AddAllowedTags(new KeyValuePair <string, string>(MetricsConstants.MsTelemetry, true.ToString()))
                                .AddTagsToRemove(MetricsConstants.MsTelemetry, MetricsConstants.IotHubLabel, MetricsConstants.DeviceIdLabel)
                                .AddTagsToModify(("id", this.ReplaceDeviceId), ("module_name", name => name.CreateSha256()));
        }
コード例 #2
0
ファイル: MetricsWorker.cs プロジェクト: afzaljan/iotedge
        public MetricsWorker(IMetricsScraper scraper, IMetricsStorage storage, IMetricsPublisher uploader)
        {
            this.scraper  = Preconditions.CheckNotNull(scraper, nameof(scraper));
            this.storage  = Preconditions.CheckNotNull(storage, nameof(storage));
            this.uploader = Preconditions.CheckNotNull(uploader, nameof(uploader));

            this.metricFilter = new MetricTransformer()
                                .AddAllowedTags((MetricsConstants.MsTelemetry, true.ToString()))
                                .AddDisallowedTags(
                ("quantile", "0.1"),
                ("quantile", "0.5"),
                ("quantile", "0.99"))
                                .AddTagsToRemove(MetricsConstants.MsTelemetry, MetricsConstants.IotHubLabel, MetricsConstants.DeviceIdLabel)
                                .AddTagsToModify(
                ("id", this.ReplaceDeviceId),
                ("module_name", this.ReplaceModuleId),
                ("to", name => name.CreateSha256()),
                ("from", name => name.CreateSha256()),
                ("to_route_input", name => name.CreateSha256()),
                ("from_route_output", name => name.CreateSha256()));

#pragma warning disable SA1111 // Closing parenthesis should be on line of last parameter
            this.metricAggregator = new MetricAggregator(
                new AggregationTemplate("edgehub_gettwin_total", "id", new Summer()),
                new AggregationTemplate(
                    "edgehub_messages_received_total",
                    ("route_output", new Summer()),
                    ("id", new Summer())
                    ),
                new AggregationTemplate(
                    "edgehub_messages_sent_total",
                    ("from", new Summer()),
                    ("to", new Summer()),
                    ("from_route_output", new Summer()),
                    ("to_route_input", new Summer())
                    ),
                new AggregationTemplate(
                    new string[]
            {
                "edgehub_message_size_bytes",
                "edgehub_message_size_bytes_sum",
                "edgehub_message_size_bytes_count"
            },
                    "id",
                    new Averager()),
                new AggregationTemplate(
                    new string[]
            {
                "edgehub_message_process_duration_seconds",
                "edgehub_message_process_duration_seconds_sum",
                "edgehub_message_process_duration_seconds_count",
            },
                    ("from", new Averager()),
                    ("to", new Averager())
                    ),
                new AggregationTemplate(
                    "edgehub_direct_methods_total",
                    ("from", new Summer()),
                    ("to", new Summer())
                    ),
                new AggregationTemplate("edgehub_queue_length", "endpoint", new Summer()),
                new AggregationTemplate(
                    new string[]
            {
                "edgehub_messages_dropped_total",
                "edgehub_messages_unack_total",
            },
                    ("from", new Summer()),
                    ("from_route_output", new Summer())
                    ),
                new AggregationTemplate("edgehub_client_connect_failed_total", "id", new Summer())
                );
#pragma warning restore SA1111 // Closing parenthesis should be on line of last parameter
        }