Новая версия: 2 января 2014
У меня есть несколько лезвий и кубы, и я обычно запустить stratum_proxy.py от слякоти, так что трудно контролировать их в одном месте. Итак, я написал несколько сценариев, чтобы сделать работу для меня, bcread и bcshow. Я призываю с
Код:
смотреть -n 10 bcshow
или его "bcmon" псевдоним Код:
псевдоним bcmon = 'смотреть -n 10 bcshow'
и после этого я получаю 10-секундные обновления для всех лезвий и кубов в одном удобном текстовом окне.Мне пришло в голову, что я, вероятно, не был единственным в этой ситуации, поэтому я думал, что я поделюсь. Код не очень, но он должен работать нормально в большинстве версий Linux. Комментарии показывают, где большинство конфигурации должно быть сделано, но вы можете изменить по своему вкусу. Скопируйте эти файлы в каталог ~ / бен и CHMOD + х их, и вы должны быть хорошо идти после установки несколько переменных.
Наслаждайтесь - надеюсь, что это кому-то пригодится! Чаевые приветствуются, но не на все требуется (BTC: 1GY9wmMmw1E7DPLzQXt4UPuEuHQN29PixD).
Вот окно выстрел из него в действии (ничего сложного, но большая часть информации мониторинга есть):
bcread:
Код:
#! / Bin / Баш
# Эти сценарии предположим, ваши лопатки между 192.168.1.200 и 192.168.1.210
# И ваши кубики 192.168.1.211 и выше. Если у вас есть другие
# Конфигурации, пожалуйста, измените число отсечных здесь:
bladelow = 200
bladehigh = 210
# Введите префикс сети здесь. Если ваша сеть 192.168.1.x,
# Затем просто ввести первые 3 порции, как показано ниже:
нетто ="192.168.1"
# Веб-интерфейсы являются стандартными, т.е. порт 8000 для обоих лезвий и кубов
если [ "$ 1" знак равно "" ]; затем выйти; фи
DEV ="лопасть"
НПЦ =""
п = $ (($ 1- $ bladelow))
если [$ 1 -gt $ bladehigh]; тогда
DEV ="куб"
п = $ (эхо -n $ (($ 1- $ bladehigh))" ")
НПЦ =" "
фи
если [$ 1 -le $ bladehigh]; тогда
т = $ (свернуться -s Http: //$net.$1: 8000 | SED 's /^.* MHS: / MHS: /' | СЕПГ «s / s<\ /.*/ s /»| СЕПГ «s /<[^>] *>/ / Г»| СЕПГ 's /: /: / г' | тр -s " ")
т.пл. = 2; JP = 4; ар = 6; WUP = 9; ер = 11; UPP = 14
еще
т = $ (свернуться -s Http: //$net.$1: 8000 | СЭД 's /^.* Работа: / Работа: /' | СЕПГ «s / s<\ /.*/ s /»| СЕПГ «s /<[^>] *>/ / Г»| СЕПГ 's /: /: / г' | тр -s " ")
т.пл. = 13; JP = 2; ар = 4; WUP = 15; ер = 17; UPP = 20
фи
ТМХ = $ (эхо $ т | вырезать -f $ т.пл -d " ")
GH = $ (Printf "% 6.3f \ п" $ (Эхо $ TMH / 1000 | Ьс -l))
tjobs = $ (эхо $ т | вырезать -f $ JP -d " " | СЕПГ 's / ^ 0 * //')
TACC = $ (эхо $ т | вырезать -f $ ар -d " " | СЕПГ 's / ^ 0 * //')
согл =""$ (Printf "% 9.0f \ п" $ TACC)""
пусть tlost = $ tjobs- $ TACC
потерявшие =""$ (Printf "% 9.0f \ п" $ Tlost)""
tutil = $ (эхо $ т | вырезать -f $ WUP -d " ")
Util =""$ (Printf "% 3.0f \ п" $ Tutil)""
метличка = $ (эхо $ т | вырезать -f $ ер -d " ")
numeff = $ (эхо $ метличка | вырезать -d "%" -f 1)
эфф =""$ (Printf "% 6.2f \ п" $ Numeff)""
стро = $ (эхо $ т | вырезать -f $ УПП -d " ")
Printf "% -8s" " $ DEV # $ п"
Printf "% 3s" " :"
Printf "% 8s" $ Г.Х.
Printf "% 9s" "$ Эфф%"
Printf "% 11s" "$ Util / м |"
Printf "% 12s" $ акк
Printf "% 10s" $ потеряли
Printf "% 17s \ п" $ стро
# Эти сценарии предположим, ваши лопатки между 192.168.1.200 и 192.168.1.210
# И ваши кубики 192.168.1.211 и выше. Если у вас есть другие
# Конфигурации, пожалуйста, измените число отсечных здесь:
bladelow = 200
bladehigh = 210
# Введите префикс сети здесь. Если ваша сеть 192.168.1.x,
# Затем просто ввести первые 3 порции, как показано ниже:
нетто ="192.168.1"
# Веб-интерфейсы являются стандартными, т.е. порт 8000 для обоих лезвий и кубов
если [ "$ 1" знак равно "" ]; затем выйти; фи
DEV ="лопасть"
НПЦ =""
п = $ (($ 1- $ bladelow))
если [$ 1 -gt $ bladehigh]; тогда
DEV ="куб"
п = $ (эхо -n $ (($ 1- $ bladehigh))" ")
НПЦ =" "
фи
если [$ 1 -le $ bladehigh]; тогда
т = $ (свернуться -s Http: //$net.$1: 8000 | SED 's /^.* MHS: / MHS: /' | СЕПГ «s / s<\ /.*/ s /»| СЕПГ «s /<[^>] *>/ / Г»| СЕПГ 's /: /: / г' | тр -s " ")
т.пл. = 2; JP = 4; ар = 6; WUP = 9; ер = 11; UPP = 14
еще
т = $ (свернуться -s Http: //$net.$1: 8000 | СЭД 's /^.* Работа: / Работа: /' | СЕПГ «s / s<\ /.*/ s /»| СЕПГ «s /<[^>] *>/ / Г»| СЕПГ 's /: /: / г' | тр -s " ")
т.пл. = 13; JP = 2; ар = 4; WUP = 15; ер = 17; UPP = 20
фи
ТМХ = $ (эхо $ т | вырезать -f $ т.пл -d " ")
GH = $ (Printf "% 6.3f \ п" $ (Эхо $ TMH / 1000 | Ьс -l))
tjobs = $ (эхо $ т | вырезать -f $ JP -d " " | СЕПГ 's / ^ 0 * //')
TACC = $ (эхо $ т | вырезать -f $ ар -d " " | СЕПГ 's / ^ 0 * //')
согл =""$ (Printf "% 9.0f \ п" $ TACC)""
пусть tlost = $ tjobs- $ TACC
потерявшие =""$ (Printf "% 9.0f \ п" $ Tlost)""
tutil = $ (эхо $ т | вырезать -f $ WUP -d " ")
Util =""$ (Printf "% 3.0f \ п" $ Tutil)""
метличка = $ (эхо $ т | вырезать -f $ ер -d " ")
numeff = $ (эхо $ метличка | вырезать -d "%" -f 1)
эфф =""$ (Printf "% 6.2f \ п" $ Numeff)""
стро = $ (эхо $ т | вырезать -f $ УПП -d " ")
Printf "% -8s" " $ DEV # $ п"
Printf "% 3s" " :"
Printf "% 8s" $ Г.Х.
Printf "% 9s" "$ Эфф%"
Printf "% 11s" "$ Util / м |"
Printf "% 12s" $ акк
Printf "% 10s" $ потеряли
Printf "% 17s \ п" $ стро
bcshow:
Код:
#! / Bin / Баш
# Введите последнюю часть IP-адреса каждой лопасти и кубу, и
# "0" означает, что вы хотите, строка пропускается.
ИПС = (201 203 0 211 212 213 214 215)
пусть карапуз = 0
эхо ------------------------------------------------- -------------------------------
эхо " GH / с Eff Util Принимает Потеряли Достигаемость"
эхо ------------------------------------------------- -------------------------------
для ф в $ {изобр [@]}
делать
если [ "$ ф" -gt 0]; тогда
. bcread $ ф
пусть карапуз ="$ карапуз"+"$ (Эхо $ TMH | СЭД 's / ^ 0 * //')"
еще
эхо " : |"
фи
сделанный
эхо ------------------------------------------------- -------------------------------
Printf " Итого:% 6.3f GH / с" $ (Эхо $ карапуз / 1000 | Ьс -l)
эхо
эхо
эхо
Хвост -5 ~ / .shamine / shalog
эхо
# Введите последнюю часть IP-адреса каждой лопасти и кубу, и
# "0" означает, что вы хотите, строка пропускается.
ИПС = (201 203 0 211 212 213 214 215)
пусть карапуз = 0
эхо ------------------------------------------------- -------------------------------
эхо " GH / с Eff Util Принимает Потеряли Достигаемость"
эхо ------------------------------------------------- -------------------------------
для ф в $ {изобр [@]}
делать
если [ "$ ф" -gt 0]; тогда
. bcread $ ф
пусть карапуз ="$ карапуз"+"$ (Эхо $ TMH | СЭД 's / ^ 0 * //')"
еще
эхо " : |"
фи
сделанный
эхо ------------------------------------------------- -------------------------------
Printf " Итого:% 6.3f GH / с" $ (Эхо $ карапуз / 1000 | Ьс -l)
эхо
эхо
эхо
Хвост -5 ~ / .shamine / shalog
эхо
Под капотом: В основном это просто скребет веб-интерфейсы лопаток и кубов и выбирает информацию, я хотел, чтобы контролировать, а затем анализирует его, отображает его и делает общий hashrate. Простой и, вероятно, не так элегантно, как это должно быть, но я быстро и грязно "убийца" когда я могу уйти с ним.
Нет сомнений, что эти сценарии могут быть легко изменены, чтобы очистить другие шахтеры с веб-интерфейсов, которые не имеют API-интерфейсы, но так как у меня нет этих других шахтеров (и нет сомнений, что никто не будет жертвовать мне), что это упражнение левой для читателя.