Monitoring
Abhängigkeiten
@blipit/node ab 0.2 und @blipit/nextjs 0.3 erfassen jeden Aufruf deines Servers an eine Datenbank, einen Cache oder einen externen Dienst wie einen SMS-, Zahlungs- oder E-Mail-Anbieter. Die Seite Abhängigkeiten zeigt eine Karte pro Dienst, so siehst du sofort, wenn Twilio ausfällt oder die Datenbank langsam wird. fetch, http, pg, mysql2 und ioredis brauchen keine Einrichtung.
1SDK installieren oder aktualisieren
Aktualisiere auf @blipit/node 0.2 oder @blipit/nextjs 0.3 und initialisiere es vor dem Start deiner App, mit dem geheimen Schlüssel. In Next.js exportierst du zusätzlich register aus instrumentation.ts, damit Blipit beim Serverstart beginnt.
npm install @blipit/node@latestexport { captureRequestError as onRequestError, register } from "@blipit/nextjs/server";2Was automatisch erfasst wird
- Ausgehende fetch- und http- oder https-Aufrufe. Bekannte Anbieter erscheinen mit eigenem Namen: Twilio, Vonage, MessageBird, Unifonic, Plivo, Sinch, Infobip, Stripe, PayPal, Checkout.com, Tap Payments, SendGrid, Mailgun, Postmark, Resend, Microsoft Graph, Google APIs, AWS, Supabase, Firebase, OpenAI, Anthropic, Slack, GitHub, Shopify und mehr. Jeder andere Host erscheint mit seinem Namen.
- PostgreSQL über pg und seinen Pool, MySQL und MariaDB über mysql2 sowie Redis über ioredis.
- Eingehende HTTP-Anfragen werden Transaktionen auf der Pulse-Seite, und jeder Aufruf während ihrer Bearbeitung ist im Trace mit ihr verknüpft.
3Andere Clients
postgres.js, node-redis und Prisma brauchen je eine Zeile. trace() umschließt alles andere, etwa ein SMS-SDK, das kein HTTP nutzt.
import postgres from "postgres";
import { createClient } from "redis";
import { PrismaClient } from "@prisma/client";
import * as Blipit from "@blipit/node";
const sql = Blipit.instrumentPostgres(postgres(process.env.DATABASE_URL));
const redis = Blipit.instrumentRedis(createClient());
const prisma = new PrismaClient().$extends(Blipit.prismaExtension("postgresql"));
await Blipit.trace("send OTP", () => sms.send(phone, code), { "server.address": "sms.example.ae" });4Die Seite lesen
Jede Karte zeigt die Aufrufe, die mittlere Antwortzeit und die im 95. Perzentil, die Fehlerquote und wie verfügbar der Dienst heute war (UTC), mit einer Sparkline, in der fehlgeschlagene Aufrufe rot sind. Fehlerhafte Dienste stehen oben. Öffne eine Karte für Diagramme zu Aufrufen und Antwortzeit, die letzten fehlgeschlagenen und die langsamsten Aufrufe, jeweils mit Link zum Trace.
5Alarme erhalten
Unter Alarme, im Bereich Alarme für Abhängigkeiten und Server, wählst du ein Projekt und legst deine eigenen Grenzwerte für Eine Abhängigkeit fällt aus und Eine Abhängigkeit ist langsam fest, oder schaltest einen davon ab. Alarme gehen per E-Mail, Slack, Microsoft Teams und Webhooks raus, und eine zweite Nachricht meldet, wenn der Dienst wieder normal läuft.
6Andere Sprachen
Jedes OpenTelemetry-SDK, das Spans als OTLP-JSON an https://in.blipit.io/v1/traces mit dem Header X-Blipit-Key sendet, erscheint ebenfalls: Client-Spans mit db.system werden Datenbanken, Client-Spans mit einer HTTP-URL externe Dienste.
Gut zu wissen
- Nie gesendet: Werte in SQL (Literale werden zu ?), Query-Strings und Zugangsdaten in URLs sowie Anfrage- oder Antwortinhalte. Aufrufe an Blipit selbst werden übersprungen.
- tracesSampleRate (standardmäßig 0.2) legt den Anteil der erfassten Anfragen fest; die Zahlen auf der Seite werden hochgerechnet. tracing: false schaltet es ab.
- Spans zählen zum monatlichen Span-Kontingent des Plans. Abhängigkeitsdaten werden so lange wie Spans aufbewahrt: 7 Tage bei Free und Solo, 14 Tage bei Team und Scale.
- Die automatische Erfassung braucht Node.js 20.16 oder 22.3 und neuer. Auf Serverless-Hosts umschließen Sie den Handler, damit die eingehende Anfrage erfasst und gesendet wird, bevor die Funktion pausiert: wrapHandler für AWS Lambda, withBlipit für Route Handler und Server Actions in Next.js, traceRequest für andere Handler, die einen Request erhalten.
Kommen Sie nicht weiter? Schreiben Sie an support@blipit.io. Schlüssel und die Projekt-ID jedes Projekts finden Sie unter API-Schlüssel in app.blipit.io.