Как воспроизвести недавние запросы Influx
Я хочу загрузить тестовый Influx, как мне воспроизвести последние выполненные запросы? В гугле ничего значимого не нашел.
1 ответ
Вы можете получить запросы с помощью:
docker logs $MYCONTAINER --since "10m" |& grep -o -P "query=\K.+" | sed 's/^.//;s/.$//' > out.txt
А затем выполните их с помощью:
cat out.txt | xargs -I _ docker run -t --rm influxdb:1.8-alpine influx -host MYHOST -port 8086 -username USER -password PASS -database DB -execute _
Чтобы измерить время, затраченное на каждый запрос, в поле притока вы можете запустить
sudo strace -p $(pgrep influxd) -f -e write -t -s 512 |& grep "write(1,"
Объяснение:strace
прослушивает системные вызовы.
-
-f
flag находит и подключается к любым дочерним процессам. -
-e
прослушивает определенные системные вызовы -
-t
показывает временные метки -
-s
устанавливает символы цифр для отображения
Сgrep
, мы хотим избежать сетевых системных вызовов, поэтому смотрим только наstdout
дескриптор файла.