java.lang.Object
com.github._1c_syntax.bsl.languageserver.aop.measures.MeasureCollector

@Component public class MeasureCollector extends Object
Выполнение и агрегация замеров времени выполнения переданных операций.
  • Constructor Details

    • MeasureCollector

      public MeasureCollector()
  • Method Details

    • measureIt

      public Object measureIt(ThrowingSupplier<?> supplier, String measureType)
      Выполнить операцию замера.
      Parameters:
      supplier - Замеряемая операция.
      measureType - Текстовый идентификатор замера. Результаты замеров с совпадающим идентификатором будут просуммированы.
      Returns:
      Результат работы замеряемой операции.
    • printMeasures

      public void printMeasures()
      Вывод накопленных замеров в лог.
    • getMeasures

      public Map<String,List<Long>> getMeasures()
      Коллекция замеров.

      В качестве ключа выступает тип замера (метрики, дерево разбора, диагностика, и т. д.), в качестве значений - список длительностей выполнения замера.