171 похожих чатов

Коллеги, научите как в PromQL заджойнить вот такой Expression max(

(node_filesystem_size_bytes{job=~"node-exporter",fstype=~"ext.?|xfs"}-node_filesystem_free_bytes{job=~"node-exporter",fstype=~"ext.?|xfs"}) *100/
(node_filesystem_avail_bytes {job=~"node-exporter",fstype=~"ext.?|xfs"} + (node_filesystem_size_bytes{job=~"node-exporter",fstype=~"ext.?|xfs"} - node_filesystem_free_bytes{job=~"node-exporter",fstype=~"ext.?|xfs"}))
)by(instance)
- как в вот такую красоту добавить hostname (node_uname_info)?

Куда и что понавставлять? И сколько раз?

10 ответов

85 просмотров

* on (instance) group_left (nodename) node_uname_info{job=~"node-exporter"}

.- Автор вопроса
Rustem Shaykhutdinov
* on (instance) group_left (nodename) node_uname_i...

да, получилось (просто дописал в конце) а куда теперь вписать device и mountpoint?

Этот заппос можно сократить для последних версий victoriametrics, которая умеет автоматически подставлять недостающие фильтры. Например, вот этот запрос должен работать идентично первоначальному: max( (node_filesystem_size_bytes{job=~"node-exporter",fstype=~"ext.?|xfs"}-node_filesystem_free_bytes) *100/ (node_filesystem_avail_bytes + (node_filesystem_size_bytes - node_filesystem_free_bytes)) )by(instance) Вот тут можно убедиться, что этот запрос разворачивается в первоначальный с фильтрами для каждой указанной в запросе метрике: https://play.victoriametrics.com/select/accounting/1/6a716b0f-38bc-4856-90ce-448fd713e3fe/prometheus/graph/?#/expand-with-exprs?expr=max%28%0A++%28node_filesystem_size_bytes%7Bjob%3D%7E%22node-exporter%22%2Cfstype%3D%7E%22ext.%3F%7Cxfs%22%7D-node_filesystem_free_bytes%29+*100%2F+%28node_filesystem_avail_bytes+%2B+%28node_filesystem_size_bytes+-+node_filesystem_free_bytes%29%29%0A++%29by%28instance%29 Чтобы к результату добавить лейбл hostname из метртки node_uname_info, в конец запроса нужно дописать вот это: * on(instance) group_left(hostname) См. про такую конструкцию вот тут - https://www.robustperception.io/exposing-the-software-version-to-prometheus/

.
да, получилось (просто дописал в конце) а куда те...

Фильтры по device и mountpoint можно добавить к списку фильтров для первой указанной в запросе метрики - они автоматически применятся к остальным метрикам в последних версиях victoriametrics, как было указано выше

.- Автор вопроса
Aliaksandr Valialkin
Фильтры по device и mountpoint можно добавить к сп...

Я в РФ, у меня в прод никто не поставит VM

.
Я в РФ, у меня в прод никто не поставит VM

а это и не решение, т.к. фильтр тебе не даст лейблы device и mountpoint, просто синтаксический сахар

.- Автор вопроса
Rustem Shaykhutdinov
а это и не решение, т.к. фильтр тебе не даст лейбл...

Почему не даст, в других алертах они есть. Просто я плохо понимаю синтаксис

.
Почему не даст, в других алертах они есть. Просто ...

потому что max(...) by (instance) оставит только 1 лейбл - instance кмк тебе нужно что-то вроде topk(1, (node_filesystem_size_bytes{fstype=~"ext.?|xfs"}-node_filesystem_free_bytes{fstype=~"ext.?|xfs"}) *100 / (node_filesystem_avail_bytes {fstype=~"ext.?|xfs"} + (node_filesystem_size_bytes{fstype=~"ext.?|xfs"} - node_filesystem_free_bytes{fstype=~"ext.?|xfs"})) ) by (instance) * on(instance) group_left(nodename) node_uname_info

А можно пояснение для тех, кто не в теме - чем чревата установка Victoria Metrics в РФ?

• _ •
А можно пояснение для тех, кто не в теме - чем чре...

если open source версия ничем, для использования в компании версии enterprise - то нужно покупать лицензию, которая не продаётся в рф

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
4
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта