Регистрация времени начала и окончания скрипта, который зацикливается

У меня есть файл .py, в котором есть циклы через сценарий bash вот так:

 while True:
        text = "app cli -- some parameters -- email, password and body for a message"
        os.system(text)

Я запускаю его из bash и я могу только остановить эту постоянную отправку сообщений, набрав kill -9 pid в bash

и мой вопрос в том, как я могу регистрировать время начала и окончания (время окончания означает, когда я убил процесс) и количество сообщений / циклов (частота), когда я запускаю его как скрипт и заканчиваю его с bash .. придется ли мне настраивать свой скрипт Python или мне придется настраивать мою команду во время работы? и как?

Я также уверен, что есть более элегантный способ делать то, что я пытаюсь сделать, я просто новичок ...

Единственное, что мне удалось сделать, это время, сколько времени уходит на отправку одного сообщения за раз .. и это не особо помогает ..

«Я также уверен, что есть более элегантный способ сделать то, что я пытаюсь сделать» Мне непонятно, что вы пытаетесь сделать, не могли бы вы пояснить цель сценария?

roganjosh 29.08.2018 09:47

эй, да, в основном хочу бомбардировать наш сервер приложений, постоянно отправляя сообщения от пи, чтобы проверить его емкость и то, как он справляется со стрессом, поэтому мне нужно регистрировать много вещей, и частота важна

skdadle 29.08.2018 09:49

Интересно, пригодится ли это? Я не слишком знаком с Linux

roganjosh 29.08.2018 09:55
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
217
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Для регистрации времени вы можете использовать команду time (Unix).

Например, если я запустил эту программу:

iterations = 0
while True:
        // do something
        iterations+=1
        print iterations 

Вызовите сценарий, используя следующую команду:

time python myscript.py

После этого, допустим, вы останавливаете выполнение с помощью Cntr+C или любой другой принудительной остановки. Теперь вы можете проверить количество времени, в течение которого вы запускаете скрипт, и сколько итераций вы получили, проверив вывод, который в моем случае:

7773
7774
7775
Traceback (most recent call last):
  File "script.py", line 5, in <module>
    print counter
KeyboardInterrupt


real    0m2.447s
user    0m0.109s
sys     0m0.234s

Обратите внимание, что вы можете найти в документации команды time значение трех значений времени, которые вы получаете от нее.

спасибо за это, могу ли я перенаправить ответы с сервера, которые появляются в bash, и вывод команды time в файл журнала, до сих пор я использовал это {time ./stresstest02.py; } 2> time.txt, но это только время. есть ли способ объединить 2? выходы

skdadle 30.08.2018 09:59

Например, (time ls) > log.log 2>&1 записывает выходные данные time и ls в один и тот же файл.

rakwaht 30.08.2018 10:31

Другие вопросы по теме