แดชบอร์ด

คุณดีบักสิ่งที่ไม่ได้ log ไว้ไม่ได้ Polylane หาจุดบอดของคุณและปิดมัน

ลงชื่อเข้า waitlist
Observability improvements for #218 polylane +22 −2
Requests do not produce one context-rich event 3 affected routes · found after the last sync
server/api/checkout.post.ts mirrors your existing OpenTelemetry setup; no new dependencies
export default defineEventHandler(async (event) => {
const body = await readBody(event);
- const order = await createOrder(body);
- return { orderId: order.id };
+ return tracer.startActiveSpan("checkout", async (span) => {
+ const canonical: Record<string, unknown> = {
+ route: "checkout",
+ requestId: event.context.requestId,
+ cartId: body.cartId,
+ traceId: span.spanContext().traceId,
+ };
+ try {
+ const order = await createOrder(body);
+ span.setAttributes({ "order.id": order.id, "order.amount_cents": order.amountCents });
+ Object.assign(canonical, { orderId: order.id, amountCents: order.amountCents, outcome: "ok" });
+ return { orderId: order.id };
+ } catch (err) {
+ span.recordException(err);
+ span.setStatus({ code: SpanStatusCode.ERROR });
+ canonical.outcome = "error";
+ throw err;
+ } finally {
+ span.end();
+ emitCanonicalLogLine(canonical);
+ }
+ });
});
Opened against the pull request's own branch, so it can merge before the branch does.

คุณพบว่าบรรทัด log หายไปกลาง incident Polylane หาเจอก่อน

  • มันอ่าน route ของคุณ

    อันไหน log อันไหน trace อันไหนกลืน error ช่องว่างกลายเป็นสิ่งที่พบ แต่ละรายการมีหลักฐานและการแก้ไข

  • stack ของคุณ ไม่ใช่อันใหม่

    logger ของคุณ การตั้งค่า OpenTelemetry ของคุณ ธรรมเนียมของคุณ ไม่มี dependency ใหม่ ไม่มีทาง log secret

  • การแก้ไขในรูป pull request

    อันแรกมาถึงเมื่อคุณเชื่อมต่อ อันถัด ๆ ไปมาพร้อมกับการรีวิวโค้ด เทียบกับ branch ของคุณ

  • มันรู้ว่าเมื่อไรควรหยุด

    แน่นหนาดีอยู่แล้ว มันบอกอย่างนั้นแล้วหยุด

incident ครั้งถัดไปของคุณต้องการ log ที่คุณยังไม่ได้เขียน ปิดช่องว่างก่อนที่คุณจะต้องใช้