Обновление Java-микрометра с динамическими меткамиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Обновление Java-микрометра с динамическими метками

Сообщение Гость »


Я использую датчик Java Micrometer для измерения показателя, имеющего ряд меток. Значения меток извлекаются динамически, но ограничены. Например, у меня есть метрика withdraw.cycle с меткой currency.

Поскольку Micrometer не содержит ссылки на сам датчик, код выглядит довольно громоздким. У меня есть два способа сделать это:

private void updateGauge (строка валюты, int минуты) { Теги tags = Tags.of("валюта", валюта); Gauge.builder("withdraw.cycle",() -> минуты) .tags(теги) .strongReference(истина) .register(meterRegistry); } ИЛИ

частная финальная картаcycleGaugeMap = new ConcurrentHashMap(); // Используйте CyclGaugeMap для хранения ссылки на датчик Private void updateGauge(Строка валюты, интервал минут) { Теги tags = Tags.of("валюта", валюта); если (cycleGaugeMap.containsKey(теги)) { CycleGaugeMap.get(теги).set(минуты); } еще { AtomicLong old =cycleGaugeMap.putIfAbsent(tags,meterRegistry.gauge("withdraw.cycle", tags, новый AtomicLong(минуты))); если (старый != ноль) { старый.set(минуты); } } } Мой вопрос: правильные ли это способы сделать это или у Micrometer есть неизвестный мне API для таких случаев? Мне бы очень хотелось узнать «стандартный» и элегантный способ сделать это.
Ответить Пред. темаСлед. тема

Быстрый ответ, комментарий, отзыв

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»