[{"data":1,"prerenderedAt":2706},["ShallowReactive",2],{"navigation_docs":3,"-core-concepts-wide-events":191,"-core-concepts-wide-events-surround":2701},[4,30,65,115,132,146],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","/getting-started","1.getting-started",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","/getting-started/introduction","1.getting-started/1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Installation","/getting-started/installation","1.getting-started/2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quick Start","/getting-started/quick-start","1.getting-started/3.quick-start","i-lucide-zap",{"title":25,"path":26,"stem":27,"icon":28},"Agent Skills","/getting-started/agent-skills","1.getting-started/4.agent-skills","i-lucide-sparkles",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Core Concepts","/core-concepts","2.core-concepts",[35,40,45,50,55,60],{"title":36,"path":37,"stem":38,"icon":39},"Wide Events","/core-concepts/wide-events","2.core-concepts/1.wide-events","i-lucide-layers",{"title":41,"path":42,"stem":43,"icon":44},"Structured Errors","/core-concepts/structured-errors","2.core-concepts/2.structured-errors","i-lucide-shield-alert",{"title":46,"path":47,"stem":48,"icon":49},"Best Practices","/core-concepts/best-practices","2.core-concepts/3.best-practices","i-lucide-shield-check",{"title":51,"path":52,"stem":53,"icon":54},"Typed Fields","/core-concepts/typed-fields","2.core-concepts/4.typed-fields","i-simple-icons-typescript",{"title":56,"path":57,"stem":58,"icon":59},"Sampling","/core-concepts/sampling","2.core-concepts/5.sampling","i-lucide-filter",{"title":61,"path":62,"stem":63,"icon":64},"Client Logging","/core-concepts/client-logging","2.core-concepts/6.client-logging","i-lucide-monitor",{"title":66,"path":67,"stem":68,"children":69,"page":29},"Adapters","/adapters","3.adapters",[70,75,80,85,90,95,100,105,110],{"title":71,"path":72,"stem":73,"icon":74},"Overview","/adapters/overview","3.adapters/1.overview","i-custom-plug",{"title":76,"path":77,"stem":78,"icon":79},"Axiom","/adapters/axiom","3.adapters/2.axiom","i-custom-axiom",{"title":81,"path":82,"stem":83,"icon":84},"OTLP","/adapters/otlp","3.adapters/3.otlp","i-simple-icons-opentelemetry",{"title":86,"path":87,"stem":88,"icon":89},"PostHog","/adapters/posthog","3.adapters/4.posthog","i-simple-icons-posthog",{"title":91,"path":92,"stem":93,"icon":94},"Sentry","/adapters/sentry","3.adapters/5.sentry","i-simple-icons-sentry",{"title":96,"path":97,"stem":98,"icon":99},"Better Stack","/adapters/better-stack","3.adapters/6.better-stack","i-simple-icons-betterstack",{"title":101,"path":102,"stem":103,"icon":104},"Custom Adapters","/adapters/custom","3.adapters/7.custom","i-lucide-code",{"title":106,"path":107,"stem":108,"icon":109},"Pipeline","/adapters/pipeline","3.adapters/8.pipeline","i-lucide-workflow",{"title":111,"path":112,"stem":113,"icon":114},"Browser","/adapters/browser","3.adapters/9.browser","i-lucide-globe",{"title":116,"path":117,"stem":118,"children":119,"page":29},"Enrichers","/enrichers","4.enrichers",[120,123,128],{"title":71,"path":121,"stem":122,"icon":28},"/enrichers/overview","4.enrichers/1.overview",{"title":124,"path":125,"stem":126,"icon":127},"Built-in","/enrichers/built-in","4.enrichers/2.built-in","i-lucide-puzzle",{"title":129,"path":130,"stem":131,"icon":104},"Custom","/enrichers/custom","4.enrichers/3.custom",{"title":133,"path":134,"stem":135,"children":136,"page":29},"NuxtHub","/nuxthub","5.nuxthub",[137,141],{"title":71,"path":138,"stem":139,"icon":140},"/nuxthub/overview","5.nuxthub/1.overview","i-lucide-database",{"title":142,"path":143,"stem":144,"icon":145},"Retention","/nuxthub/retention","5.nuxthub/2.retention","i-lucide-clock",{"title":147,"path":148,"stem":149,"children":150,"page":29},"Examples","/examples","6.examples",[151,156,161,166,171,176,181,186],{"title":152,"path":153,"stem":154,"icon":155},"Next.js","/examples/nextjs","6.examples/1.nextjs","i-simple-icons-nextdotjs",{"title":157,"path":158,"stem":159,"icon":160},"SvelteKit","/examples/sveltekit","6.examples/2.sveltekit","i-simple-icons-svelte",{"title":162,"path":163,"stem":164,"icon":165},"TanStack Start","/examples/tanstack-start","6.examples/3.tanstack-start","i-custom-tanstack",{"title":167,"path":168,"stem":169,"icon":170},"NestJS","/examples/nestjs","6.examples/4.nestjs","i-simple-icons-nestjs",{"title":172,"path":173,"stem":174,"icon":175},"Express","/examples/express","6.examples/5.express","i-simple-icons-express",{"title":177,"path":178,"stem":179,"icon":180},"Hono","/examples/hono","6.examples/6.hono","i-simple-icons-hono",{"title":182,"path":183,"stem":184,"icon":185},"Fastify","/examples/fastify","6.examples/7.fastify","i-simple-icons-fastify",{"title":187,"path":188,"stem":189,"icon":190},"Elysia","/examples/elysia","6.examples/8.elysia","i-custom-elysia",{"id":192,"title":36,"body":193,"description":2690,"extension":2691,"links":2692,"meta":2697,"navigation":2698,"path":37,"seo":2699,"stem":38,"__hash__":2700},"docs/2.core-concepts/1.wide-events.md",{"type":194,"value":195,"toc":2673},"minimark",[196,200,205,208,416,419,448,451,766,770,773,778,781,870,874,878,881,972,976,979,1153,1157,1160,1338,1341,1345,1440,1444,1604,1608,1615,2014,2018,2021,2349,2353,2356,2652,2656,2669],[197,198,199],"p",{},"Wide events are the core concept behind evlog. Instead of scattering logs throughout your codebase, you accumulate context and emit a single, comprehensive log event.",[201,202,204],"h2",{"id":203},"why-wide-events","Why Wide Events?",[197,206,207],{},"Traditional logging creates noise:",[209,210,216],"pre",{"className":211,"code":212,"filename":213,"language":214,"meta":215,"style":215},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","// Traditional approach - 6 separate log lines\nlogger.info('Request started')\nlogger.info('User authenticated', { userId: user.id })\nlogger.info('Fetching cart', { cartId: cart.id })\nlogger.info('Processing payment')\nlogger.info('Payment successful')\nlogger.info('Request completed', { duration: 234 })\n","server/api/checkout.post.ts","typescript","",[217,218,219,228,258,302,340,360,380],"code",{"__ignoreMap":215},[220,221,224],"span",{"class":222,"line":223},"line",1,[220,225,227],{"class":226},"sHwdD","// Traditional approach - 6 separate log lines\n",[220,229,231,235,239,243,246,249,253,255],{"class":222,"line":230},2,[220,232,234],{"class":233},"sTEyZ","logger",[220,236,238],{"class":237},"sMK4o",".",[220,240,242],{"class":241},"s2Zo4","info",[220,244,245],{"class":233},"(",[220,247,248],{"class":237},"'",[220,250,252],{"class":251},"sfazB","Request started",[220,254,248],{"class":237},[220,256,257],{"class":233},")\n",[220,259,261,263,265,267,269,271,274,276,279,282,286,289,292,294,297,300],{"class":222,"line":260},3,[220,262,234],{"class":233},[220,264,238],{"class":237},[220,266,242],{"class":241},[220,268,245],{"class":233},[220,270,248],{"class":237},[220,272,273],{"class":251},"User authenticated",[220,275,248],{"class":237},[220,277,278],{"class":237},",",[220,280,281],{"class":237}," {",[220,283,285],{"class":284},"swJcz"," userId",[220,287,288],{"class":237},":",[220,290,291],{"class":233}," user",[220,293,238],{"class":237},[220,295,296],{"class":233},"id ",[220,298,299],{"class":237},"}",[220,301,257],{"class":233},[220,303,305,307,309,311,313,315,318,320,322,324,327,329,332,334,336,338],{"class":222,"line":304},4,[220,306,234],{"class":233},[220,308,238],{"class":237},[220,310,242],{"class":241},[220,312,245],{"class":233},[220,314,248],{"class":237},[220,316,317],{"class":251},"Fetching cart",[220,319,248],{"class":237},[220,321,278],{"class":237},[220,323,281],{"class":237},[220,325,326],{"class":284}," cartId",[220,328,288],{"class":237},[220,330,331],{"class":233}," cart",[220,333,238],{"class":237},[220,335,296],{"class":233},[220,337,299],{"class":237},[220,339,257],{"class":233},[220,341,343,345,347,349,351,353,356,358],{"class":222,"line":342},5,[220,344,234],{"class":233},[220,346,238],{"class":237},[220,348,242],{"class":241},[220,350,245],{"class":233},[220,352,248],{"class":237},[220,354,355],{"class":251},"Processing payment",[220,357,248],{"class":237},[220,359,257],{"class":233},[220,361,363,365,367,369,371,373,376,378],{"class":222,"line":362},6,[220,364,234],{"class":233},[220,366,238],{"class":237},[220,368,242],{"class":241},[220,370,245],{"class":233},[220,372,248],{"class":237},[220,374,375],{"class":251},"Payment successful",[220,377,248],{"class":237},[220,379,257],{"class":233},[220,381,383,385,387,389,391,393,396,398,400,402,405,407,411,414],{"class":222,"line":382},7,[220,384,234],{"class":233},[220,386,238],{"class":237},[220,388,242],{"class":241},[220,390,245],{"class":233},[220,392,248],{"class":237},[220,394,395],{"class":251},"Request completed",[220,397,248],{"class":237},[220,399,278],{"class":237},[220,401,281],{"class":237},[220,403,404],{"class":284}," duration",[220,406,288],{"class":237},[220,408,410],{"class":409},"sbssI"," 234",[220,412,413],{"class":237}," }",[220,415,257],{"class":233},[197,417,418],{},"This approach has problems:",[420,421,422,430,436,442],"ul",{},[423,424,425,429],"li",{},[426,427,428],"strong",{},"Scattered context",": Information is spread across multiple log lines",[423,431,432,435],{},[426,433,434],{},"Hard to correlate",": Matching logs to requests requires request IDs everywhere",[423,437,438,441],{},[426,439,440],{},"Noise",": 10+ log lines per request makes finding issues harder",[423,443,444,447],{},[426,445,446],{},"Incomplete",": Some logs might be missing if errors occur",[197,449,450],{},"Wide events solve this:",[452,453,454,651],"code-group",{},[209,455,458],{"className":211,"code":456,"filename":457,"language":214,"meta":215,"style":215},"// server/api/checkout.post.ts\nconst log = useLogger(event)\n\nlog.set({ user: { id: 1, plan: 'pro' } })\nlog.set({ cart: { id: 42, items: 3, total: 9999 } })\nlog.set({ payment: { method: 'card', status: 'success' } })\n\n// One log, all context - emitted automatically\n","Code",[217,459,460,465,483,489,539,590,641,645],{"__ignoreMap":215},[220,461,462],{"class":222,"line":223},[220,463,464],{"class":226},"// server/api/checkout.post.ts\n",[220,466,467,471,474,477,480],{"class":222,"line":230},[220,468,470],{"class":469},"spNyl","const",[220,472,473],{"class":233}," log ",[220,475,476],{"class":237},"=",[220,478,479],{"class":241}," useLogger",[220,481,482],{"class":233},"(event)\n",[220,484,485],{"class":222,"line":260},[220,486,488],{"emptyLinePlaceholder":487},true,"\n",[220,490,491,494,496,499,501,504,506,508,510,513,515,518,520,523,525,528,531,533,535,537],{"class":222,"line":304},[220,492,493],{"class":233},"log",[220,495,238],{"class":237},[220,497,498],{"class":241},"set",[220,500,245],{"class":233},[220,502,503],{"class":237},"{",[220,505,291],{"class":284},[220,507,288],{"class":237},[220,509,281],{"class":237},[220,511,512],{"class":284}," id",[220,514,288],{"class":237},[220,516,517],{"class":409}," 1",[220,519,278],{"class":237},[220,521,522],{"class":284}," plan",[220,524,288],{"class":237},[220,526,527],{"class":237}," '",[220,529,530],{"class":251},"pro",[220,532,248],{"class":237},[220,534,413],{"class":237},[220,536,413],{"class":237},[220,538,257],{"class":233},[220,540,541,543,545,547,549,551,553,555,557,559,561,564,566,569,571,574,576,579,581,584,586,588],{"class":222,"line":342},[220,542,493],{"class":233},[220,544,238],{"class":237},[220,546,498],{"class":241},[220,548,245],{"class":233},[220,550,503],{"class":237},[220,552,331],{"class":284},[220,554,288],{"class":237},[220,556,281],{"class":237},[220,558,512],{"class":284},[220,560,288],{"class":237},[220,562,563],{"class":409}," 42",[220,565,278],{"class":237},[220,567,568],{"class":284}," items",[220,570,288],{"class":237},[220,572,573],{"class":409}," 3",[220,575,278],{"class":237},[220,577,578],{"class":284}," total",[220,580,288],{"class":237},[220,582,583],{"class":409}," 9999",[220,585,413],{"class":237},[220,587,413],{"class":237},[220,589,257],{"class":233},[220,591,592,594,596,598,600,602,605,607,609,612,614,616,619,621,623,626,628,630,633,635,637,639],{"class":222,"line":362},[220,593,493],{"class":233},[220,595,238],{"class":237},[220,597,498],{"class":241},[220,599,245],{"class":233},[220,601,503],{"class":237},[220,603,604],{"class":284}," payment",[220,606,288],{"class":237},[220,608,281],{"class":237},[220,610,611],{"class":284}," method",[220,613,288],{"class":237},[220,615,527],{"class":237},[220,617,618],{"class":251},"card",[220,620,248],{"class":237},[220,622,278],{"class":237},[220,624,625],{"class":284}," status",[220,627,288],{"class":237},[220,629,527],{"class":237},[220,631,632],{"class":251},"success",[220,634,248],{"class":237},[220,636,413],{"class":237},[220,638,413],{"class":237},[220,640,257],{"class":233},[220,642,643],{"class":222,"line":382},[220,644,488],{"emptyLinePlaceholder":487},[220,646,648],{"class":222,"line":647},8,[220,649,650],{"class":226},"// One log, all context - emitted automatically\n",[209,652,657],{"className":653,"code":654,"filename":655,"language":656,"meta":215,"style":215},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","[INFO] POST /api/checkout (234ms)\n  user: { id: 1, plan: 'pro' }\n  cart: { id: 42, items: 3, total: 9999 }\n  payment: { method: 'card', status: 'success' }\n  status: 200\n","Output","bash",[217,658,659,679,704,729,758],{"__ignoreMap":215},[220,660,661,664,667,670,673,677],{"class":222,"line":223},[220,662,663],{"class":237},"[",[220,665,666],{"class":233},"INFO",[220,668,669],{"class":237},"]",[220,671,672],{"class":233}," POST /api/checkout (",[220,674,676],{"class":675},"sBMFI","234ms",[220,678,257],{"class":233},[220,680,681,684,686,689,692,695,697,699,701],{"class":222,"line":230},[220,682,683],{"class":675},"  user:",[220,685,281],{"class":251},[220,687,688],{"class":251}," id:",[220,690,691],{"class":251}," 1,",[220,693,694],{"class":251}," plan:",[220,696,527],{"class":237},[220,698,530],{"class":251},[220,700,248],{"class":237},[220,702,703],{"class":251}," }\n",[220,705,706,709,711,713,716,719,722,725,727],{"class":222,"line":260},[220,707,708],{"class":675},"  cart:",[220,710,281],{"class":251},[220,712,688],{"class":251},[220,714,715],{"class":251}," 42,",[220,717,718],{"class":251}," items:",[220,720,721],{"class":251}," 3,",[220,723,724],{"class":251}," total:",[220,726,583],{"class":409},[220,728,703],{"class":251},[220,730,731,734,736,739,741,743,745,747,750,752,754,756],{"class":222,"line":304},[220,732,733],{"class":675},"  payment:",[220,735,281],{"class":251},[220,737,738],{"class":251}," method:",[220,740,527],{"class":237},[220,742,618],{"class":251},[220,744,248],{"class":237},[220,746,278],{"class":251},[220,748,749],{"class":251}," status:",[220,751,527],{"class":237},[220,753,632],{"class":251},[220,755,248],{"class":237},[220,757,703],{"class":251},[220,759,760,763],{"class":222,"line":342},[220,761,762],{"class":675},"  status:",[220,764,765],{"class":409}," 200\n",[201,767,769],{"id":768},"anatomy-of-a-wide-event","Anatomy of a Wide Event",[197,771,772],{},"A well-designed wide event contains context from multiple layers:",[774,775,777],"h3",{"id":776},"request-context","Request Context",[197,779,780],{},"Basic information about the request itself:",[209,782,784],{"className":211,"code":783,"filename":213,"language":214,"meta":215,"style":215},"log.set({\n  method: 'POST',\n  path: '/api/checkout',\n  requestId: 'abc-123-def',\n  traceId: 'trace-xyz-789',\n})\n",[217,785,786,799,816,832,848,864],{"__ignoreMap":215},[220,787,788,790,792,794,796],{"class":222,"line":223},[220,789,493],{"class":233},[220,791,238],{"class":237},[220,793,498],{"class":241},[220,795,245],{"class":233},[220,797,798],{"class":237},"{\n",[220,800,801,804,806,808,811,813],{"class":222,"line":230},[220,802,803],{"class":284},"  method",[220,805,288],{"class":237},[220,807,527],{"class":237},[220,809,810],{"class":251},"POST",[220,812,248],{"class":237},[220,814,815],{"class":237},",\n",[220,817,818,821,823,825,828,830],{"class":222,"line":260},[220,819,820],{"class":284},"  path",[220,822,288],{"class":237},[220,824,527],{"class":237},[220,826,827],{"class":251},"/api/checkout",[220,829,248],{"class":237},[220,831,815],{"class":237},[220,833,834,837,839,841,844,846],{"class":222,"line":304},[220,835,836],{"class":284},"  requestId",[220,838,288],{"class":237},[220,840,527],{"class":237},[220,842,843],{"class":251},"abc-123-def",[220,845,248],{"class":237},[220,847,815],{"class":237},[220,849,850,853,855,857,860,862],{"class":222,"line":342},[220,851,852],{"class":284},"  traceId",[220,854,288],{"class":237},[220,856,527],{"class":237},[220,858,859],{"class":251},"trace-xyz-789",[220,861,248],{"class":237},[220,863,815],{"class":237},[220,865,866,868],{"class":222,"line":362},[220,867,299],{"class":237},[220,869,257],{"class":233},[871,872,873],"callout",{"color":242,"icon":13},"In Nuxt/Nitro, most request context is auto-populated by evlog.",[774,875,877],{"id":876},"user-context","User Context",[197,879,880],{},"Who is making the request:",[209,882,884],{"className":211,"code":883,"filename":213,"language":214,"meta":215,"style":215},"log.set({\n  userId: user.id,\n  email: user.email,\n  subscription: user.plan,\n  accountAge: daysSince(user.createdAt),\n})\n",[217,885,886,898,914,930,946,966],{"__ignoreMap":215},[220,887,888,890,892,894,896],{"class":222,"line":223},[220,889,493],{"class":233},[220,891,238],{"class":237},[220,893,498],{"class":241},[220,895,245],{"class":233},[220,897,798],{"class":237},[220,899,900,903,905,907,909,912],{"class":222,"line":230},[220,901,902],{"class":284},"  userId",[220,904,288],{"class":237},[220,906,291],{"class":233},[220,908,238],{"class":237},[220,910,911],{"class":233},"id",[220,913,815],{"class":237},[220,915,916,919,921,923,925,928],{"class":222,"line":260},[220,917,918],{"class":284},"  email",[220,920,288],{"class":237},[220,922,291],{"class":233},[220,924,238],{"class":237},[220,926,927],{"class":233},"email",[220,929,815],{"class":237},[220,931,932,935,937,939,941,944],{"class":222,"line":304},[220,933,934],{"class":284},"  subscription",[220,936,288],{"class":237},[220,938,291],{"class":233},[220,940,238],{"class":237},[220,942,943],{"class":233},"plan",[220,945,815],{"class":237},[220,947,948,951,953,956,959,961,964],{"class":222,"line":342},[220,949,950],{"class":284},"  accountAge",[220,952,288],{"class":237},[220,954,955],{"class":241}," daysSince",[220,957,958],{"class":233},"(user",[220,960,238],{"class":237},[220,962,963],{"class":233},"createdAt)",[220,965,815],{"class":237},[220,967,968,970],{"class":222,"line":362},[220,969,299],{"class":237},[220,971,257],{"class":233},[774,973,975],{"id":974},"business-context","Business Context",[197,977,978],{},"Domain-specific data relevant to the operation:",[209,980,982],{"className":211,"code":981,"filename":213,"language":214,"meta":215,"style":215},"log.set({\n  cart: {\n    id: cart.id,\n    items: cart.items.length,\n    total: cart.total,\n    currency: 'USD',\n  },\n  shipping: {\n    method: 'express',\n    country: address.country,\n  },\n  coupon: appliedCoupon?.code,\n})\n",[217,983,984,996,1006,1021,1042,1058,1074,1079,1088,1105,1123,1128,1146],{"__ignoreMap":215},[220,985,986,988,990,992,994],{"class":222,"line":223},[220,987,493],{"class":233},[220,989,238],{"class":237},[220,991,498],{"class":241},[220,993,245],{"class":233},[220,995,798],{"class":237},[220,997,998,1001,1003],{"class":222,"line":230},[220,999,1000],{"class":284},"  cart",[220,1002,288],{"class":237},[220,1004,1005],{"class":237}," {\n",[220,1007,1008,1011,1013,1015,1017,1019],{"class":222,"line":260},[220,1009,1010],{"class":284},"    id",[220,1012,288],{"class":237},[220,1014,331],{"class":233},[220,1016,238],{"class":237},[220,1018,911],{"class":233},[220,1020,815],{"class":237},[220,1022,1023,1026,1028,1030,1032,1035,1037,1040],{"class":222,"line":304},[220,1024,1025],{"class":284},"    items",[220,1027,288],{"class":237},[220,1029,331],{"class":233},[220,1031,238],{"class":237},[220,1033,1034],{"class":233},"items",[220,1036,238],{"class":237},[220,1038,1039],{"class":233},"length",[220,1041,815],{"class":237},[220,1043,1044,1047,1049,1051,1053,1056],{"class":222,"line":342},[220,1045,1046],{"class":284},"    total",[220,1048,288],{"class":237},[220,1050,331],{"class":233},[220,1052,238],{"class":237},[220,1054,1055],{"class":233},"total",[220,1057,815],{"class":237},[220,1059,1060,1063,1065,1067,1070,1072],{"class":222,"line":362},[220,1061,1062],{"class":284},"    currency",[220,1064,288],{"class":237},[220,1066,527],{"class":237},[220,1068,1069],{"class":251},"USD",[220,1071,248],{"class":237},[220,1073,815],{"class":237},[220,1075,1076],{"class":222,"line":382},[220,1077,1078],{"class":237},"  },\n",[220,1080,1081,1084,1086],{"class":222,"line":647},[220,1082,1083],{"class":284},"  shipping",[220,1085,288],{"class":237},[220,1087,1005],{"class":237},[220,1089,1091,1094,1096,1098,1101,1103],{"class":222,"line":1090},9,[220,1092,1093],{"class":284},"    method",[220,1095,288],{"class":237},[220,1097,527],{"class":237},[220,1099,1100],{"class":251},"express",[220,1102,248],{"class":237},[220,1104,815],{"class":237},[220,1106,1108,1111,1113,1116,1118,1121],{"class":222,"line":1107},10,[220,1109,1110],{"class":284},"    country",[220,1112,288],{"class":237},[220,1114,1115],{"class":233}," address",[220,1117,238],{"class":237},[220,1119,1120],{"class":233},"country",[220,1122,815],{"class":237},[220,1124,1126],{"class":222,"line":1125},11,[220,1127,1078],{"class":237},[220,1129,1131,1134,1136,1139,1142,1144],{"class":222,"line":1130},12,[220,1132,1133],{"class":284},"  coupon",[220,1135,288],{"class":237},[220,1137,1138],{"class":233}," appliedCoupon",[220,1140,1141],{"class":237},"?.",[220,1143,217],{"class":233},[220,1145,815],{"class":237},[220,1147,1149,1151],{"class":222,"line":1148},13,[220,1150,299],{"class":237},[220,1152,257],{"class":233},[774,1154,1156],{"id":1155},"outcome","Outcome",[197,1158,1159],{},"The result of the operation:",[452,1161,1162,1237],{},[209,1163,1166],{"className":211,"code":1164,"filename":1165,"language":214,"meta":215,"style":215},"log.set({\n  status: 200,\n  duration: Date.now() - startTime,\n  success: true,\n})\n","Success",[217,1167,1168,1180,1192,1218,1231],{"__ignoreMap":215},[220,1169,1170,1172,1174,1176,1178],{"class":222,"line":223},[220,1171,493],{"class":233},[220,1173,238],{"class":237},[220,1175,498],{"class":241},[220,1177,245],{"class":233},[220,1179,798],{"class":237},[220,1181,1182,1185,1187,1190],{"class":222,"line":230},[220,1183,1184],{"class":284},"  status",[220,1186,288],{"class":237},[220,1188,1189],{"class":409}," 200",[220,1191,815],{"class":237},[220,1193,1194,1197,1199,1202,1204,1207,1210,1213,1216],{"class":222,"line":260},[220,1195,1196],{"class":284},"  duration",[220,1198,288],{"class":237},[220,1200,1201],{"class":233}," Date",[220,1203,238],{"class":237},[220,1205,1206],{"class":241},"now",[220,1208,1209],{"class":233},"() ",[220,1211,1212],{"class":237},"-",[220,1214,1215],{"class":233}," startTime",[220,1217,815],{"class":237},[220,1219,1220,1223,1225,1229],{"class":222,"line":304},[220,1221,1222],{"class":284},"  success",[220,1224,288],{"class":237},[220,1226,1228],{"class":1227},"sfNiH"," true",[220,1230,815],{"class":237},[220,1232,1233,1235],{"class":222,"line":342},[220,1234,299],{"class":237},[220,1236,257],{"class":233},[209,1238,1241],{"className":211,"code":1239,"filename":1240,"language":214,"meta":215,"style":215},"log.set({\n  status: 500,\n  error: {\n    message: err.message,\n    code: err.code,\n    type: err.constructor.name,\n  },\n})\n","Error",[217,1242,1243,1255,1266,1275,1292,1307,1328,1332],{"__ignoreMap":215},[220,1244,1245,1247,1249,1251,1253],{"class":222,"line":223},[220,1246,493],{"class":233},[220,1248,238],{"class":237},[220,1250,498],{"class":241},[220,1252,245],{"class":233},[220,1254,798],{"class":237},[220,1256,1257,1259,1261,1264],{"class":222,"line":230},[220,1258,1184],{"class":284},[220,1260,288],{"class":237},[220,1262,1263],{"class":409}," 500",[220,1265,815],{"class":237},[220,1267,1268,1271,1273],{"class":222,"line":260},[220,1269,1270],{"class":284},"  error",[220,1272,288],{"class":237},[220,1274,1005],{"class":237},[220,1276,1277,1280,1282,1285,1287,1290],{"class":222,"line":304},[220,1278,1279],{"class":284},"    message",[220,1281,288],{"class":237},[220,1283,1284],{"class":233}," err",[220,1286,238],{"class":237},[220,1288,1289],{"class":233},"message",[220,1291,815],{"class":237},[220,1293,1294,1297,1299,1301,1303,1305],{"class":222,"line":342},[220,1295,1296],{"class":284},"    code",[220,1298,288],{"class":237},[220,1300,1284],{"class":233},[220,1302,238],{"class":237},[220,1304,217],{"class":233},[220,1306,815],{"class":237},[220,1308,1309,1312,1314,1316,1318,1321,1323,1326],{"class":222,"line":362},[220,1310,1311],{"class":284},"    type",[220,1313,288],{"class":237},[220,1315,1284],{"class":233},[220,1317,238],{"class":237},[220,1319,1320],{"class":233},"constructor",[220,1322,238],{"class":237},[220,1324,1325],{"class":233},"name",[220,1327,815],{"class":237},[220,1329,1330],{"class":222,"line":382},[220,1331,1078],{"class":237},[220,1333,1334,1336],{"class":222,"line":647},[220,1335,299],{"class":237},[220,1337,257],{"class":233},[201,1339,46],{"id":1340},"best-practices",[774,1342,1344],{"id":1343},"use-meaningful-keys","Use Meaningful Keys",[209,1346,1348],{"className":211,"code":1347,"language":214,"meta":215,"style":215},"// Avoid generic keys\nlog.set({ data: { id: 123 } })\n\n// Use specific, descriptive keys\nlog.set({ order: { id: 123, status: 'pending' } })\n",[217,1349,1350,1355,1387,1391,1396],{"__ignoreMap":215},[220,1351,1352],{"class":222,"line":223},[220,1353,1354],{"class":226},"// Avoid generic keys\n",[220,1356,1357,1359,1361,1363,1365,1367,1370,1372,1374,1376,1378,1381,1383,1385],{"class":222,"line":230},[220,1358,493],{"class":233},[220,1360,238],{"class":237},[220,1362,498],{"class":241},[220,1364,245],{"class":233},[220,1366,503],{"class":237},[220,1368,1369],{"class":284}," data",[220,1371,288],{"class":237},[220,1373,281],{"class":237},[220,1375,512],{"class":284},[220,1377,288],{"class":237},[220,1379,1380],{"class":409}," 123",[220,1382,413],{"class":237},[220,1384,413],{"class":237},[220,1386,257],{"class":233},[220,1388,1389],{"class":222,"line":260},[220,1390,488],{"emptyLinePlaceholder":487},[220,1392,1393],{"class":222,"line":304},[220,1394,1395],{"class":226},"// Use specific, descriptive keys\n",[220,1397,1398,1400,1402,1404,1406,1408,1411,1413,1415,1417,1419,1421,1423,1425,1427,1429,1432,1434,1436,1438],{"class":222,"line":342},[220,1399,493],{"class":233},[220,1401,238],{"class":237},[220,1403,498],{"class":241},[220,1405,245],{"class":233},[220,1407,503],{"class":237},[220,1409,1410],{"class":284}," order",[220,1412,288],{"class":237},[220,1414,281],{"class":237},[220,1416,512],{"class":284},[220,1418,288],{"class":237},[220,1420,1380],{"class":409},[220,1422,278],{"class":237},[220,1424,625],{"class":284},[220,1426,288],{"class":237},[220,1428,527],{"class":237},[220,1430,1431],{"class":251},"pending",[220,1433,248],{"class":237},[220,1435,413],{"class":237},[220,1437,413],{"class":237},[220,1439,257],{"class":233},[774,1441,1443],{"id":1442},"group-related-data","Group Related Data",[209,1445,1447],{"className":211,"code":1446,"language":214,"meta":215,"style":215},"// Flat structure is hard to read\nlog.set({\n  userId: 1,\n  userEmail: 'a@b.com',\n  cartId: 2,\n  cartTotal: 100,\n})\n\n// Grouped structure is clearer\nlog.set({\n  user: { id: 1, email: 'a@b.com' },\n  cart: { id: 2, total: 100 },\n})\n",[217,1448,1449,1454,1466,1476,1492,1504,1516,1522,1526,1531,1543,1574,1598],{"__ignoreMap":215},[220,1450,1451],{"class":222,"line":223},[220,1452,1453],{"class":226},"// Flat structure is hard to read\n",[220,1455,1456,1458,1460,1462,1464],{"class":222,"line":230},[220,1457,493],{"class":233},[220,1459,238],{"class":237},[220,1461,498],{"class":241},[220,1463,245],{"class":233},[220,1465,798],{"class":237},[220,1467,1468,1470,1472,1474],{"class":222,"line":260},[220,1469,902],{"class":284},[220,1471,288],{"class":237},[220,1473,517],{"class":409},[220,1475,815],{"class":237},[220,1477,1478,1481,1483,1485,1488,1490],{"class":222,"line":304},[220,1479,1480],{"class":284},"  userEmail",[220,1482,288],{"class":237},[220,1484,527],{"class":237},[220,1486,1487],{"class":251},"a@b.com",[220,1489,248],{"class":237},[220,1491,815],{"class":237},[220,1493,1494,1497,1499,1502],{"class":222,"line":342},[220,1495,1496],{"class":284},"  cartId",[220,1498,288],{"class":237},[220,1500,1501],{"class":409}," 2",[220,1503,815],{"class":237},[220,1505,1506,1509,1511,1514],{"class":222,"line":362},[220,1507,1508],{"class":284},"  cartTotal",[220,1510,288],{"class":237},[220,1512,1513],{"class":409}," 100",[220,1515,815],{"class":237},[220,1517,1518,1520],{"class":222,"line":382},[220,1519,299],{"class":237},[220,1521,257],{"class":233},[220,1523,1524],{"class":222,"line":647},[220,1525,488],{"emptyLinePlaceholder":487},[220,1527,1528],{"class":222,"line":1090},[220,1529,1530],{"class":226},"// Grouped structure is clearer\n",[220,1532,1533,1535,1537,1539,1541],{"class":222,"line":1107},[220,1534,493],{"class":233},[220,1536,238],{"class":237},[220,1538,498],{"class":241},[220,1540,245],{"class":233},[220,1542,798],{"class":237},[220,1544,1545,1548,1550,1552,1554,1556,1558,1560,1563,1565,1567,1569,1571],{"class":222,"line":1125},[220,1546,1547],{"class":284},"  user",[220,1549,288],{"class":237},[220,1551,281],{"class":237},[220,1553,512],{"class":284},[220,1555,288],{"class":237},[220,1557,517],{"class":409},[220,1559,278],{"class":237},[220,1561,1562],{"class":284}," email",[220,1564,288],{"class":237},[220,1566,527],{"class":237},[220,1568,1487],{"class":251},[220,1570,248],{"class":237},[220,1572,1573],{"class":237}," },\n",[220,1575,1576,1578,1580,1582,1584,1586,1588,1590,1592,1594,1596],{"class":222,"line":1130},[220,1577,1000],{"class":284},[220,1579,288],{"class":237},[220,1581,281],{"class":237},[220,1583,512],{"class":284},[220,1585,288],{"class":237},[220,1587,1501],{"class":409},[220,1589,278],{"class":237},[220,1591,578],{"class":284},[220,1593,288],{"class":237},[220,1595,1513],{"class":409},[220,1597,1573],{"class":237},[220,1599,1600,1602],{"class":222,"line":1148},[220,1601,299],{"class":237},[220,1603,257],{"class":233},[774,1605,1607],{"id":1606},"add-context-incrementally","Add Context Incrementally",[197,1609,1610,1611,1614],{},"Call ",[217,1612,1613],{},"log.set()"," as you gather information:",[452,1616,1617,1926],{},[209,1618,1620],{"className":211,"code":1619,"filename":457,"language":214,"meta":215,"style":215},"// server/api/checkout.post.ts\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n\n  const user = await getUser(event)\n  log.set({ user: { id: user.id, plan: user.plan } })\n\n  const cart = await getCart(user.id)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const payment = await processPayment(cart)\n  log.set({ payment: { method: payment.method, status: payment.status } })\n\n  return { success: true }\n})\n",[217,1621,1622,1626,1658,1677,1681,1701,1748,1752,1776,1826,1830,1850,1898,1902,1919],{"__ignoreMap":215},[220,1623,1624],{"class":222,"line":223},[220,1625,464],{"class":226},[220,1627,1628,1632,1635,1638,1640,1643,1646,1650,1653,1656],{"class":222,"line":230},[220,1629,1631],{"class":1630},"s7zQu","export",[220,1633,1634],{"class":1630}," default",[220,1636,1637],{"class":241}," defineEventHandler",[220,1639,245],{"class":233},[220,1641,1642],{"class":469},"async",[220,1644,1645],{"class":237}," (",[220,1647,1649],{"class":1648},"sHdIc","event",[220,1651,1652],{"class":237},")",[220,1654,1655],{"class":469}," =>",[220,1657,1005],{"class":237},[220,1659,1660,1663,1666,1669,1671,1673,1675],{"class":222,"line":260},[220,1661,1662],{"class":469},"  const",[220,1664,1665],{"class":233}," log",[220,1667,1668],{"class":237}," =",[220,1670,479],{"class":241},[220,1672,245],{"class":284},[220,1674,1649],{"class":233},[220,1676,257],{"class":284},[220,1678,1679],{"class":222,"line":304},[220,1680,488],{"emptyLinePlaceholder":487},[220,1682,1683,1685,1687,1689,1692,1695,1697,1699],{"class":222,"line":342},[220,1684,1662],{"class":469},[220,1686,291],{"class":233},[220,1688,1668],{"class":237},[220,1690,1691],{"class":1630}," await",[220,1693,1694],{"class":241}," getUser",[220,1696,245],{"class":284},[220,1698,1649],{"class":233},[220,1700,257],{"class":284},[220,1702,1703,1706,1708,1710,1712,1714,1716,1718,1720,1722,1724,1726,1728,1730,1732,1734,1736,1738,1740,1742,1744,1746],{"class":222,"line":362},[220,1704,1705],{"class":233},"  log",[220,1707,238],{"class":237},[220,1709,498],{"class":241},[220,1711,245],{"class":284},[220,1713,503],{"class":237},[220,1715,291],{"class":284},[220,1717,288],{"class":237},[220,1719,281],{"class":237},[220,1721,512],{"class":284},[220,1723,288],{"class":237},[220,1725,291],{"class":233},[220,1727,238],{"class":237},[220,1729,911],{"class":233},[220,1731,278],{"class":237},[220,1733,522],{"class":284},[220,1735,288],{"class":237},[220,1737,291],{"class":233},[220,1739,238],{"class":237},[220,1741,943],{"class":233},[220,1743,413],{"class":237},[220,1745,413],{"class":237},[220,1747,257],{"class":284},[220,1749,1750],{"class":222,"line":382},[220,1751,488],{"emptyLinePlaceholder":487},[220,1753,1754,1756,1758,1760,1762,1765,1767,1770,1772,1774],{"class":222,"line":647},[220,1755,1662],{"class":469},[220,1757,331],{"class":233},[220,1759,1668],{"class":237},[220,1761,1691],{"class":1630},[220,1763,1764],{"class":241}," getCart",[220,1766,245],{"class":284},[220,1768,1769],{"class":233},"user",[220,1771,238],{"class":237},[220,1773,911],{"class":233},[220,1775,257],{"class":284},[220,1777,1778,1780,1782,1784,1786,1788,1790,1792,1794,1796,1798,1800,1802,1804,1806,1808,1810,1812,1814,1816,1818,1820,1822,1824],{"class":222,"line":1090},[220,1779,1705],{"class":233},[220,1781,238],{"class":237},[220,1783,498],{"class":241},[220,1785,245],{"class":284},[220,1787,503],{"class":237},[220,1789,331],{"class":284},[220,1791,288],{"class":237},[220,1793,281],{"class":237},[220,1795,568],{"class":284},[220,1797,288],{"class":237},[220,1799,331],{"class":233},[220,1801,238],{"class":237},[220,1803,1034],{"class":233},[220,1805,238],{"class":237},[220,1807,1039],{"class":233},[220,1809,278],{"class":237},[220,1811,578],{"class":284},[220,1813,288],{"class":237},[220,1815,331],{"class":233},[220,1817,238],{"class":237},[220,1819,1055],{"class":233},[220,1821,413],{"class":237},[220,1823,413],{"class":237},[220,1825,257],{"class":284},[220,1827,1828],{"class":222,"line":1107},[220,1829,488],{"emptyLinePlaceholder":487},[220,1831,1832,1834,1836,1838,1840,1843,1845,1848],{"class":222,"line":1125},[220,1833,1662],{"class":469},[220,1835,604],{"class":233},[220,1837,1668],{"class":237},[220,1839,1691],{"class":1630},[220,1841,1842],{"class":241}," processPayment",[220,1844,245],{"class":284},[220,1846,1847],{"class":233},"cart",[220,1849,257],{"class":284},[220,1851,1852,1854,1856,1858,1860,1862,1864,1866,1868,1870,1872,1874,1876,1879,1881,1883,1885,1887,1889,1892,1894,1896],{"class":222,"line":1130},[220,1853,1705],{"class":233},[220,1855,238],{"class":237},[220,1857,498],{"class":241},[220,1859,245],{"class":284},[220,1861,503],{"class":237},[220,1863,604],{"class":284},[220,1865,288],{"class":237},[220,1867,281],{"class":237},[220,1869,611],{"class":284},[220,1871,288],{"class":237},[220,1873,604],{"class":233},[220,1875,238],{"class":237},[220,1877,1878],{"class":233},"method",[220,1880,278],{"class":237},[220,1882,625],{"class":284},[220,1884,288],{"class":237},[220,1886,604],{"class":233},[220,1888,238],{"class":237},[220,1890,1891],{"class":233},"status",[220,1893,413],{"class":237},[220,1895,413],{"class":237},[220,1897,257],{"class":284},[220,1899,1900],{"class":222,"line":1148},[220,1901,488],{"emptyLinePlaceholder":487},[220,1903,1905,1908,1910,1913,1915,1917],{"class":222,"line":1904},14,[220,1906,1907],{"class":1630},"  return",[220,1909,281],{"class":237},[220,1911,1912],{"class":284}," success",[220,1914,288],{"class":237},[220,1916,1228],{"class":1227},[220,1918,703],{"class":237},[220,1920,1922,1924],{"class":222,"line":1921},15,[220,1923,299],{"class":237},[220,1925,257],{"class":233},[209,1927,1929],{"className":653,"code":1928,"filename":655,"language":656,"meta":215,"style":215},"[INFO] POST /api/checkout (456ms)\n  user: { id: 1, plan: 'pro' }\n  cart: { items: 3, total: 9999 }\n  payment: { method: 'card', status: 'success' }\n  status: 200\n",[217,1930,1931,1946,1966,1982,2008],{"__ignoreMap":215},[220,1932,1933,1935,1937,1939,1941,1944],{"class":222,"line":223},[220,1934,663],{"class":237},[220,1936,666],{"class":233},[220,1938,669],{"class":237},[220,1940,672],{"class":233},[220,1942,1943],{"class":675},"456ms",[220,1945,257],{"class":233},[220,1947,1948,1950,1952,1954,1956,1958,1960,1962,1964],{"class":222,"line":230},[220,1949,683],{"class":675},[220,1951,281],{"class":251},[220,1953,688],{"class":251},[220,1955,691],{"class":251},[220,1957,694],{"class":251},[220,1959,527],{"class":237},[220,1961,530],{"class":251},[220,1963,248],{"class":237},[220,1965,703],{"class":251},[220,1967,1968,1970,1972,1974,1976,1978,1980],{"class":222,"line":260},[220,1969,708],{"class":675},[220,1971,281],{"class":251},[220,1973,718],{"class":251},[220,1975,721],{"class":251},[220,1977,724],{"class":251},[220,1979,583],{"class":409},[220,1981,703],{"class":251},[220,1983,1984,1986,1988,1990,1992,1994,1996,1998,2000,2002,2004,2006],{"class":222,"line":304},[220,1985,733],{"class":675},[220,1987,281],{"class":251},[220,1989,738],{"class":251},[220,1991,527],{"class":237},[220,1993,618],{"class":251},[220,1995,248],{"class":237},[220,1997,278],{"class":251},[220,1999,749],{"class":251},[220,2001,527],{"class":237},[220,2003,632],{"class":251},[220,2005,248],{"class":237},[220,2007,703],{"class":251},[220,2009,2010,2012],{"class":222,"line":342},[220,2011,762],{"class":675},[220,2013,765],{"class":409},[774,2015,2017],{"id":2016},"handle-errors-gracefully","Handle Errors Gracefully",[197,2019,2020],{},"When errors occur, the wide event still emits with error context:",[452,2022,2023,2232],{},[209,2024,2026],{"className":211,"code":2025,"filename":457,"language":214,"meta":215,"style":215},"// server/api/checkout.post.ts\nexport default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n\n  try {\n    const result = await processPayment(cart)\n    return result\n  } catch (err) {\n    log.set({\n      error: {\n        message: err.message,\n        code: err.code,\n        type: err.constructor.name,\n      },\n    })\n    throw err\n  }\n})\n",[217,2027,2028,2032,2054,2070,2074,2081,2101,2109,2127,2140,2149,2164,2179,2198,2203,2210,2219,2225],{"__ignoreMap":215},[220,2029,2030],{"class":222,"line":223},[220,2031,464],{"class":226},[220,2033,2034,2036,2038,2040,2042,2044,2046,2048,2050,2052],{"class":222,"line":230},[220,2035,1631],{"class":1630},[220,2037,1634],{"class":1630},[220,2039,1637],{"class":241},[220,2041,245],{"class":233},[220,2043,1642],{"class":469},[220,2045,1645],{"class":237},[220,2047,1649],{"class":1648},[220,2049,1652],{"class":237},[220,2051,1655],{"class":469},[220,2053,1005],{"class":237},[220,2055,2056,2058,2060,2062,2064,2066,2068],{"class":222,"line":260},[220,2057,1662],{"class":469},[220,2059,1665],{"class":233},[220,2061,1668],{"class":237},[220,2063,479],{"class":241},[220,2065,245],{"class":284},[220,2067,1649],{"class":233},[220,2069,257],{"class":284},[220,2071,2072],{"class":222,"line":304},[220,2073,488],{"emptyLinePlaceholder":487},[220,2075,2076,2079],{"class":222,"line":342},[220,2077,2078],{"class":1630},"  try",[220,2080,1005],{"class":237},[220,2082,2083,2086,2089,2091,2093,2095,2097,2099],{"class":222,"line":362},[220,2084,2085],{"class":469},"    const",[220,2087,2088],{"class":233}," result",[220,2090,1668],{"class":237},[220,2092,1691],{"class":1630},[220,2094,1842],{"class":241},[220,2096,245],{"class":284},[220,2098,1847],{"class":233},[220,2100,257],{"class":284},[220,2102,2103,2106],{"class":222,"line":382},[220,2104,2105],{"class":1630},"    return",[220,2107,2108],{"class":233}," result\n",[220,2110,2111,2114,2117,2119,2122,2125],{"class":222,"line":647},[220,2112,2113],{"class":237},"  }",[220,2115,2116],{"class":1630}," catch",[220,2118,1645],{"class":284},[220,2120,2121],{"class":233},"err",[220,2123,2124],{"class":284},") ",[220,2126,798],{"class":237},[220,2128,2129,2132,2134,2136,2138],{"class":222,"line":1090},[220,2130,2131],{"class":233},"    log",[220,2133,238],{"class":237},[220,2135,498],{"class":241},[220,2137,245],{"class":284},[220,2139,798],{"class":237},[220,2141,2142,2145,2147],{"class":222,"line":1107},[220,2143,2144],{"class":284},"      error",[220,2146,288],{"class":237},[220,2148,1005],{"class":237},[220,2150,2151,2154,2156,2158,2160,2162],{"class":222,"line":1125},[220,2152,2153],{"class":284},"        message",[220,2155,288],{"class":237},[220,2157,1284],{"class":233},[220,2159,238],{"class":237},[220,2161,1289],{"class":233},[220,2163,815],{"class":237},[220,2165,2166,2169,2171,2173,2175,2177],{"class":222,"line":1130},[220,2167,2168],{"class":284},"        code",[220,2170,288],{"class":237},[220,2172,1284],{"class":233},[220,2174,238],{"class":237},[220,2176,217],{"class":233},[220,2178,815],{"class":237},[220,2180,2181,2184,2186,2188,2190,2192,2194,2196],{"class":222,"line":1148},[220,2182,2183],{"class":284},"        type",[220,2185,288],{"class":237},[220,2187,1284],{"class":233},[220,2189,238],{"class":237},[220,2191,1320],{"class":233},[220,2193,238],{"class":237},[220,2195,1325],{"class":233},[220,2197,815],{"class":237},[220,2199,2200],{"class":222,"line":1904},[220,2201,2202],{"class":237},"      },\n",[220,2204,2205,2208],{"class":222,"line":1921},[220,2206,2207],{"class":237},"    }",[220,2209,257],{"class":284},[220,2211,2213,2216],{"class":222,"line":2212},16,[220,2214,2215],{"class":1630},"    throw",[220,2217,2218],{"class":233}," err\n",[220,2220,2222],{"class":222,"line":2221},17,[220,2223,2224],{"class":237},"  }\n",[220,2226,2228,2230],{"class":222,"line":2227},18,[220,2229,299],{"class":237},[220,2231,257],{"class":233},[209,2233,2235],{"className":653,"code":2234,"filename":655,"language":656,"meta":215,"style":215},"[ERROR] POST /api/checkout (123ms)\n  user: { id: 1, plan: 'pro' }\n  cart: { items: 3, total: 9999 }\n  error: {\n    message: 'Card declined',\n    code: 'CARD_DECLINED',\n    type: 'PaymentError'\n  }\n  status: 500\n",[217,2236,2237,2253,2273,2289,2296,2310,2324,2338,2342],{"__ignoreMap":215},[220,2238,2239,2241,2244,2246,2248,2251],{"class":222,"line":223},[220,2240,663],{"class":237},[220,2242,2243],{"class":233},"ERROR",[220,2245,669],{"class":237},[220,2247,672],{"class":233},[220,2249,2250],{"class":675},"123ms",[220,2252,257],{"class":233},[220,2254,2255,2257,2259,2261,2263,2265,2267,2269,2271],{"class":222,"line":230},[220,2256,683],{"class":675},[220,2258,281],{"class":251},[220,2260,688],{"class":251},[220,2262,691],{"class":251},[220,2264,694],{"class":251},[220,2266,527],{"class":237},[220,2268,530],{"class":251},[220,2270,248],{"class":237},[220,2272,703],{"class":251},[220,2274,2275,2277,2279,2281,2283,2285,2287],{"class":222,"line":260},[220,2276,708],{"class":675},[220,2278,281],{"class":251},[220,2280,718],{"class":251},[220,2282,721],{"class":251},[220,2284,724],{"class":251},[220,2286,583],{"class":409},[220,2288,703],{"class":251},[220,2290,2291,2294],{"class":222,"line":304},[220,2292,2293],{"class":675},"  error:",[220,2295,1005],{"class":251},[220,2297,2298,2301,2303,2306,2308],{"class":222,"line":342},[220,2299,2300],{"class":675},"    message:",[220,2302,527],{"class":237},[220,2304,2305],{"class":251},"Card declined",[220,2307,248],{"class":237},[220,2309,815],{"class":251},[220,2311,2312,2315,2317,2320,2322],{"class":222,"line":362},[220,2313,2314],{"class":675},"    code:",[220,2316,527],{"class":237},[220,2318,2319],{"class":251},"CARD_DECLINED",[220,2321,248],{"class":237},[220,2323,815],{"class":251},[220,2325,2326,2328,2330,2332,2335],{"class":222,"line":382},[220,2327,1311],{"class":241},[220,2329,288],{"class":251},[220,2331,527],{"class":237},[220,2333,2334],{"class":251},"PaymentError",[220,2336,2337],{"class":237},"'\n",[220,2339,2340],{"class":222,"line":647},[220,2341,2224],{"class":233},[220,2343,2344,2346],{"class":222,"line":1090},[220,2345,762],{"class":675},[220,2347,2348],{"class":409}," 500\n",[201,2350,2352],{"id":2351},"output-formats","Output Formats",[197,2354,2355],{},"evlog automatically switches between formats based on environment:",[452,2357,2358,2440],{},[209,2359,2362],{"className":653,"code":2360,"filename":2361,"language":656,"meta":215,"style":215},"[INFO] POST /api/checkout (234ms)\n  user: { id: 1, plan: 'pro' }\n  cart: { items: 3, total: 9999 }\n  payment: { method: 'card', status: 'success' }\n","Development (Pretty)",[217,2363,2364,2378,2398,2414],{"__ignoreMap":215},[220,2365,2366,2368,2370,2372,2374,2376],{"class":222,"line":223},[220,2367,663],{"class":237},[220,2369,666],{"class":233},[220,2371,669],{"class":237},[220,2373,672],{"class":233},[220,2375,676],{"class":675},[220,2377,257],{"class":233},[220,2379,2380,2382,2384,2386,2388,2390,2392,2394,2396],{"class":222,"line":230},[220,2381,683],{"class":675},[220,2383,281],{"class":251},[220,2385,688],{"class":251},[220,2387,691],{"class":251},[220,2389,694],{"class":251},[220,2391,527],{"class":237},[220,2393,530],{"class":251},[220,2395,248],{"class":237},[220,2397,703],{"class":251},[220,2399,2400,2402,2404,2406,2408,2410,2412],{"class":222,"line":260},[220,2401,708],{"class":675},[220,2403,281],{"class":251},[220,2405,718],{"class":251},[220,2407,721],{"class":251},[220,2409,724],{"class":251},[220,2411,583],{"class":409},[220,2413,703],{"class":251},[220,2415,2416,2418,2420,2422,2424,2426,2428,2430,2432,2434,2436,2438],{"class":222,"line":304},[220,2417,733],{"class":675},[220,2419,281],{"class":251},[220,2421,738],{"class":251},[220,2423,527],{"class":237},[220,2425,618],{"class":251},[220,2427,248],{"class":237},[220,2429,278],{"class":251},[220,2431,749],{"class":251},[220,2433,527],{"class":237},[220,2435,632],{"class":251},[220,2437,248],{"class":237},[220,2439,703],{"class":251},[209,2441,2446],{"className":2442,"code":2443,"filename":2444,"language":2445,"meta":215,"style":215},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"level\": \"info\",\n  \"method\": \"POST\",\n  \"path\": \"/api/checkout\",\n  \"duration\": 234,\n  \"user\": { \"id\": 1, \"plan\": \"pro\" },\n  \"cart\": { \"items\": 3, \"total\": 9999 },\n  \"payment\": { \"method\": \"card\", \"status\": \"success\" }\n}\n","Production (JSON)","json",[217,2447,2448,2452,2474,2492,2511,2526,2566,2602,2647],{"__ignoreMap":215},[220,2449,2450],{"class":222,"line":223},[220,2451,798],{"class":237},[220,2453,2454,2457,2460,2463,2465,2468,2470,2472],{"class":222,"line":230},[220,2455,2456],{"class":237},"  \"",[220,2458,2459],{"class":469},"level",[220,2461,2462],{"class":237},"\"",[220,2464,288],{"class":237},[220,2466,2467],{"class":237}," \"",[220,2469,242],{"class":251},[220,2471,2462],{"class":237},[220,2473,815],{"class":237},[220,2475,2476,2478,2480,2482,2484,2486,2488,2490],{"class":222,"line":260},[220,2477,2456],{"class":237},[220,2479,1878],{"class":469},[220,2481,2462],{"class":237},[220,2483,288],{"class":237},[220,2485,2467],{"class":237},[220,2487,810],{"class":251},[220,2489,2462],{"class":237},[220,2491,815],{"class":237},[220,2493,2494,2496,2499,2501,2503,2505,2507,2509],{"class":222,"line":304},[220,2495,2456],{"class":237},[220,2497,2498],{"class":469},"path",[220,2500,2462],{"class":237},[220,2502,288],{"class":237},[220,2504,2467],{"class":237},[220,2506,827],{"class":251},[220,2508,2462],{"class":237},[220,2510,815],{"class":237},[220,2512,2513,2515,2518,2520,2522,2524],{"class":222,"line":342},[220,2514,2456],{"class":237},[220,2516,2517],{"class":469},"duration",[220,2519,2462],{"class":237},[220,2521,288],{"class":237},[220,2523,410],{"class":409},[220,2525,815],{"class":237},[220,2527,2528,2530,2532,2534,2536,2538,2540,2542,2544,2546,2548,2550,2552,2554,2556,2558,2560,2562,2564],{"class":222,"line":362},[220,2529,2456],{"class":237},[220,2531,1769],{"class":469},[220,2533,2462],{"class":237},[220,2535,288],{"class":237},[220,2537,281],{"class":237},[220,2539,2467],{"class":237},[220,2541,911],{"class":675},[220,2543,2462],{"class":237},[220,2545,288],{"class":237},[220,2547,517],{"class":409},[220,2549,278],{"class":237},[220,2551,2467],{"class":237},[220,2553,943],{"class":675},[220,2555,2462],{"class":237},[220,2557,288],{"class":237},[220,2559,2467],{"class":237},[220,2561,530],{"class":251},[220,2563,2462],{"class":237},[220,2565,1573],{"class":237},[220,2567,2568,2570,2572,2574,2576,2578,2580,2582,2584,2586,2588,2590,2592,2594,2596,2598,2600],{"class":222,"line":382},[220,2569,2456],{"class":237},[220,2571,1847],{"class":469},[220,2573,2462],{"class":237},[220,2575,288],{"class":237},[220,2577,281],{"class":237},[220,2579,2467],{"class":237},[220,2581,1034],{"class":675},[220,2583,2462],{"class":237},[220,2585,288],{"class":237},[220,2587,573],{"class":409},[220,2589,278],{"class":237},[220,2591,2467],{"class":237},[220,2593,1055],{"class":675},[220,2595,2462],{"class":237},[220,2597,288],{"class":237},[220,2599,583],{"class":409},[220,2601,1573],{"class":237},[220,2603,2604,2606,2609,2611,2613,2615,2617,2619,2621,2623,2625,2627,2629,2631,2633,2635,2637,2639,2641,2643,2645],{"class":222,"line":647},[220,2605,2456],{"class":237},[220,2607,2608],{"class":469},"payment",[220,2610,2462],{"class":237},[220,2612,288],{"class":237},[220,2614,281],{"class":237},[220,2616,2467],{"class":237},[220,2618,1878],{"class":675},[220,2620,2462],{"class":237},[220,2622,288],{"class":237},[220,2624,2467],{"class":237},[220,2626,618],{"class":251},[220,2628,2462],{"class":237},[220,2630,278],{"class":237},[220,2632,2467],{"class":237},[220,2634,1891],{"class":675},[220,2636,2462],{"class":237},[220,2638,288],{"class":237},[220,2640,2467],{"class":237},[220,2642,632],{"class":251},[220,2644,2462],{"class":237},[220,2646,703],{"class":237},[220,2648,2649],{"class":222,"line":1090},[220,2650,2651],{"class":237},"}\n",[201,2653,2655],{"id":2654},"next-steps","Next Steps",[420,2657,2658,2664],{},[423,2659,2660,2663],{},[2661,2662,51],"a",{"href":52}," - Add compile-time type safety to your wide events",[423,2665,2666,2668],{},[2661,2667,41],{"href":42}," - Learn how to create errors with actionable context",[2670,2671,2672],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":215,"searchDepth":230,"depth":230,"links":2674},[2675,2676,2682,2688,2689],{"id":203,"depth":230,"text":204},{"id":768,"depth":230,"text":769,"children":2677},[2678,2679,2680,2681],{"id":776,"depth":260,"text":777},{"id":876,"depth":260,"text":877},{"id":974,"depth":260,"text":975},{"id":1155,"depth":260,"text":1156},{"id":1340,"depth":230,"text":46,"children":2683},[2684,2685,2686,2687],{"id":1343,"depth":260,"text":1344},{"id":1442,"depth":260,"text":1443},{"id":1606,"depth":260,"text":1607},{"id":2016,"depth":260,"text":2017},{"id":2351,"depth":230,"text":2352},{"id":2654,"depth":230,"text":2655},"Learn how to design effective wide events that capture everything you need in a single log. One comprehensive event per request with full context.","md",[2693,2696],{"label":41,"icon":44,"to":42,"color":2694,"variant":2695},"neutral","subtle",{"label":46,"icon":49,"to":47,"color":2694,"variant":2695},{},{"icon":39},{"title":36,"description":2690},"nXrViE0hbphNlCcaL5mXDH3MchwbLPKFWY-PAvpb87U",[2702,2704],{"title":25,"path":26,"stem":27,"description":2703,"icon":28,"children":-1},"AI-assisted code review and evlog adoption using Agent Skills. Let AI review your logging patterns and guide migration to wide events.",{"title":41,"path":42,"stem":43,"description":2705,"icon":44,"children":-1},"Create errors that explain why they occurred and how to fix them. Add actionable context with why, fix, and link fields for humans and AI agents.",1772901702407]