Майнинг мониторингі және алерттер: тоқтап қалуды бір тәулік емес, бірнеше минут ішінде қалай білуге болады

Фермадағы тоқтап қалу дерлік ешқашан драмалық көрінбейді. Жарық сөнбейді, түтін шықпайды. Жай ғана бір сәтте машиналардың бір бөлігі share беруді тоқтатады, ал сіз бұл туралы таңертең, төлем кешегіден аз болғанда білесіз. Осы уақытта ақша қазірдің өзінде жоғалған, қайтару мүмкін емес: желі сіздің үлесіңізді кейін қайта есептемейді.

Төменде пул дашбордының неге ескерту жүйесі рөліне жарамсыз екенін, қандай метрикалар ақаудың алдын ала хабарлайтынын және қолда бар нәрселерден қарапайым хабарландыруды қалай жинауға болатынын талдаймыз.

Бір сағат тоқтап қалу қанша тұрады

Кез келген табыстылық калькуляторы қолданатын формуламен есептейміз:

\`\`\`

Тәулігіне BTC = (hashrate × 86400) / (difficulty × 2^32) × 3.125

\`\`\`

Мұнда 86400 - тәуліктегі секундтар, 2^32 - difficulty анықтамасынан шығады, ал 3.125 BTC - ағымдағы блок субсидиясы (мәні біздің 08.09.2026 желі кесіндісінен алынған).

127,45 триллион difficulty (mempool.space, 08.09.2026) және 78 349 доллар бағамын қойсақ:

ҚуатТәуліктік кірісБір сағат тоқтап қалу бағасыБір тәулік тоқтап қалу бағасы
100 TH/s3,86 $0,161 $3,86 $
1 PH/s38,6 $1,61 $38,6 $
10 PH/s386 $16,1 $386 $

Есептеу жалпы, пул комиссиясы мен электр энергиясына дейін, әрі транзакция комиссияларын есепке алмайды (mempool.space бойынша 08.09.2026 күні олар 4320 блок терезесінде сыйақыға 0,66% қосатын, яғни шамасы бойынша бұл дерлік ештеңені өзгертпейді).

Одан әрі қарапайым арифметика. Апат түнгі сағат бірде болды, күндізгі сағат бірде байқалды. Он екі сағат, 10 PH/s фермасы: төлемде мүлде болмайтын шамамен 193 доллар. Айына бір рет осындай сәйкестік болса, жыл сайын мүлдем жұмыс істейтін жабдықпен екі мың доллардан асады.

Кешігу бағасы сызықты түрде өседі
Кешігу бағасы сызықты түрде өседі

Пул дашборды мониторингті неге алмастырмайды

Қысқаша: пул сіздің жабдығыңыздың күйін емес, оған жеткен share ағынының күйін көрсетеді. Үзіліс пен дашбордтағы статустың өзгеруі арасында ондаған минут өтеді, себебі пул нақты апатты әдеттегі байланыс үзілуінен айыруы керек. AntPool-да бұл ресми түрде бекітілген: worker share-сіз 20 минуттан кейін Inactive статусын алады, ал Invalid статусын тек 24 сағат тыныштықтан кейін ғана алады (AntPool support, Worker Management).

Жиырма минут 10 PH/s-та 5,4 доллар болады, әрі бұл ең жақсы жағдай: worker толығымен құлады және статус іс жүзінде өзгереді. Егер машина жұмыс істеп жатса, бірақ екі есе аз берсе, статус жасыл боп қалады, пул сізге ештеңе айтпайды.

Екінші себебі де бар. Пул дашбордындағы hashrate - өлшем емес, орташалау терезесіндегі қабылданған share санына негізделген баға. Әрбір пулдың өз терезесі бар, әрі құжаттамада ол әрқашан көрсетілмейді. Терезе қысқа болған сайын график соғұрлым жүйкелі, ұзын болған сайын ол нақты құлдырауға соғұрлым кеш жауап береді.

Басқа пулдардың кешігу мен шектерінің мәндерін олардың өз құжаттамасынан тексеріңіз: ресми расталған сандарды біз тек AntPool-да таптық, оларды басқа пулдарға көшіруге болмайды.

Үш бақылау деңгейі

Бақылауды үш жерде жүргізуге болады, әрі әрқайсысы картинаның өз бөлігін көреді.

ДеңгейНе көредіНені көрмейдіӘдеттегі кешігу
Майнердің өзі (веб-интерфейс, локальді API)плата мен чиптер температурасын, желдеткіш айналымын, хешборд бойынша локальді hashrate-ті, қабылданбаған share-терді, қайта жүктелу фактісін, чип қателерінроутеріңізден әрі қарай пулмен байланыс жоғалғанын, share-тердің есептелгенінсекундтар
Желі мен қуат (роутер, ИБЖ, үй-жайдағы датчиктер)интернеттің жоғалуын, қуаттың жоғалуын, үй-жайдағы температура мен ылғалдылықтынақты бір машинаның ішінде не болып жатқанынсекундтар
Пул статистикасы (дашборд, аккаунт API-і)қабылданған share-терді, тиімді hashrate-ті, worker статустарын, есептеулердімәселенің себебін және жабдықтың күйінбірнеше минуттан ондаған минутқа дейін, жоғарыдағы AntPool мысалын қараңыз

Ешбір деңгей толыққанды емес. Майнер қызып кету туралы шыншылдықпен айтады, бірақ провайдер пулге жол кессе, үндемей қалады. Пул share-тердің жоғалуын көреді, бірақ кешігіп және себебін түсіндірместен. Қуат датчигі лезде іске қосылады, бірақ өшірілген машинаны ілінген машинадан ажырата алмайды.

Жұмыс минимумы - бірінші және үшінші деңгей: себебі үшін локальді деректер, жұмыстың шынымен ақыланғанын тексеру үшін пул деректері.

Қандай метрикалар ақаудың алдын ала хабарлайды

Тікелей жауап: қабылданбаған share-тер үлесі, локальді және пул hashrate-і арасындағы тұрақты алшақтық, чиптер температурасы және қайта жүктелу есептегіші. Бұл төрт сан машина толық тоқтап қалғанға дейін өзгереді, тоқтап қалу толық болғанға дейін араласуға уақыт береді.

  1. Қабылданбаған share-тер (reject rate). Өсіп келе жатқан бас тарту үлесі дерлік әрдайым желі: пакет жоғалуы, шамадан тыс жүктелген роутер, пул серверіне дейінгі қисық маршрут. Бас тарту нормасын бөгде мақалалардан емес, тыныш аптадағы өз деректеріңізден іздеңіз: жабдық пен провайдердің әрбір байланысында ол өзінікі.
  2. Локальді және пул hashrate-і арасындағы алшақтық. Бұл туралы төменде жеке бөлім бар, себебі мұнда ең жиі бекерге дүрбелең туады.
  3. Чиптер температурасы мен желдеткіш айналымы. Шаңмен басылған радиатор температураны біртіндеп көтереді. Машина алдымен өзі жиілікті төмендетеді, табыстылық пайызын үнсіз жоғалтады, содан кейін ғана қорғанысқа кетеді. Дәл осы үнсіз деградация фазасы температура шегімен жақсы ұсталады.
  4. Uptime есептегіші. Егер машинаның uptime-і үнемі қалпына келтірілсе, сізде пул айтпайтын қайта жүктелулер бар: рестарттар арасында share-тер жүреді, статус жасыл, бірақ жиынтық өндіру төмен.
  5. Жұмыс істейтін хешбордтар саны. Үш платалы машинадағы құлаған плата - дашбордта толығымен тірі worker-мен кірістің үштен бір бөлігінің жоғалуы.
Пул дашборды апат туралы сізден кеш біледі
Пул дашборды апат туралы сізден кеш біледі

Пул неге әрдайым майнердің өзінен аз көрсетеді

Тікелей жауап: майнер өзі есептеген іздеу жылдамдығын көрсетеді, ал пул қабылданған share-терден қалпына келтірілген бағаны көрсетеді. Екінші шама статистикалық, сондықтан ол ауытқиды және орташа алғанда төмен болып шығады: жұмыстың бір бөлігі қабылданбаған және кешіккен share-терге кетеді, бір бөлігі орташалау терезесінің дөңгелектелуінде жоғалады.

Практикалық ереже қарапайым. Күн бойы жоғары-төмен жүретін бірнеше пайыздық алшақтық - қалыпты таңдама дисперсиясы, ақау емес. Нағыз сигнал басқаша көрінеді: пул hashrate-і төмен түсіп, сол жерде қалады, ал локальді болса өзгермейді. Мұндай сурет машина есептеп жатыр, бірақ нәтиже пулге жетпейді немесе есептелмейді дегенді білдіреді.

Сіздің нақты байланысыңыз үшін норма қаншалықты үлкен екенін сізге ешкім айта алмайды. Тыныш апта бойы өз сандарыңызды жинаңыз, пул мен локальді hashrate-тің орташа қатынасын есептеңіз және содан бастаңыз. Төмендегі барлық шектермен де солай істеу керек.

Үшінші тарап қызметтерінсіз хабарландыруды қалай құрастыруға болады

Тәулік бойы жұмыс істейтін және HTTP сұрауларын жасай алатын кез келген машина керек: үйдегі мини-сервер, скрипттерді іске қоса алатын роутер, ескі ноутбук. Одан әрі екі дерек көзі.

Майнер жағынан. ASIC-тің веб-интерфейсі ағымдағы hashrate, температуралар, айналымдар, uptime, хешборд күйі және бас тарту есептегіштерін береді. Көптеген микробағдарламаларда дәл сол деректер локальді API немесе басқару сокеті арқылы машина оқи алатын түрде қолжетімді. Нақты мекенжайлар мен формат өндіруші мен микробағдарлама нұсқасына байланысты, өз модельіңіздің құжаттамасын қараңыз.

Пул жағынан. Кейбір пулдарда жеке кабинеттегі кілт арқылы worker-лердің hashrate-і мен статустары бар аккаунт API-і бар. Болуы, форматы және сұрау шектері әр пулда өзінікі, әрі мұны нақты пулдың құжаттамасынан тексеру керек: мұнда бірыңғай стандарт жоқ, әрі есептеріміздегі сипатталғаннан тыс endpoint-терді біз растаған жоқпыз.

Скрипттің логикасы он жолға сияды: минут сайын майнерлерді сұрау, бірнеше минут сайын пулды сұрау, мәндерді шектермен салыстыру, бұзушылық кезінде мессенджерге немесе поштаға хабарлама жіберу. Керісіншесін де қарастырыңыз: егер скрипттің өзі жарты сағаттан артық үндемесе, демек, құлаған фермасы емес, ол. Үндемейтін монитор - ең нашар монитор түрі, себебі ол бақылау сезімін жасайды.

Жалған дабылдарға батпау үшін қандай шек қою керек

Тікелей жауап: бір өлшеу бойынша емес, бірінен соң бірі бірнеше өлшеу бойынша. Share іздеу - кездейсоқ процесс, әрі графиктің қысқа құлдырауы тіпті жарамды ферманың өзінде де болмай қоймайды. Шек ауытқудың бірнеше сұрау интервалы бойы бірінен соң бірі сақталуын талап етуі керек, әйтпесе сіз сағат сайын хабарландыру алатын боласыз және оларды тым тез оқуды тоқтатасыз.

Практикалық схема мынадай көрінеді:

  1. Майнердің толық үнсіздігі. Локальді сұрау қатарынан екі рет жауап бермейді. Бұл енді дисперсия емес, бірден жауап беру керек.
  2. Hashrate құлдырауы. Мән жұмыс нормаңыздан төмен және бірнеше өлшеу бойы бірінен соң бірі сол жерде тұрады. Қаншалықты төмен және қанша өлшеу керек екенін тыныш апта бойынша өз тарихыңыздан анықтаңыз.
  3. Температура. Шекті модельіңіздің өндіруші құжаттамасынан алыңыз, әрі авариялық тоқтаудан бұрын жауап беруге үлгеру үшін алертті қорғаныс іске қосылу температурасынан төмен қорға отырғызыңыз.
  4. Қабылданбаған share-тер. Интернеттен алынған абсолютті санмен емес, өз тыныш фонымен салыстырыңыз.
  5. Пулдың үнсіздігі. Пайдалы, бірақ кешігуді есте сақтаңыз: AntPool-да тіпті ресми Inactive статусы тек 20 минуттан кейін пайда болады. Мұндай алерт әрдайым локальдіден кеш келеді.

Тағы бір ереже: әрбір алерттің іске қосылғаннан кейін тыныштық уақыты болуы керек. Әйтпесе түнгі сағат үштегі бір апат таңертең қырық бірдей хабарламаға айналады, әрі таңертең сіз фермамен емес, хабарландыруларды тазалаумен айналысасыз.

Іске қосылу сәтінде не істеу керегін жеке шешіңіз. Ферма сіздің үйіңізде тұрмаса, қашықтан ештеңе істеу мүмкіндігі жоқ хабарландыру түніңізді бұзу тәсіліне айналады. Мұнда резервтік пул тақырыбы қосылады: апаттардың бір бөлігі жабдықтың бұзылуы емес, пул жағында немесе оған дейінгі маршрутта туындаған мәселе, әрі ол шығуды емес, автоматты ауыстыруды талап етеді. Резервтік мекенжайды баптау туралы біз жеке жаздық.

Бір кешке арналған чек-лист

  1. Жоғарыдағы формула бойынша өз бір сағат тоқтап қалу бағаңызды есептеңіз. Бір сан кейінгі бүкіл әрекеттерді мағыналы етеді.
  2. Базалық сызықты жинаңыз: локальді hashrate, пул hashrate-і, температуралар, тыныш тәулікте бас тарту үлесі.
  3. Микробағдарламаңыз деректерді машина оқи алатын түрде беретінін тексеріп, мекенжайды жазып алыңыз.
  4. Өз пулыңыздың құжаттамасында аккаунт API-і бар-жоғын және оның қандай шектеулері барын тексеріңіз.
  5. Файлға немесе қарапайым дерекқорға жазумен минут сайын майнерлерді сұрауды жазыңыз.
  6. Төрт алертті баптаңыз: жауап жоқ, hashrate құлдырауы, температура, бас тартулардың өсуі.
  7. Іске қосылғаннан кейінгі тыныштықты және үндемейтін монитордан қорғанысты қосыңыз.
  8. Барлығын шыншылдықпен тексеріңіз: бір машинадан желі кабелін суырып тастаңыз және хабарлама қанша уақыттан кейін келетінін өлшеңіз.
  9. Егер бұл әлі жасалмаса, майнер баптауларында екінші пулды тіркеңіз.
  10. Бір аптадан кейін жиналған деректер бойынша шектерді қайта қараңыз. Бірінші реттен олар дерлік ешқашан дәл болмайды.

Сегізінші тармақ ең жиі өткізіп жіберіледі, бірақ ол жүйенің шынымен жұмыс істейтінін дәлелдейтін жалғызы.

Алерт шектері өз базалық сызығыңызға қарай баптанады
Алерт шектері өз базалық сызығыңызға қарай баптанады

Ары қарай нені оқу керек

Мониторинг кірісті арттырмайды. Ол тек қазірдің өзінде табылғанды жоғалтпауға мүмкіндік береді, ал майнингте бұл екі нәрсе арасындағы айырмашылық дерлік нөлге тең.