prometheus-net

Форк
0
/
ExemplarBehavior.cs 
30 строк · 1.2 Кб
1
namespace Prometheus;
2

3
/// <summary>
4
/// Defines how exemplars are obtained and published for metrics.
5
/// Different metrics can have their own exemplar behavior or simply inherit one from the metric factory.
6
/// </summary>
7
public sealed class ExemplarBehavior
8
{
9
    /// <summary>
10
    /// Callback that provides the default exemplar if none is provided by the caller when providing a metric value.
11
    /// Defaults to Exemplar.FromTraceContext().
12
    /// </summary>
13
    public ExemplarProvider? DefaultExemplarProvider { get; set; }
14

15
    /// <summary>
16
    /// A new exemplar will only be recorded for a timeseries if at least this much time has passed since the previous exemplar was recorded.
17
    /// This can be used to limit the rate of publishing unique exemplars. By default we do not have any limit - a new exemplar always overwrites the old one.
18
    /// </summary>
19
    public TimeSpan NewExemplarMinInterval { get; set; } = TimeSpan.Zero;
20

21
    internal static readonly ExemplarBehavior Default = new()
22
    {
23
        DefaultExemplarProvider = (_, _) => Exemplar.FromTraceContext()
24
    };
25

26
    public static ExemplarBehavior NoExemplars() => new()
27
    {
28
        DefaultExemplarProvider = (_, _) => Exemplar.None
29
    };
30
}
31

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.