Nano Hash - криптовалюты, майнинг, программирование

pb nagios python возвращает ноль

У меня есть pb со скриптом на python, который использует команду bash (я не разрешил этот pb pb nagios bash script null приводит к if, поэтому я попытался сделать то же самое с python). Я получаю дисковое пространство в переменной с помощью этой команды:

total=sp.Popen(["/srv/eyesofnetwork/nagios/plugins/check_nt", "-H", host,"-p", "12489", "-s", '', "-v", "USEDDISKSPACE", "-l", lecteur], stdin=sp.PIPE, stdout=sp.PIPE, stderr=sp.PIPE).communicate()[0].split("\n")

Я получаю значение "OK e:: 4,701 ТБ/5 ТБ используется|'e: свободно'=306.11612G;20;5;0;5119.87206 'e: свободно %'=6%;0;0;0; 100\n" Поэтому я использую эту команду, чтобы получить только размер диска (я знаю, что это не так, но я не эксперт в python):

total=int(str(total).split()[3].split(',')[0])

Но когда я добавляю эту строку в скрипт, nagios возвращает «null» в качестве информации. Когда я запускаю скрипт вручную, он работает, и когда я комментирую эту строку, он работает и в интерфейсе nagios. Мне нужно это значение, чтобы изменить предупреждение и критический порог в зависимости от размера диска. Я не понимаю, потому что я не возвращаю это значение, я использую его только в скрипте для выполнения другой команды с IF :

if total < 2.05 :
            sp.Popen(["/srv/eyesofnetwork/nagios-3.5.1/plugins/check_nrpe", "-H", host, "-c", "check_drivesize", "-a", "drive=" + lecteur, "warning=free<0.2G", "critical=free<0.1G", "show-all", "perf-config=*(unit:G)"])
    elif total >= 2.05 and total < 99.99.......

Спасибо.

23.10.2018

  • Я удаляю int() : =› total=str(total).split()[3].split(',')[0] и теперь это работает. Теперь у меня есть pb с этой переменной: res=str(resultat).split()[0].split('')[1] и работает, когда я удаляю [1]. Выше есть переменная res=str(resultat).split()[0], которая работает. Это безумие. У кого-то есть объяснение? 23.10.2018

Ответы:


1

Кто-то с другого форума дал мне решение. Я должен использовать float(), а не int(), потому что после я сравниваю переменную с float.

24.10.2018
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..