Ejemplo n.º 1
0
        public async Task ExposeText(TextWriter writer, ExposeOptions options)
        {
            var labelList = BuildLabels(labelNames, labels);

            if (labelList.Length == 0)
            {
                await writer.WriteLineAsync($"# HELP {name} {help}");

                await writer.WriteLineAsync($"# TYPE {name} histogram");
            }

            long bucketsTotal = 0L;

            foreach (var bucket in buckets)
            {
                bucketsTotal += bucket.ItemCount;
                string labelforBucket = BuildHistogramLabels(labelList, bucket.Max, bucketsTotal);

                await writer.WriteLineAsync($"{name}_bucket{labelforBucket}");
            }

            await writer.WriteLineAsync($"{name}_sum{labelList} {this.sum.Value.ToString(CultureInfo.InvariantCulture)}");

            await writer.WriteLineAsync($"{name}_count{labelList} {bucketsTotal}");
        }
            public Task ExposeText(TextWriter writer, ExposeOptions options)
            {
#if !NET452
                return(Task.CompletedTask);
#else
                return(Task.FromResult <object>(null));
#endif
            }
        public async Task ExposeText(TextWriter writer, ExposeOptions options)
        {
            if (!children.IsEmpty)
            {
                await writer.WriteLineAsync($"# HELP {name} {help}");

                await writer.WriteLineAsync($"# TYPE {name} histogram");

                foreach (var child in children)
                {
                    await child.Value.ExposeText(writer, options);
                }
            }
        }
        public async Task Expose(Stream output, ExposeOptions options)
        {
            // collect standard exporter metrics
            if (coreclrExporter != null)
            {
                coreclrExporter.Collect();
            }

            using (var writer = new StreamWriter(output, PrometheusConventions.PrometheusEncoding, 4096, true))
            {
                writer.NewLine = "\n";

                foreach (var exposable in exposables)
                {
                    await exposable.Value.ExposeText(writer, options);

                    await writer.WriteLineAsync();
                }
            }
        }
Ejemplo n.º 5
0
        public async Task ExposeText(TextWriter writer, ExposeOptions options)
        {
            string labelList = BuildLabels(labelNames, labels);

            if (labelList.Length == 0)
            {
                await writer.WriteLineAsync($"# HELP {name} {help}");

                await writer.WriteLineAsync($"# TYPE {name} gauge");
            }

            string epoch;

            if (!options.HasFlag(ExposeOptions.NoTimestamp))
            {
                epoch = $" {DateTimeOffset.Now.ToUnixTimeMilliseconds()}";
            }
            else
            {
                epoch = "";
            }

            await writer.WriteLineAsync($"{name}{labelList} {gauge.Value.ToString(CultureInfo.InvariantCulture)}{epoch}");
        }
Ejemplo n.º 6
0
 public async Task Expose(Stream output, ExposeOptions options)
 {
     await registry.Expose(output, options);
 }