Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    Показатели использования CPU в сервере внешних метрик не отображаются.

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Показатели использования CPU в сервере внешних метрик не отображаются., Proxmox Виртуальная Среда
     
    effects_studio
    Guest
    #1
    0
    08.01.2020 22:59:00
    Я последовал руководству в https://pve.proxmox.com/wiki/External_Metric_Server и могу видеть метрики, такие как загрузка процессора в целом. Код: SELECT mean("cpu") FROM "cpustat" WHERE GROUP BY time(1m) fill(null), но набор "system" кажется неполным. Например, Код: SELECT last("cpu") FROM "system" GROUP BY time(1m), "host" fill(null) возвращает пустой набор результатов. Требуется ли где-то включить отчетность по метрикам для гостей?
     
     
     
    ngeron
    Guest
    #2
    0
    04.06.2020 05:23:00
    @effects_studio Я тут наткнулся на эту проблему, и, опираясь на комментарий @spirit, думаю, что могу быть близок к решению. Ошибка, которую мы видим (запись не удаётся, потому что uptime в виде float -> integer), связана с тем, как influxdb по умолчанию обрабатывает числовые значения как float. Если вам нужен integer, нужно добавлять 'i' в конец значения. Смотрите документацию line protocol. Как отметил @spirit, pvestatd просто берёт значение и передаёт его в influxdb. Это значит, что значение, которое выглядит как integer (скажем, 1234), обрабатывается influxdb как float. Однако, если у вас есть другие источники данных, например, если вы используете telegraf клиенты, которые также отправляют системную информацию, они могут отправлять значения как integers с суффиксом 'i'. Если shard получает данные uptime в виде integer от telegraf первым, то тип поля будет установлен как integer, и вы увидите указанную ошибку о несовпадении типов: pvestatd отправляет "float", а influxdb отказывается записывать это в поле integer. Моё первое "костыльное" решение было добавить 'i', когда число выглядит как integer, с помощью: $value = "${value}i" if ($value =~ /^[0-9]+$/); но, конечно, это просто переносит проблему к конфликтам с другими измерениями. После этого изменения я начал получать системные данные в influxdb/grafana, но измерения blockstat начали падать с обратной проблемой и ошибкой: error="partial write: field type conflict: input field \"bavail\" on measurement \"blockstat\" is type integer, already exists as type float dropped=109" Так что я всё ещё работаю над исправлением. Кажется, нам может понадобиться добавить таблицу поиска преобразований для сопоставления типов измерений/полей. Надеюсь, это немного поможет.
     
     
     
    trusty
    Guest
    #3
    0
    13.02.2021 12:37:00
    У меня это проблема возникает примерно каждые несколько дней. Перезапуск базы данных раньше это решал, что было, конечно, раздражает, но работало. Пока не перестало работать 3-4 раза подряд, и я начал копать глубже, наткнулся на эту тему. Как и сказал @effects_studio, если достаточно раз сбрасывать измерения, можно случайно это обойти, но... эх, @spirit, ты свой код на float поменял, а у меня проблемы со всеми значениями возникли. Я раньше никогда не работал с Perl, но "printf '%.02f'" как-то странно себя вел. После того, как я несколько раз сбрасывал измерения, это, кажется, меня решило: Perl: sub prepare_value {
       my ($value) = @_;

       if (looks_like_number($value)) {
           if (isnan($value) || isinf($value)) {
               # we cannot send influxdb NaN or Inf
               return undef;
           }

           # influxdb also accepts 1.0e+10, etc.
           $value = sprintf '%.2f',$value;    # add this to convert to float
           return $value;
       }
     
     
     
    jinjer
    Guest
    #4
    0
    02.07.2021 10:59:00
    Я пробовал с кодом: `$value = sprintf '%.2g',$value;` в надежде, что это уберет суффикс '.0' из значения, когда значение целое, но не помогло. Проблема здесь семантическая: вам не стоит передавать float для uptime. Это должно быть целое число. Я веду логи для многих хостов в системной таблице, не только Proxmox. Но Proxmox — единственный, кто передаёт float для этого поля. Думаю, что алгоритм конвертации слишком простой и должен учитывать разные типы данных. Это баг, просто и очевидно.
     
     
     
    colourreich
    Guest
    #5
    0
    27.12.2022 04:36:00
    Я тоже столкнулся с этой ошибкой, когда использовал Telegraf для получения метрик из Proxmox и отправки их в InfluxDB. Решил проблему, заставив Telegraf конвертировать значение в целое число. Код: # error="partial write: field type conflict: input field \"uptime\" on measurement \"system\" is type float, already exists as type integer dropped=15"
    [[processors.converter]]
     [processors.converter.fields]
       integer = ["uptime"]
     
     
     
    sub2o5
    Guest
    #6
    0
    10.08.2024 07:16:00
    Где именно ты это в конфиге разместил? Я вставил в конец, а ошибка всё равно осталась.

    Редактирую: Несмотря на то, что эта тема почти двухлетняя, я столкнулся с этим багом совсем недавно. Не могу точно сказать, когда, потому что не просматриваю syslog ежедневно на машине логирования. Но это могли быть какие-то недели. Возможно, proxmox что-то изменили в последнем коде.
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры