دليل Node.js مع AllStak

أضف تتبّع الأخطاء وتتبّع الطلبات والتتبّع الموزّع إلى أي خدمة Node.js عبر حزمة AllStak JS SDK.

المستودع المصدر:
AllStak/allstak-js
مسار README:
README.md
إصدار الـ SDK:
0.3.1
مصدر التثبيت:
npm
آخر تحقّق:
2026-05-31

التثبيت

ثبّت الحزمة من npm.

npm install @allstak/js

الإعداد

هيّئ عميل AllStak في أبكر وقت ممكن في ملف الدخول.

import { AllStak } from '@allstak/js';

AllStak.init({
  apiKey: process.env.ALLSTAK_API_KEY!,
  environment: process.env.NODE_ENV ?? 'production',
  release: process.env.ALLSTAK_RELEASE,
  tags: { service: 'worker' },
});

مثال أساسي

في Express، أضف معالج الطلبات قبل مساراتك ومعالج الأخطاء بعدها (من المسار الفرعي @allstak/js/express).

import express from 'express';
import { AllStak } from '@allstak/js';
import { allstakExpress } from '@allstak/js/express';

const app = express();
app.use(express.json());
app.use(allstakExpress.requestHandler());

app.post('/checkout', async (_req, res) => {
  res.json({ ok: true });
});

app.use(allstakExpress.errorHandler());
app.listen(3000);

التقاط الأخطاء

التقط الاستثناءات في كتل try/catch أو المهام الخلفية.

try {
  throw new Error('payment failed');
} catch (error) {
  AllStak.captureException(error as Error);
}

await AllStak.flush();

تتبّع الطلبات

يسجّل معالج طلبات Express الطلبات الواردة؛ اضبط httpBodyCapture: { request: true, response: true } في init لتضمين الأجسام. ويتوفّر إبلاغ عام أيضًا عبر AllStak.captureRequest(item).

أفضل الممارسات

  • هيّئ AllStak قبل استيراد الوحدات الأخرى.
  • سجّل allstakExpress.errorHandler() أخيرًا، بعد كل المسارات.
  • استخدم environment و release لفصل البيانات وتجميعها لكل نشر.