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 ответов

40 просмотров

* 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 - то нужно покупать лицензию, которая не продаётся в рф

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
Помогите, пожалуйста, делаю программу для для подсчёта корней квадратного уравнения, знаю, что есть куча недочётов, недоработок, но основная проблема в том, что почему-то при ...
NYC
13
#include <stdio.h> int main(void) { int n; scanf("%d", &n); int digits1[n] = {0}; int digits2[n] = {0}; я не могу таким образом заранее массив нулями заполнить?
Linus
12
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
я про форму записи. смысл указывать что 8 байтный регистр 8 байт?
Aiwan \ (•◡•) / _bot
10
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
3
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Карта сайта