summaryrefslogtreecommitdiffstats
path: root/library/cpp/monlib
Commit message (Collapse)AuthorAgeFilesLines
* [monlib] ewma: use monitonic clock to prevent inf cyclekgershov2026-05-181-1/+1
| | | | commit_hash:76b3f7346347ae83a1170d7b629fcf3da217d877
* [library/cpp/monlib] add v3 spack encode/decodekgershov2026-04-065-26/+520
| | | | commit_hash:91ce0e2023d29ef78fadeaded314ea236f316b8e
* add removing metrics from default setderuzh2026-03-191-1/+1
| | | | | | | | | | | | | | | | | ### Описание В данном PR реализован механизм базовой фильтрации метрик в Unified Agent. Цель — по умолчанию исключать некоторые "тяжелые" или избыточные метрики для снижения нагрузки, оставляя при этом возможность запросить полный набор. **Основные изменения:** * **Новый пресет фильтрации:** В `ESetParameter` добавлен режим `basic`. В отличие от `minimal` и `advanced`, работающих по принципу "белого списка" (allowlist), режим `basic` работает как "черный список" (blocklist) и исключает только заданные метрики. * **Черный список по умолчанию:** Реализована функция `GetDefaultBlockedMetricNames()`. На данный момент в этот список добавлена метрика `UnacknowledgedBytes`. * **Логика фильтрации:** Обновлен класс `TCountersFilter`. Теперь методы `GetAllowedNames` и `GetBlockedNames` используют единый `switch-case` по значениям `ESetParameter`. Если параметр `@set` пуст или не распознан, по умолчанию применяется поведение пресета `basic`. Пресет `all` корректно отключает любую фильтрацию. * **Изменение дефолтного поведения:** Для плагина `agent_metrics_input` значение по умолчанию в поле `Preset` изменено на `basic`. Теперь `TCountersFilter` инстанцируется и применяется всегда, гарантируя консистентную фильтрацию. **Тестирование:** * В конфигурацию `test_counters_set_parameter.yml` добавлен `fs` storage и пайплайн для отправки данных через него. Это было необходимо, чтобы агент начал генерировать метрику `UnacknowledgedBytes`, связанную с файловым хранилищем. * В `generic_tests.cpp` значительно переработан `TestCountersSetParameter`. Чтобы избежать "мигания" (flakiness) тестов из-за меняющихся значений счетчиков или появления служебных логов (например, `RecordsReceived`), реализована кастомная функция `getSensorSchema`. Она извлекает и сравнивает только структуру метрик (`kind` и `labels`), игнорируя их числовые значения. * Добавлены строгие ассерты: тест проверяет, что метрика `UnacknowledgedBytes` **отсутствует** при базовом запросе (или при `?@set=basic`), но **гарантированно присутствует** при явном запросе `?@set=all`. commit_hash:78b757d4c55f496e0f041ddfba8f385784b46881
* avoid clashing of counters paramsxenoxeno2026-03-102-7/+58
| | | | commit_hash:1d15aa793cf4d50dfdab33d413cdb8480b35080a
* [cpp/monlib] add ability to mangle name in prometheus decodervvminashkin2026-03-023-5/+83
| | | | commit_hash:ef6584bf0941f50d0833dacd3b5d14cfc1cd30a8
* Enhance library/cpp/monlib exception verbosity for debuggingydynnikov2026-02-272-2/+38
| | | | | | | | | Этот эксепшн ронял YDB RU PRESTABLE минимум дважды: \- 2025-09-10 <https://nda.ya.ru/t/VerKgHXk7VTLyV> \- 2026-02-19 <https://nda.ya.ru/t/uhTY2yqK7UtBen> Патч призван упростить отладку падений и поиски руткоза commit_hash:72d859bae3ab265a2807e566c763bfb70a92a61a
* [monlib] Copy metrics while Append and Tookq0un2026-01-151-4/+21
| | | | | По мотивам <https://nda.ya.ru/t/bI-f6SKy7Hx8RU>, делаю то же самое в остальных методах commit_hash:1bc9d85ebea976f62689b2bf9f252cb7eb85077c
* Fix prometheus nan parsingalexnadtochiy2025-12-122-4/+23
| | | | commit_hash:ea34eba995ae4c386785fe89df58c439a2e3ea63
* Add #define TABLEH_ATTRShor9112025-12-091-0/+1
| | | | commit_hash:87d58b607116761d64ac6490f3a8f848b1693421
* Delay monlib index SortPages until the next rendersnaury2025-11-262-3/+8
| | | | | YDB динамически регистрирует страницы запускающихся акторов в некоторых сервисах, при этом страницы в индексе хочется иметь сортированными. При одновременной регистрации большого кол-ва акторов множественные вызовы SortPages приводят к тому, что их регистрация растёт квадратично. Мне кажется лучше откладывать сортировку страниц до следующего рендера. commit_hash:22e547b6c8d2ce0c1fabebe985793520ec932f30
* Allow FindSubgroup in dynamic counters to find unknown valuessnaury2025-11-263-0/+39
| | | | | YDB использует динамическое дерево счётчиков с множеством опциональных лейблов после идентификатора сервиса, которые могут появляться и меняться. Сервисы при регистрации пытаются найти в каком узле дерева регистрировать счётчики пропуская эти опциональные лейблы, если они уже существуют. Исторически такой пропуск работает через `EnumerateSubgroups`, однако обнаружилось, что если сразу после опциональных лейблов дерево очень сильно ветвится (например по номерам групп в dsproxy), то при регистрации большого кол-ва счётчиков по группам эта регистрация становится квадратичной от количества групп. Хочется добавить новый метод `FindSubgroup(TString)` чтобы искать пропускаемые лейблы за `O(log N)` вместо `O(N)`. commit_hash:7ce074f58a3a90caf535d8fad24eef7ac6782d06
* typoilyaershov2025-11-131-1/+1
| | | | commit_hash:5146c201b1a586d9cee2ed1495545fe4708a9fd1
* Минимальные и расширенные наборы метрик ↵hobbit2025-09-062-3/+15
| | | | | | в ручке /counters commit_hash:7540b71c453d05401c539b0f22cd489831fdfa20
* [fetcher] use lz4 encodingvvminashkin2025-09-014-3/+79
| | | | | [fetcher] use lz4 encoding commit_hash:e29504c1f68be2a5d138dbba0ed461b2f2568b97
* monlib addsmatusha-g2025-07-095-0/+55
| | | | | add clone method commit_hash:c96c84b95c05e307a7391742f4fca56010b24e3f
* add took methodmatusha-g2025-06-032-0/+22
| | | | | add took method commit_hash:6cbacad68f50a1144726e074a905ba96dbc4e62e
* Add missing Collect method to THistogramCountereivanov892025-04-221-1/+1
| | | | | by @va-kuznecov commit_hash:26d8159e9bd33f1dd9471154655b861b203dbe10
* refactor counters page to better support ic-proxyxenoxeno2025-04-171-22/+67
| | | | commit_hash:d6538967a151a3aba3c806d3d1ba3f4c7ef1ae47
* Intermediate changesrobot-piglet2025-04-151-0/+6
| | | | commit_hash:6e0336f180bc33996d20f97d2135b5b46109a052
* Make WriteMetric protectedgolubi-kuryat2025-04-074-65/+57
| | | | | | | | Появляется возможность зарегистрировать новую тип метрики с кастомным поведением, который наследуется от IMetric Пример использования HIDDEN_URL commit_hash:82e3997427ef61d8017d6a1c1eca848131b03d7b
* monlib : memOnly support for JSON encoding/decoding (cpp)miktorius2025-03-067-9/+250
| | | | | | | json encoder memonly attempt commit_hash:0cef79f66356a94c398c76dc9baf2fe3ea9a6948
* monlib : adding memOnly flag support for cpp libmiktorius2025-03-0313-57/+432
| | | | commit_hash:cffc55ecd6d0ea22c3c2ce52f21e6aba6da16a15
* Intermediate changesrobot-piglet2025-01-303-15/+60
| | | | commit_hash:c284e5d683d750f2d89e1bcccb3f4d334b47d60c
* Intermediate changesrobot-piglet2025-01-282-3/+35
| | | | commit_hash:93f812fd528231c67adb63e20e083855d68bfe8d
* Intermediate changesrobot-piglet2025-01-211-2/+10
| | | | commit_hash:cdae472f061820ed9998426cf0624c300468cdc8
* Allow building with -DUSE_VANILLA_PROTOCmikhnenko2025-01-101-1/+1
| | | | commit_hash:901dbbb6495524f1473b91e0121e208086bd5b08
* [unified-agent] add config endpoint to agentetoraf2024-11-061-0/+1
| | | | commit_hash:f617f0a99f254f9100cea5bb7c2adaa30ae2038d
* add include that comes transparentlytobo2024-10-111-0/+2
| | | | commit_hash:7ec5bc6f7e85e5412ff6759b0d1bd52d1172a9c1
* add include that comes transparentlytobo2024-10-091-0/+1
| | | | commit_hash:28a1feed886ff6f1fb586119dcdc433df011773b
* Virtual CreateEncoder in TDynamicCountersPageiddqd2024-10-082-0/+8
| | | | | Идея в том, чтобы фильтровать нулевые метрики на выводе при помощи вот такого класса: <HIDDEN_URL> commit_hash:296137b0e9503a932eeb1bd5586772c9e4d6c1f8
* Remove Size, Empty and Data usages from librarymikhnenko2024-10-045-10/+10
| | | | commit_hash:ef5ad4cfa9e68bbfc586492e8c376c732d0a48af
* Make NMonitoring::IHistogram write methods noexceptvadim-xd2024-10-016-18/+18
| | | | commit_hash:e67a69864ab541f86bd413dfa8df106a77d05b71
* Intermediate changesrobot-piglet2024-07-192-0/+2
|
* Added input tag to monlibevgeniy-kozev2024-05-082-0/+3
| | | | 4ed1896722ba8cc8e3371fab7d75aa2df2c67d6f
* Replace more bad usages of AsciiCompareIgnoreCasevadim-xd2024-04-231-3/+5
| | | | | Fixup rXXXXXX 9d34af8101f3a279b792863b45b9b402c6bd21f1
* Replace remaining bad usages of AsciiCompareIgnoreCasevadim-xd2024-04-221-3/+5
| | | | 231a9b4db35ccee7e5a5b716b57d594973adc23b
* manage prometheusaleksei-le2024-03-194-69/+132
| | | | a543f08a6f2957757c54b3f9e5a095389a51dbeb
* skip metrics without name label instead of crashing KIKIMR-21198monster2024-03-181-3/+3
| | | | c7b986ea7dbf4feee593ab829a2ad361d46c77b0
* YDB Import 566robot-ydb-importer2024-02-145-0/+694
| | | | 96265cd0cc64e1b9bb31fe97b915ed2a09caf1cb
* Replace complex hack in monlib macroinnokentii2024-02-121-9/+1
| | | | replace complex hack in monlib macro
* fix prometheus_decoder ConsumeCounteraleksei-le2024-02-061-4/+6
|
* feat contrib: aiogram 3armenqa2024-01-19105-2884/+0
| | | | Relates: https://st.yandex-team.ru/, https://st.yandex-team.ru/
* External build system generator release 65robot-ya-builder2023-12-0517-51/+51
| | | | Update tools: yexport, os-yexport
* allow multiple equal TYPE in prom metricsvalerybitsoev2023-11-231-2/+4
|
* add darwin-arm64 CMakeListsdcherednik2023-11-2034-0/+532
|
* Y_FAIL->Y_ABORT at '^li'ilnurkh2023-10-177-14/+14
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* Y_VERIFY_DEBUG->Y_DEBUG_ABORT_UNLESS at '-v ydb'ilnurkh2023-10-166-13/+13
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* Speed up TPercentileTracker/TPercentileTrackerLgdcherednik2023-10-162-6/+3
| | | | | | | | | | | | | | old values: NMonitoring::TPercentileTracker<4ul, 512ul, 15ul> 0.748282s NMonitoring::TPercentileTrackerLg<4ul, 3ul, 15ul> 0.221432s new values: NMonitoring::TPercentileTracker<4ul, 512ul, 15ul> 0.640864s NMonitoring::TPercentileTrackerLg<4ul, 3ul, 15ul> 0.205138s
* KIKIMR-19589 add local boostrap jquery resourcesandrew-rykov2023-10-1625-13/+589
|
* Y_VERIFY->Y_ABORT_UNLESS at ^lilnurkh2023-10-096-16/+16
| | | | https://clubs.at.yandex-team.ru/arcadia/29404