Hướng dẫn

Cách Giám Sát Máy Đào Bằng API NoxHash Tự Động

Hướng dẫn dev giám sát máy đào NoxHash qua API: xác thực, polling, cảnh báo offline, webhooks và script Python mẫu sẵn sàng dùng.

Updated May 01, 2026
Cách Giám Sát Máy Đào Bằng API NoxHash Tự Động

Giám sát máy đào NoxHash theo hướng lập trình có nghĩa là dùng API key để kéo dữ liệu hashrate, trạng thái và thu nhập theo thời gian thực vào công cụ của riêng bạn — một script Python, một Google Sheet, một dashboard Grafana, hoặc một đường ống gửi cảnh báo SMS. Hướng dẫn này đi qua các mẫu thiết kế tổng quát để xây dựng một hệ thống giám sát đáng tin cậy, bao gồm polling, webhook, và phép lịch sự với rate limit.

Xác thực bằng API key Polling hoặc webhook SMS, Sheets, Grafana
Minh họa đường ống giám sát NoxHash API đưa dữ liệu tới một script, một bảng tính, một dashboard và một cảnh báo SMS

Tại Sao Nên Giám Sát Máy Đào Qua API Thay Vì Dashboard

Dashboard web NoxHash được thiết kế cho con người: bạn đăng nhập, liếc nhìn hashrate và số dư BTC, rồi đăng xuất. Điều đó hiệu quả với một hoặc hai máy đào. Một khi bạn vận hành nhiều hợp đồng thuê — hoặc bạn muốn nhận cảnh báo khi có sự cố lúc 3 giờ sáng — bạn cần một cỗ máy canh chừng thay bạn.

Một hệ thống giám sát API nằm ngoài dashboard và kéo cùng dữ liệu theo lịch định kỳ. Nó có thể ghi thu nhập vào bảng tính, đẩy metric vào Grafana, hoặc nhắn tin cho bạn ngay khi một máy đào tụt offline. Bạn sở hữu logic, nên bạn quyết định chính xác khi nào được thông báo và cái gì được tính là "vấn đề".

Phát hiện offline

Nhận SMS hoặc email trong vòng vài phút nếu trạng thái máy đào thuê chuyển từ running sang stopped — không phải đợi tới sáng hôm sau khi tình cờ đăng nhập.

Báo cáo tự động

Thêm một dòng thu nhập hàng ngày vào Google Sheet hoặc database cục bộ. Xây dựng lịch sử đầy đủ độc lập với thời gian lưu trữ của dashboard, sẵn sàng cho thuế hoặc kế toán.

Dashboard tùy chỉnh

Đưa metric vào Grafana, Prometheus, hoặc một trang React tự xây. Kết hợp hashrate NoxHash với giá BTC để có bức tranh lợi nhuận thực sự.

Bước 1 — Tạo API Key Trong Tài Khoản NoxHash

Mỗi lệnh gọi API đều cần danh tính đã xác thực. NoxHash phát hành API key cá nhân từ phần cài đặt tài khoản, và bạn có thể đặt ngày hết hạn để một key bị rò rỉ tự động ngừng hoạt động.

1

Mở Profile → API Keys

Đăng nhập, nhấp vào avatar, và điều hướng đến mục API Keys trong profile. Nếu chưa làm, hãy bật 2FA trước — bạn không muốn một trang quản lý key chỉ được bảo vệ bằng mật khẩu.

2

Tạo key mới kèm ngày hết hạn

Đặt cho key một tên mô tả ("home-grafana", "sheets-logger") và đặt ngày hết hạn — 90 ngày là mặc định hợp lý. Key thời hạn ngắn giới hạn thiệt hại nếu chúng lọt vào một Git commit hoặc log chat.

3

Sao chép và lưu key an toàn

Bạn sẽ thấy toàn bộ key đúng một lần. Dán vào password manager hoặc nơi lưu biến môi trường — không bao giờ hard-code trong file nguồn. Trên server, giữ nó trong file .env đã được Git ignore.

4

Kiểm tra tài liệu API hiện tại

Đường dẫn endpoint, header, và quy tắc rate limit có thể thay đổi. Trước khi viết code, hãy xác nhận chính xác base URL, header xác thực, và route liệt kê máy đào trong tài liệu NoxHash chính thức. Các ví dụ dưới đây dùng tên hợp lý nhưng tổng quát — hãy xem đó là hình dạng, không phải hợp đồng.

Bước 2 — Một Script Python Giám Sát Tối Thiểu (Giả mã)

Đây là một script Python nhỏ, dễ đọc, xác thực, lấy danh sách máy đào, và gắn cờ những máy đã offline hơn 30 phút. Nó được giữ đơn giản có chủ đích — không phụ thuộc gì ngoài requests — nên bạn có thể thả vào cron job hôm nay và củng cố vào ngày mai.

monitor.py · Python 3.10+ python
import os, time, requests
from datetime import datetime, timedelta, timezone

API_BASE = "https://api.noxhash.com/v1"   # confirm in current docs
API_KEY  = os.environ["NOXHASH_API_KEY"]  # never hard-code
OFFLINE_THRESHOLD = timedelta(minutes=30)

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Accept": "application/json",
}

def fetch_miners():
    r = requests.get(f"{API_BASE}/miners", headers=headers, timeout=10)
    r.raise_for_status()
    return r.json().get("data", [])

def check_offline(miners):
    now = datetime.now(timezone.utc)
    alerts = []
    for m in miners:
        if m["status"] != "running":
            last_seen = datetime.fromisoformat(m["last_seen_at"])
            if now - last_seen > OFFLINE_THRESHOLD:
                alerts.append(m)
    return alerts

def send_sms(miner):
    # plug in Twilio / Vonage / a webhook to your phone
    print(f"ALERT: {miner['name']} offline since {miner['last_seen_at']}")

if __name__ == "__main__":
    while True:
        try:
            for miner in check_offline(fetch_miners()):
                send_sms(miner)
        except requests.HTTPError as e:
            print(f"API error: {e}")
        time.sleep(300)  # poll every 5 minutes — be kind to the API

Thích JavaScript hơn? Cùng hình dạng đó hoạt động với fetch trong một script Node.js, lên lịch bằng cron runner hoặc serverless scheduler. Logic giống hệt: xác thực, liệt kê máy đào, lọc theo status và timestamp, thông báo.

monitor.mjs · Node.js 20+ javascript
const API_BASE = "https://api.noxhash.com/v1";
const API_KEY  = process.env.NOXHASH_API_KEY;
const OFFLINE_MS = 30 * 60 * 1000;

async function fetchMiners() {
  const res = await fetch(`${API_BASE}/miners`, {
    headers: { Authorization: `Bearer ${API_KEY}` },
  });
  if (!res.ok) throw new Error(`HTTP ${res.status}`);
  const { data } = await res.json();
  return data;
}

function offlineAlerts(miners) {
  const now = Date.now();
  return miners.filter(m =>
    m.status !== "running" &&
    now - new Date(m.last_seen_at).getTime() > OFFLINE_MS
  );
}

setInterval(async () => {
  try {
    const alerts = offlineAlerts(await fetchMiners());
    alerts.forEach(m => console.log(`ALERT: ${m.name} offline`));
  } catch (e) { console.error(e.message); }
}, 5 * 60 * 1000);
API key · dùng thử miner miễn phí · dữ liệu thật

Chĩa script vào một máy đào thật chỉ trong vài phút

Các ví dụ Python và Node ở trên cần một thứ để sống dậy: một tài khoản NoxHash với máy đào đang chạy. Đăng ký miễn phí, kích hoạt gói dùng thử Basic Miner 2 ngày, tạo API key, và chạy script với dữ liệu hashrate thật.

Sơ đồ so sánh mẫu polling và webhook cho giám sát API

Ba Use Case Đáng Xây Dựng Đầu Tiên

Bạn không cần xây dựng mọi thứ trong ngày đầu. Chọn một trong những cái này và ship vào cuối tuần này — mỗi cái đủ nhỏ cho một buổi tối và thực sự hữu ích vào sáng thứ Hai.

Cảnh báo offline qua SMS

Cron script Python ở trên trên bất kỳ VPS 5 USD nào. Nối hàm send_sms tới Twilio hoặc một webhook điện thoại. Bạn sẽ biết về máy đào dừng trước khi cà phê nguội.

Log Google Sheet hàng ngày

Dùng Google Apps Script cho Sheets để lấy thu nhập hàng ngày NoxHash và thêm một dòng cho mỗi máy đào mỗi sáng. Hoàn hảo cho hồ sơ thuế và biểu đồ nhanh.

Dashboard Grafana

Đẩy hashrate và thu nhập BTC vào Prometheus qua một exporter nhỏ, rồi vẽ biểu đồ cùng giá BTC. Một cái liếc nói cho bạn biết máy đào của bạn có vượt thị trường tuần này không.

Polling vs Webhook — Mẫu Nào Phù Hợp?

Polling nghĩa là script của bạn hỏi API "có gì mới?" theo bộ đếm giờ. Webhook đảo ngược dòng: NoxHash đẩy sự kiện tới một URL bạn host. Cả hai đều có chỗ đứng. Nếu API hiện hỗ trợ webhook cho các sự kiện bạn quan tâm, chúng rẻ hơn và nhanh hơn; nếu không, một vòng polling lịch sự vẫn hoạt động tốt.

Yếu tố Webhook Polling
Độ trễ khi thay đổi trạng thái Vài giây Lên tới một chu kỳ polling
Lượng request API Chỉ khi có sự kiện Mỗi tick, dù có sự kiện hay không
Hạ tầng cần có Endpoint HTTPS công khai Bất kỳ máy nào chạy được cron
Xử lý sự kiện bị miss Phụ thuộc retry + kiểm tra chữ ký Tự chữa — tick sau bắt kịp
Phù hợp nhất cho Cảnh báo độ trễ thấp, nhiều máy đào Script đơn giản, báo cáo định kỳ

Một giải pháp lai thường là câu trả lời đúng: webhook cho cảnh báo quan trọng (máy đào offline, thuê sắp hết hạn), polling cho tóm tắt định kỳ (log thu nhập hàng ngày, báo cáo hàng tuần). Chọn dựa trên sự kiện nào API cung cấp và bạn chịu được độ trễ 1 đến 5 phút ở mức nào.

Phép Lịch Sự Với Rate Limit và Vệ Sinh Key

Một API bị bạn lạm dụng là một API bạn sẽ mất. NoxHash, giống như mọi nền tảng nghiêm túc, áp dụng rate limit và có thể tạm chặn các key hành xử xấu. Vài thói quen nhỏ giữ cho tích hợp của bạn được hoan nghênh và tài khoản an toàn.

Poll mỗi 1 đến 5 phút

Hashrate trên NoxHash cập nhật theo nhịp độ phút. Poll mỗi giây không mua cho bạn dữ liệu tươi hơn, chỉ mua phạt rate limit. Khoảng 60 đến 300 giây là điểm ngọt.

Back off khi nhận 429

Nếu bạn nhận HTTP 429 (Too Many Requests), hãy tôn trọng header Retry-After và gấp đôi khoảng thời gian. Exponential backoff thắng việc gõ búa endpoint thành khối cứng.

Không bao giờ commit key

Giữ key trong biến môi trường hoặc secret manager. Quét lịch sử Git trước khi push. Xoay key ngay nếu bạn nghi ngờ bị lộ — đó là lý do ngày hết hạn ngắn tồn tại.

Một key cho mỗi tích hợp

Dùng key riêng cho mỗi script hoặc server. Khi một cái bị xâm phạm hoặc bị deprecated, bạn có thể thu hồi mà không làm hỏng những cái khác. Đặt tên key theo chức năng, không phải nơi chúng sống.

Câu Hỏi Thường Gặp

Tôi có cần kinh nghiệm lập trình để giám sát máy đào không?

Không cần cho dashboard — nó đáp ứng hầu hết nhu cầu mà không cần một dòng code nào. Bạn chỉ cần kỹ năng Python hoặc JavaScript cơ bản khi muốn tự động hóa tùy chỉnh: cảnh báo SMS, ghi bảng tính, hoặc xem Grafana. Một Google Apps Script trong Sheets thường đủ cho người không phải dev.

Tôi có thể gọi API an toàn bao nhiêu lần?

Poll mỗi 1 đến 5 phút là đủ nhiều cho giám sát mining — hashrate và thu nhập NoxHash cập nhật theo nhịp độ phút, nên gọi thường hơn không cho bạn dữ liệu tươi. Luôn kiểm tra tài liệu API hiện tại cho con số rate limit chính xác và tôn trọng mọi header Retry-After.

Chuyện gì xảy ra nếu API key của tôi bị rò rỉ?

Thu hồi key ngay lập tức từ trang API Keys trong profile, sau đó tạo key mới và cập nhật script. Ngày hết hạn ngắn (ví dụ 90 ngày) tự động hạn chế phơi bày. 2FA trên tài khoản thêm một rào chắn thứ hai ngay cả khi cả thông tin đăng nhập và key đều bị đánh cắp.

Tôi có thể dùng API từ một serverless function không?

Được — AWS Lambda, Cloudflare Workers, Google Cloud Functions, và Vercel Cron đều hoạt động tốt cho kiểm tra định kỳ mỗi vài phút. Lưu API key trong secret manager của nhà cung cấp thay vì inline, và bọc request trong timeout để một lệnh gọi API chậm không làm cạn quota function.

Webhook có thay thế hoàn toàn polling không?

Thường là không. Webhook xử lý các sự kiện rời rạc như "máy đào offline" tức thì, nhưng bạn vẫn cần polling hoặc endpoint snapshot cho tổng hàng ngày, biểu đồ lịch sử, và đối soát sau các lần giao hàng bị miss. Hầu hết tích hợp production kết hợp cả hai: webhook cho cảnh báo, polling cho tóm tắt.

Script giám sát có ảnh hưởng tới thu nhập mining không?

Không. API chỉ đọc cho các endpoint giám sát — polling status và thu nhập không chạm tới hashrate, uptime, hay payout. Máy đào bạn thuê vẫn chạy trên hạ tầng NoxHash bất kể script bạn kiểm tra thường xuyên thế nào.

Không phải lời khuyên tài chính hoặc bảo mật

Hướng dẫn này mô tả các mẫu giám sát API tổng quát cho mục đích giáo dục. Đường dẫn endpoint, rate limit, và hỗ trợ webhook có thể thay đổi — luôn xác minh với tài liệu API NoxHash hiện tại trước khi viết code production. Thu nhập mining phụ thuộc vào giá BTC, độ khó mạng, và điều kiện thị trường, tất cả đều có thể biến động nhanh; hiệu suất quá khứ không đảm bảo kết quả tương lai. Chỉ cam kết số tiền bạn có thể đủ sức để mất, và tham vấn cố vấn thuế địa phương cho các câu hỏi về thu nhập crypto tại quốc gia của bạn.