[{"data":1,"prerenderedAt":2063},["ShallowReactive",2],{"navigation_docs":3,"-frameworks-cloudflare-workers":243,"-frameworks-cloudflare-workers-surround":2058},[4,30,110,159,213,229],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","\u002Fgetting-started","1.getting-started",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quick Start","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F3.quick-start","i-lucide-zap",{"title":25,"path":26,"stem":27,"icon":28},"Agent Skills","\u002Fgetting-started\u002Fagent-skills","1.getting-started\u002F4.agent-skills","i-lucide-sparkles",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Frameworks","\u002Fframeworks","2.frameworks",[35,40,45,50,55,60,65,70,75,80,85,90,95,100,105],{"title":36,"path":37,"stem":38,"icon":39},"Overview","\u002Fframeworks\u002Foverview","2.frameworks\u002F00.overview","i-lucide-layout-grid",{"title":41,"path":42,"stem":43,"icon":44},"Nuxt","\u002Fframeworks\u002Fnuxt","2.frameworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":46,"path":47,"stem":48,"icon":49},"Next.js","\u002Fframeworks\u002Fnextjs","2.frameworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":51,"path":52,"stem":53,"icon":54},"SvelteKit","\u002Fframeworks\u002Fsveltekit","2.frameworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":56,"path":57,"stem":58,"icon":59},"Nitro","\u002Fframeworks\u002Fnitro","2.frameworks\u002F04.nitro","i-custom-nitro",{"title":61,"path":62,"stem":63,"icon":64},"TanStack Start","\u002Fframeworks\u002Ftanstack-start","2.frameworks\u002F05.tanstack-start","i-custom-tanstack",{"title":66,"path":67,"stem":68,"icon":69},"NestJS","\u002Fframeworks\u002Fnestjs","2.frameworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":71,"path":72,"stem":73,"icon":74},"Express","\u002Fframeworks\u002Fexpress","2.frameworks\u002F07.express","i-simple-icons-express",{"title":76,"path":77,"stem":78,"icon":79},"Hono","\u002Fframeworks\u002Fhono","2.frameworks\u002F08.hono","i-simple-icons-hono",{"title":81,"path":82,"stem":83,"icon":84},"Fastify","\u002Fframeworks\u002Ffastify","2.frameworks\u002F09.fastify","i-simple-icons-fastify",{"title":86,"path":87,"stem":88,"icon":89},"Elysia","\u002Fframeworks\u002Felysia","2.frameworks\u002F10.elysia","i-custom-elysia",{"title":91,"path":92,"stem":93,"icon":94},"Cloudflare Workers","\u002Fframeworks\u002Fcloudflare-workers","2.frameworks\u002F11.cloudflare-workers","i-simple-icons-cloudflare",{"title":96,"path":97,"stem":98,"icon":99},"Standalone","\u002Fframeworks\u002Fstandalone","2.frameworks\u002F12.standalone","i-simple-icons-typescript",{"title":101,"path":102,"stem":103,"icon":104},"Astro","\u002Fframeworks\u002Fastro","2.frameworks\u002F13.astro","i-simple-icons-astro",{"title":106,"path":107,"stem":108,"icon":109},"Custom Integration","\u002Fframeworks\u002Fcustom-integration","2.frameworks\u002F14.custom-integration","i-lucide-puzzle",{"title":111,"path":112,"stem":113,"children":114,"page":29},"Core Concepts","\u002Fcore-concepts","3.core-concepts",[115,120,125,130,135,139,144,149,154],{"title":116,"path":117,"stem":118,"icon":119},"Request Lifecycle","\u002Fcore-concepts\u002Flifecycle","3.core-concepts\u002F0.lifecycle","i-lucide-arrow-right-left",{"title":121,"path":122,"stem":123,"icon":124},"Wide Events","\u002Fcore-concepts\u002Fwide-events","3.core-concepts\u002F1.wide-events","i-lucide-layers",{"title":126,"path":127,"stem":128,"icon":129},"Structured Errors","\u002Fcore-concepts\u002Fstructured-errors","3.core-concepts\u002F2.structured-errors","i-lucide-shield-alert",{"title":131,"path":132,"stem":133,"icon":134},"Best Practices","\u002Fcore-concepts\u002Fbest-practices","3.core-concepts\u002F3.best-practices","i-lucide-shield-check",{"title":136,"path":137,"stem":138,"icon":99},"Typed Fields","\u002Fcore-concepts\u002Ftyped-fields","3.core-concepts\u002F4.typed-fields",{"title":140,"path":141,"stem":142,"icon":143},"Sampling","\u002Fcore-concepts\u002Fsampling","3.core-concepts\u002F5.sampling","i-lucide-filter",{"title":145,"path":146,"stem":147,"icon":148},"Client Logging","\u002Fcore-concepts\u002Fclient-logging","3.core-concepts\u002F6.client-logging","i-lucide-monitor",{"title":150,"path":151,"stem":152,"icon":153},"Configuration","\u002Fcore-concepts\u002Fconfiguration","3.core-concepts\u002F7.configuration","i-lucide-settings",{"title":155,"path":156,"stem":157,"icon":158},"Performance","\u002Fcore-concepts\u002Fperformance","3.core-concepts\u002F8.performance","i-lucide-gauge",{"title":160,"path":161,"stem":162,"children":163,"page":29},"Adapters","\u002Fadapters","4.adapters",[164,168,173,178,183,188,193,198,203,208],{"title":36,"path":165,"stem":166,"icon":167},"\u002Fadapters\u002Foverview","4.adapters\u002F1.overview","i-custom-plug",{"title":169,"path":170,"stem":171,"icon":172},"Browser","\u002Fadapters\u002Fbrowser","4.adapters\u002F10.browser","i-lucide-globe",{"title":174,"path":175,"stem":176,"icon":177},"Axiom","\u002Fadapters\u002Faxiom","4.adapters\u002F2.axiom","i-custom-axiom",{"title":179,"path":180,"stem":181,"icon":182},"OTLP","\u002Fadapters\u002Fotlp","4.adapters\u002F3.otlp","i-simple-icons-opentelemetry",{"title":184,"path":185,"stem":186,"icon":187},"PostHog","\u002Fadapters\u002Fposthog","4.adapters\u002F4.posthog","i-simple-icons-posthog",{"title":189,"path":190,"stem":191,"icon":192},"Sentry","\u002Fadapters\u002Fsentry","4.adapters\u002F5.sentry","i-simple-icons-sentry",{"title":194,"path":195,"stem":196,"icon":197},"Better Stack","\u002Fadapters\u002Fbetter-stack","4.adapters\u002F6.better-stack","i-simple-icons-betterstack",{"title":199,"path":200,"stem":201,"icon":202},"File System","\u002Fadapters\u002Ffs","4.adapters\u002F7.fs","i-lucide-hard-drive",{"title":204,"path":205,"stem":206,"icon":207},"Custom Adapters","\u002Fadapters\u002Fcustom","4.adapters\u002F8.custom","i-lucide-code",{"title":209,"path":210,"stem":211,"icon":212},"Pipeline","\u002Fadapters\u002Fpipeline","4.adapters\u002F9.pipeline","i-lucide-workflow",{"title":214,"path":215,"stem":216,"children":217,"page":29},"Enrichers","\u002Fenrichers","5.enrichers",[218,221,225],{"title":36,"path":219,"stem":220,"icon":28},"\u002Fenrichers\u002Foverview","5.enrichers\u002F1.overview",{"title":222,"path":223,"stem":224,"icon":109},"Built-in","\u002Fenrichers\u002Fbuilt-in","5.enrichers\u002F2.built-in",{"title":226,"path":227,"stem":228,"icon":207},"Custom","\u002Fenrichers\u002Fcustom","5.enrichers\u002F3.custom",{"title":230,"path":231,"stem":232,"children":233,"page":29},"NuxtHub","\u002Fnuxthub","6.nuxthub",[234,238],{"title":36,"path":235,"stem":236,"icon":237},"\u002Fnuxthub\u002Foverview","6.nuxthub\u002F1.overview","i-lucide-database",{"title":239,"path":240,"stem":241,"icon":242},"Retention","\u002Fnuxthub\u002Fretention","6.nuxthub\u002F2.retention","i-lucide-clock",{"id":244,"title":91,"body":245,"description":2051,"extension":2052,"links":2053,"meta":2054,"navigation":2055,"path":92,"seo":2056,"stem":93,"__hash__":2057},"docs\u002F2.frameworks\u002F11.cloudflare-workers.md",{"type":246,"value":247,"toc":2039},"minimark",[248,261,342,346,351,371,375,658,676,684,687,690,1078,1144,1148,1155,1676,1679,1691,1695,1701,1985,1993,1997,2000,2018,2022,2035],[249,250,251,252,256,257,260],"p",{},"The ",[253,254,255],"code",{},"evlog\u002Fworkers"," adapter provides factory functions for creating request-scoped loggers with Cloudflare-specific context. Unlike framework integrations, Workers require manual ",[253,258,259],{},"log.emit()"," calls since there is no middleware lifecycle to hook into.",[262,263,264],"code-collapse",{},[265,266,272],"pre",{"className":267,"code":268,"filename":269,"language":270,"meta":271,"style":271},"language-txt shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","Set up evlog in my Cloudflare Worker.\n\n- Install evlog: pnpm add evlog\n- Import initLogger and createRequestLogger from 'evlog'\n- Call initLogger({ service: 'my-worker' }) at the top level\n- In the fetch handler, create a logger with createRequestLogger({ method, path })\n- Use log.set() to accumulate context throughout the request\n- Call log.emit() manually before returning the response (no middleware lifecycle)\n\nDocs: https:\u002F\u002Fwww.evlog.dev\u002Fframeworks\u002Fcloudflare-workers\nAdapters: https:\u002F\u002Fwww.evlog.dev\u002Fadapters\n","Prompt","txt","",[253,273,274,282,289,295,301,307,313,319,325,330,336],{"__ignoreMap":271},[275,276,279],"span",{"class":277,"line":278},"line",1,[275,280,281],{},"Set up evlog in my Cloudflare Worker.\n",[275,283,285],{"class":277,"line":284},2,[275,286,288],{"emptyLinePlaceholder":287},true,"\n",[275,290,292],{"class":277,"line":291},3,[275,293,294],{},"- Install evlog: pnpm add evlog\n",[275,296,298],{"class":277,"line":297},4,[275,299,300],{},"- Import initLogger and createRequestLogger from 'evlog'\n",[275,302,304],{"class":277,"line":303},5,[275,305,306],{},"- Call initLogger({ service: 'my-worker' }) at the top level\n",[275,308,310],{"class":277,"line":309},6,[275,311,312],{},"- In the fetch handler, create a logger with createRequestLogger({ method, path })\n",[275,314,316],{"class":277,"line":315},7,[275,317,318],{},"- Use log.set() to accumulate context throughout the request\n",[275,320,322],{"class":277,"line":321},8,[275,323,324],{},"- Call log.emit() manually before returning the response (no middleware lifecycle)\n",[275,326,328],{"class":277,"line":327},9,[275,329,288],{"emptyLinePlaceholder":287},[275,331,333],{"class":277,"line":332},10,[275,334,335],{},"Docs: https:\u002F\u002Fwww.evlog.dev\u002Fframeworks\u002Fcloudflare-workers\n",[275,337,339],{"class":277,"line":338},11,[275,340,341],{},"Adapters: https:\u002F\u002Fwww.evlog.dev\u002Fadapters\n",[343,344,20],"h2",{"id":345},"quick-start",[347,348,350],"h3",{"id":349},"_1-install","1. Install",[265,352,356],{"className":353,"code":354,"language":355,"meta":271,"style":271},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","bun add evlog\n","bash",[253,357,358],{"__ignoreMap":271},[275,359,360,364,368],{"class":277,"line":278},[275,361,363],{"class":362},"sBMFI","bun",[275,365,367],{"class":366},"sfazB"," add",[275,369,370],{"class":366}," evlog\n",[347,372,374],{"id":373},"_2-initialize-and-create-request-loggers","2. Initialize and create request loggers",[265,376,381],{"className":377,"code":378,"filename":379,"language":380,"meta":271,"style":271},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { initWorkersLogger, createWorkersLogger } from 'evlog\u002Fworkers'\n\ninitWorkersLogger({\n  env: { service: 'my-worker' },\n})\n\nexport default {\n  async fetch(request: Request, env: Env): Promise\u003CResponse> {\n    const log = createWorkersLogger(request)\n\n    log.set({ action: 'handle_request' })\n\n    \u002F\u002F ... your handler logic\n\n    log.emit()\n    return Response.json({ ok: true })\n  },\n}\n","src\u002Fworker.ts","typescript",[253,382,383,417,421,433,460,468,472,483,530,549,553,585,590,597,602,615,646,652],{"__ignoreMap":271},[275,384,385,389,393,397,400,403,406,409,412,414],{"class":277,"line":278},[275,386,388],{"class":387},"s7zQu","import",[275,390,392],{"class":391},"sMK4o"," {",[275,394,396],{"class":395},"sTEyZ"," initWorkersLogger",[275,398,399],{"class":391},",",[275,401,402],{"class":395}," createWorkersLogger",[275,404,405],{"class":391}," }",[275,407,408],{"class":387}," from",[275,410,411],{"class":391}," '",[275,413,255],{"class":366},[275,415,416],{"class":391},"'\n",[275,418,419],{"class":277,"line":284},[275,420,288],{"emptyLinePlaceholder":287},[275,422,423,427,430],{"class":277,"line":291},[275,424,426],{"class":425},"s2Zo4","initWorkersLogger",[275,428,429],{"class":395},"(",[275,431,432],{"class":391},"{\n",[275,434,435,439,442,444,447,449,451,454,457],{"class":277,"line":297},[275,436,438],{"class":437},"swJcz","  env",[275,440,441],{"class":391},":",[275,443,392],{"class":391},[275,445,446],{"class":437}," service",[275,448,441],{"class":391},[275,450,411],{"class":391},[275,452,453],{"class":366},"my-worker",[275,455,456],{"class":391},"'",[275,458,459],{"class":391}," },\n",[275,461,462,465],{"class":277,"line":303},[275,463,464],{"class":391},"}",[275,466,467],{"class":395},")\n",[275,469,470],{"class":277,"line":309},[275,471,288],{"emptyLinePlaceholder":287},[275,473,474,477,480],{"class":277,"line":315},[275,475,476],{"class":387},"export",[275,478,479],{"class":387}," default",[275,481,482],{"class":391}," {\n",[275,484,485,489,492,494,498,500,503,505,508,510,513,516,519,522,525,528],{"class":277,"line":321},[275,486,488],{"class":487},"spNyl","  async",[275,490,491],{"class":437}," fetch",[275,493,429],{"class":391},[275,495,497],{"class":496},"sHdIc","request",[275,499,441],{"class":391},[275,501,502],{"class":362}," Request",[275,504,399],{"class":391},[275,506,507],{"class":496}," env",[275,509,441],{"class":391},[275,511,512],{"class":362}," Env",[275,514,515],{"class":391},"):",[275,517,518],{"class":362}," Promise",[275,520,521],{"class":391},"\u003C",[275,523,524],{"class":362},"Response",[275,526,527],{"class":391},">",[275,529,482],{"class":391},[275,531,532,535,538,541,543,545,547],{"class":277,"line":327},[275,533,534],{"class":487},"    const",[275,536,537],{"class":395}," log",[275,539,540],{"class":391}," =",[275,542,402],{"class":425},[275,544,429],{"class":437},[275,546,497],{"class":395},[275,548,467],{"class":437},[275,550,551],{"class":277,"line":332},[275,552,288],{"emptyLinePlaceholder":287},[275,554,555,558,561,564,566,569,572,574,576,579,581,583],{"class":277,"line":338},[275,556,557],{"class":395},"    log",[275,559,560],{"class":391},".",[275,562,563],{"class":425},"set",[275,565,429],{"class":437},[275,567,568],{"class":391},"{",[275,570,571],{"class":437}," action",[275,573,441],{"class":391},[275,575,411],{"class":391},[275,577,578],{"class":366},"handle_request",[275,580,456],{"class":391},[275,582,405],{"class":391},[275,584,467],{"class":437},[275,586,588],{"class":277,"line":587},12,[275,589,288],{"emptyLinePlaceholder":287},[275,591,593],{"class":277,"line":592},13,[275,594,596],{"class":595},"sHwdD","    \u002F\u002F ... your handler logic\n",[275,598,600],{"class":277,"line":599},14,[275,601,288],{"emptyLinePlaceholder":287},[275,603,605,607,609,612],{"class":277,"line":604},15,[275,606,557],{"class":395},[275,608,560],{"class":391},[275,610,611],{"class":425},"emit",[275,613,614],{"class":437},"()\n",[275,616,618,621,624,626,629,631,633,636,638,642,644],{"class":277,"line":617},16,[275,619,620],{"class":387},"    return",[275,622,623],{"class":395}," Response",[275,625,560],{"class":391},[275,627,628],{"class":425},"json",[275,630,429],{"class":437},[275,632,568],{"class":391},[275,634,635],{"class":437}," ok",[275,637,441],{"class":391},[275,639,641],{"class":640},"sfNiH"," true",[275,643,405],{"class":391},[275,645,467],{"class":437},[275,647,649],{"class":277,"line":648},17,[275,650,651],{"class":391},"  },\n",[275,653,655],{"class":277,"line":654},18,[275,656,657],{"class":391},"}\n",[249,659,660,663,664,667,668,671,672,675],{},[253,661,662],{},"createWorkersLogger(request)"," automatically extracts ",[253,665,666],{},"method",", ",[253,669,670],{},"path",", and ",[253,673,674],{},"cf-ray"," from the request.",[677,678,680,681,683],"callout",{"color":679,"icon":13},"info","You must call ",[253,682,259],{}," manually before returning a response. Workers don't have a request lifecycle hook to auto-emit.",[343,685,121],{"id":686},"wide-events",[249,688,689],{},"Build up context progressively, then emit at the end:",[265,691,693],{"className":377,"code":692,"filename":379,"language":380,"meta":271,"style":271},"export default {\n  async fetch(request: Request, env: Env): Promise\u003CResponse> {\n    const log = createWorkersLogger(request)\n    const url = new URL(request.url)\n\n    log.set({ route: url.pathname })\n\n    const user = await env.DB.prepare('SELECT * FROM users WHERE id = ?').bind(url.searchParams.get('userId')).first()\n    log.set({ user: { id: user.id, plan: user.plan } })\n\n    const orders = await env.DB.prepare('SELECT COUNT(*) as count FROM orders WHERE user_id = ?').bind(user.id).first()\n    log.set({ orders: { count: orders.count } })\n\n    log.emit()\n    return Response.json({ user, orders })\n  },\n}\n",[253,694,695,703,737,753,779,783,811,815,889,939,943,996,1032,1036,1046,1070,1074],{"__ignoreMap":271},[275,696,697,699,701],{"class":277,"line":278},[275,698,476],{"class":387},[275,700,479],{"class":387},[275,702,482],{"class":391},[275,704,705,707,709,711,713,715,717,719,721,723,725,727,729,731,733,735],{"class":277,"line":284},[275,706,488],{"class":487},[275,708,491],{"class":437},[275,710,429],{"class":391},[275,712,497],{"class":496},[275,714,441],{"class":391},[275,716,502],{"class":362},[275,718,399],{"class":391},[275,720,507],{"class":496},[275,722,441],{"class":391},[275,724,512],{"class":362},[275,726,515],{"class":391},[275,728,518],{"class":362},[275,730,521],{"class":391},[275,732,524],{"class":362},[275,734,527],{"class":391},[275,736,482],{"class":391},[275,738,739,741,743,745,747,749,751],{"class":277,"line":291},[275,740,534],{"class":487},[275,742,537],{"class":395},[275,744,540],{"class":391},[275,746,402],{"class":425},[275,748,429],{"class":437},[275,750,497],{"class":395},[275,752,467],{"class":437},[275,754,755,757,760,762,765,768,770,772,774,777],{"class":277,"line":297},[275,756,534],{"class":487},[275,758,759],{"class":395}," url",[275,761,540],{"class":391},[275,763,764],{"class":391}," new",[275,766,767],{"class":425}," URL",[275,769,429],{"class":437},[275,771,497],{"class":395},[275,773,560],{"class":391},[275,775,776],{"class":395},"url",[275,778,467],{"class":437},[275,780,781],{"class":277,"line":303},[275,782,288],{"emptyLinePlaceholder":287},[275,784,785,787,789,791,793,795,798,800,802,804,807,809],{"class":277,"line":309},[275,786,557],{"class":395},[275,788,560],{"class":391},[275,790,563],{"class":425},[275,792,429],{"class":437},[275,794,568],{"class":391},[275,796,797],{"class":437}," route",[275,799,441],{"class":391},[275,801,759],{"class":395},[275,803,560],{"class":391},[275,805,806],{"class":395},"pathname",[275,808,405],{"class":391},[275,810,467],{"class":437},[275,812,813],{"class":277,"line":315},[275,814,288],{"emptyLinePlaceholder":287},[275,816,817,819,822,824,827,829,831,834,836,839,841,843,846,848,851,853,856,858,860,862,865,867,870,872,874,877,879,882,884,887],{"class":277,"line":321},[275,818,534],{"class":487},[275,820,821],{"class":395}," user",[275,823,540],{"class":391},[275,825,826],{"class":387}," await",[275,828,507],{"class":395},[275,830,560],{"class":391},[275,832,833],{"class":395},"DB",[275,835,560],{"class":391},[275,837,838],{"class":425},"prepare",[275,840,429],{"class":437},[275,842,456],{"class":391},[275,844,845],{"class":366},"SELECT * FROM users WHERE id = ?",[275,847,456],{"class":391},[275,849,850],{"class":437},")",[275,852,560],{"class":391},[275,854,855],{"class":425},"bind",[275,857,429],{"class":437},[275,859,776],{"class":395},[275,861,560],{"class":391},[275,863,864],{"class":395},"searchParams",[275,866,560],{"class":391},[275,868,869],{"class":425},"get",[275,871,429],{"class":437},[275,873,456],{"class":391},[275,875,876],{"class":366},"userId",[275,878,456],{"class":391},[275,880,881],{"class":437},"))",[275,883,560],{"class":391},[275,885,886],{"class":425},"first",[275,888,614],{"class":437},[275,890,891,893,895,897,899,901,903,905,907,910,912,914,916,919,921,924,926,928,930,933,935,937],{"class":277,"line":327},[275,892,557],{"class":395},[275,894,560],{"class":391},[275,896,563],{"class":425},[275,898,429],{"class":437},[275,900,568],{"class":391},[275,902,821],{"class":437},[275,904,441],{"class":391},[275,906,392],{"class":391},[275,908,909],{"class":437}," id",[275,911,441],{"class":391},[275,913,821],{"class":395},[275,915,560],{"class":391},[275,917,918],{"class":395},"id",[275,920,399],{"class":391},[275,922,923],{"class":437}," plan",[275,925,441],{"class":391},[275,927,821],{"class":395},[275,929,560],{"class":391},[275,931,932],{"class":395},"plan",[275,934,405],{"class":391},[275,936,405],{"class":391},[275,938,467],{"class":437},[275,940,941],{"class":277,"line":332},[275,942,288],{"emptyLinePlaceholder":287},[275,944,945,947,950,952,954,956,958,960,962,964,966,968,971,973,975,977,979,981,984,986,988,990,992,994],{"class":277,"line":338},[275,946,534],{"class":487},[275,948,949],{"class":395}," orders",[275,951,540],{"class":391},[275,953,826],{"class":387},[275,955,507],{"class":395},[275,957,560],{"class":391},[275,959,833],{"class":395},[275,961,560],{"class":391},[275,963,838],{"class":425},[275,965,429],{"class":437},[275,967,456],{"class":391},[275,969,970],{"class":366},"SELECT COUNT(*) as count FROM orders WHERE user_id = ?",[275,972,456],{"class":391},[275,974,850],{"class":437},[275,976,560],{"class":391},[275,978,855],{"class":425},[275,980,429],{"class":437},[275,982,983],{"class":395},"user",[275,985,560],{"class":391},[275,987,918],{"class":395},[275,989,850],{"class":437},[275,991,560],{"class":391},[275,993,886],{"class":425},[275,995,614],{"class":437},[275,997,998,1000,1002,1004,1006,1008,1010,1012,1014,1017,1019,1021,1023,1026,1028,1030],{"class":277,"line":587},[275,999,557],{"class":395},[275,1001,560],{"class":391},[275,1003,563],{"class":425},[275,1005,429],{"class":437},[275,1007,568],{"class":391},[275,1009,949],{"class":437},[275,1011,441],{"class":391},[275,1013,392],{"class":391},[275,1015,1016],{"class":437}," count",[275,1018,441],{"class":391},[275,1020,949],{"class":395},[275,1022,560],{"class":391},[275,1024,1025],{"class":395},"count",[275,1027,405],{"class":391},[275,1029,405],{"class":391},[275,1031,467],{"class":437},[275,1033,1034],{"class":277,"line":592},[275,1035,288],{"emptyLinePlaceholder":287},[275,1037,1038,1040,1042,1044],{"class":277,"line":599},[275,1039,557],{"class":395},[275,1041,560],{"class":391},[275,1043,611],{"class":425},[275,1045,614],{"class":437},[275,1047,1048,1050,1052,1054,1056,1058,1060,1062,1064,1066,1068],{"class":277,"line":604},[275,1049,620],{"class":387},[275,1051,623],{"class":395},[275,1053,560],{"class":391},[275,1055,628],{"class":425},[275,1057,429],{"class":437},[275,1059,568],{"class":391},[275,1061,821],{"class":395},[275,1063,399],{"class":391},[275,1065,949],{"class":395},[275,1067,405],{"class":391},[275,1069,467],{"class":437},[275,1071,1072],{"class":277,"line":617},[275,1073,651],{"class":391},[275,1075,1076],{"class":277,"line":648},[275,1077,657],{"class":391},[265,1079,1082],{"className":353,"code":1080,"filename":1081,"language":355,"meta":271,"style":271},"14:58:15 INFO [my-worker] GET \u002Fapi\u002Fusers 200 in 12ms\n  ├─ orders: count=5\n  ├─ user: id=usr_123 plan=pro\n  ├─ route: \u002Fapi\u002Fusers\n  └─ requestId: 4a8ff3a8-...\n","Terminal output",[253,1083,1084,1095,1110,1123,1133],{"__ignoreMap":271},[275,1085,1086,1089,1092],{"class":277,"line":278},[275,1087,1088],{"class":362},"14:58:15",[275,1090,1091],{"class":366}," INFO",[275,1093,1094],{"class":395}," [my-worker] GET \u002Fapi\u002Fusers 200 in 12ms\n",[275,1096,1097,1100,1103,1106],{"class":277,"line":284},[275,1098,1099],{"class":362},"  ├─",[275,1101,1102],{"class":366}," orders:",[275,1104,1105],{"class":366}," count=",[275,1107,1109],{"class":1108},"sbssI","5\n",[275,1111,1112,1114,1117,1120],{"class":277,"line":291},[275,1113,1099],{"class":362},[275,1115,1116],{"class":366}," user:",[275,1118,1119],{"class":366}," id=usr_123",[275,1121,1122],{"class":366}," plan=pro\n",[275,1124,1125,1127,1130],{"class":277,"line":297},[275,1126,1099],{"class":362},[275,1128,1129],{"class":366}," route:",[275,1131,1132],{"class":366}," \u002Fapi\u002Fusers\n",[275,1134,1135,1138,1141],{"class":277,"line":303},[275,1136,1137],{"class":362},"  └─",[275,1139,1140],{"class":366}," requestId:",[275,1142,1143],{"class":366}," 4a8ff3a8-...\n",[343,1145,1147],{"id":1146},"error-handling","Error Handling",[249,1149,1150,1151,1154],{},"Use ",[253,1152,1153],{},"createError"," for structured errors and handle them with try\u002Fcatch:",[265,1156,1158],{"className":377,"code":1157,"filename":379,"language":380,"meta":271,"style":271},"import { createError, parseError } from 'evlog'\n\nexport default {\n  async fetch(request: Request, env: Env): Promise\u003CResponse> {\n    const log = createWorkersLogger(request)\n\n    try {\n      const body = await request.json()\n      log.set({ payment: { amount: body.amount } })\n\n      if (body.amount \u003C= 0) {\n        throw createError({\n          status: 400,\n          message: 'Invalid payment amount',\n          why: 'The amount must be a positive number',\n          fix: 'Pass a positive integer in cents',\n        })\n      }\n\n      log.emit()\n      return Response.json({ success: true })\n    } catch (error) {\n      log.error(error instanceof Error ? error : new Error(String(error)))\n      log.emit()\n\n      const parsed = parseError(error)\n      return Response.json({\n        message: parsed.message,\n        why: parsed.why,\n        fix: parsed.fix,\n      }, { status: parsed.status })\n    }\n  },\n}\n",[253,1159,1160,1185,1189,1197,1231,1247,1251,1258,1279,1317,1321,1347,1358,1371,1387,1403,1419,1426,1431,1436,1447,1474,1492,1536,1547,1552,1570,1585,1602,1619,1636,1660,1666,1671],{"__ignoreMap":271},[275,1161,1162,1164,1166,1169,1171,1174,1176,1178,1180,1183],{"class":277,"line":278},[275,1163,388],{"class":387},[275,1165,392],{"class":391},[275,1167,1168],{"class":395}," createError",[275,1170,399],{"class":391},[275,1172,1173],{"class":395}," parseError",[275,1175,405],{"class":391},[275,1177,408],{"class":387},[275,1179,411],{"class":391},[275,1181,1182],{"class":366},"evlog",[275,1184,416],{"class":391},[275,1186,1187],{"class":277,"line":284},[275,1188,288],{"emptyLinePlaceholder":287},[275,1190,1191,1193,1195],{"class":277,"line":291},[275,1192,476],{"class":387},[275,1194,479],{"class":387},[275,1196,482],{"class":391},[275,1198,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229],{"class":277,"line":297},[275,1200,488],{"class":487},[275,1202,491],{"class":437},[275,1204,429],{"class":391},[275,1206,497],{"class":496},[275,1208,441],{"class":391},[275,1210,502],{"class":362},[275,1212,399],{"class":391},[275,1214,507],{"class":496},[275,1216,441],{"class":391},[275,1218,512],{"class":362},[275,1220,515],{"class":391},[275,1222,518],{"class":362},[275,1224,521],{"class":391},[275,1226,524],{"class":362},[275,1228,527],{"class":391},[275,1230,482],{"class":391},[275,1232,1233,1235,1237,1239,1241,1243,1245],{"class":277,"line":303},[275,1234,534],{"class":487},[275,1236,537],{"class":395},[275,1238,540],{"class":391},[275,1240,402],{"class":425},[275,1242,429],{"class":437},[275,1244,497],{"class":395},[275,1246,467],{"class":437},[275,1248,1249],{"class":277,"line":309},[275,1250,288],{"emptyLinePlaceholder":287},[275,1252,1253,1256],{"class":277,"line":315},[275,1254,1255],{"class":387},"    try",[275,1257,482],{"class":391},[275,1259,1260,1263,1266,1268,1270,1273,1275,1277],{"class":277,"line":321},[275,1261,1262],{"class":487},"      const",[275,1264,1265],{"class":395}," body",[275,1267,540],{"class":391},[275,1269,826],{"class":387},[275,1271,1272],{"class":395}," request",[275,1274,560],{"class":391},[275,1276,628],{"class":425},[275,1278,614],{"class":437},[275,1280,1281,1284,1286,1288,1290,1292,1295,1297,1299,1302,1304,1306,1308,1311,1313,1315],{"class":277,"line":327},[275,1282,1283],{"class":395},"      log",[275,1285,560],{"class":391},[275,1287,563],{"class":425},[275,1289,429],{"class":437},[275,1291,568],{"class":391},[275,1293,1294],{"class":437}," payment",[275,1296,441],{"class":391},[275,1298,392],{"class":391},[275,1300,1301],{"class":437}," amount",[275,1303,441],{"class":391},[275,1305,1265],{"class":395},[275,1307,560],{"class":391},[275,1309,1310],{"class":395},"amount",[275,1312,405],{"class":391},[275,1314,405],{"class":391},[275,1316,467],{"class":437},[275,1318,1319],{"class":277,"line":332},[275,1320,288],{"emptyLinePlaceholder":287},[275,1322,1323,1326,1329,1332,1334,1336,1339,1342,1345],{"class":277,"line":338},[275,1324,1325],{"class":387},"      if",[275,1327,1328],{"class":437}," (",[275,1330,1331],{"class":395},"body",[275,1333,560],{"class":391},[275,1335,1310],{"class":395},[275,1337,1338],{"class":391}," \u003C=",[275,1340,1341],{"class":1108}," 0",[275,1343,1344],{"class":437},") ",[275,1346,432],{"class":391},[275,1348,1349,1352,1354,1356],{"class":277,"line":587},[275,1350,1351],{"class":387},"        throw",[275,1353,1168],{"class":425},[275,1355,429],{"class":437},[275,1357,432],{"class":391},[275,1359,1360,1363,1365,1368],{"class":277,"line":592},[275,1361,1362],{"class":437},"          status",[275,1364,441],{"class":391},[275,1366,1367],{"class":1108}," 400",[275,1369,1370],{"class":391},",\n",[275,1372,1373,1376,1378,1380,1383,1385],{"class":277,"line":599},[275,1374,1375],{"class":437},"          message",[275,1377,441],{"class":391},[275,1379,411],{"class":391},[275,1381,1382],{"class":366},"Invalid payment amount",[275,1384,456],{"class":391},[275,1386,1370],{"class":391},[275,1388,1389,1392,1394,1396,1399,1401],{"class":277,"line":604},[275,1390,1391],{"class":437},"          why",[275,1393,441],{"class":391},[275,1395,411],{"class":391},[275,1397,1398],{"class":366},"The amount must be a positive number",[275,1400,456],{"class":391},[275,1402,1370],{"class":391},[275,1404,1405,1408,1410,1412,1415,1417],{"class":277,"line":617},[275,1406,1407],{"class":437},"          fix",[275,1409,441],{"class":391},[275,1411,411],{"class":391},[275,1413,1414],{"class":366},"Pass a positive integer in cents",[275,1416,456],{"class":391},[275,1418,1370],{"class":391},[275,1420,1421,1424],{"class":277,"line":648},[275,1422,1423],{"class":391},"        }",[275,1425,467],{"class":437},[275,1427,1428],{"class":277,"line":654},[275,1429,1430],{"class":391},"      }\n",[275,1432,1434],{"class":277,"line":1433},19,[275,1435,288],{"emptyLinePlaceholder":287},[275,1437,1439,1441,1443,1445],{"class":277,"line":1438},20,[275,1440,1283],{"class":395},[275,1442,560],{"class":391},[275,1444,611],{"class":425},[275,1446,614],{"class":437},[275,1448,1450,1453,1455,1457,1459,1461,1463,1466,1468,1470,1472],{"class":277,"line":1449},21,[275,1451,1452],{"class":387},"      return",[275,1454,623],{"class":395},[275,1456,560],{"class":391},[275,1458,628],{"class":425},[275,1460,429],{"class":437},[275,1462,568],{"class":391},[275,1464,1465],{"class":437}," success",[275,1467,441],{"class":391},[275,1469,641],{"class":640},[275,1471,405],{"class":391},[275,1473,467],{"class":437},[275,1475,1477,1480,1483,1485,1488,1490],{"class":277,"line":1476},22,[275,1478,1479],{"class":391},"    }",[275,1481,1482],{"class":387}," catch",[275,1484,1328],{"class":437},[275,1486,1487],{"class":395},"error",[275,1489,1344],{"class":437},[275,1491,432],{"class":391},[275,1493,1495,1497,1499,1501,1503,1505,1508,1511,1514,1517,1520,1522,1524,1526,1529,1531,1533],{"class":277,"line":1494},23,[275,1496,1283],{"class":395},[275,1498,560],{"class":391},[275,1500,1487],{"class":425},[275,1502,429],{"class":437},[275,1504,1487],{"class":395},[275,1506,1507],{"class":391}," instanceof",[275,1509,1510],{"class":362}," Error",[275,1512,1513],{"class":391}," ?",[275,1515,1516],{"class":395}," error",[275,1518,1519],{"class":391}," :",[275,1521,764],{"class":391},[275,1523,1510],{"class":425},[275,1525,429],{"class":437},[275,1527,1528],{"class":425},"String",[275,1530,429],{"class":437},[275,1532,1487],{"class":395},[275,1534,1535],{"class":437},")))\n",[275,1537,1539,1541,1543,1545],{"class":277,"line":1538},24,[275,1540,1283],{"class":395},[275,1542,560],{"class":391},[275,1544,611],{"class":425},[275,1546,614],{"class":437},[275,1548,1550],{"class":277,"line":1549},25,[275,1551,288],{"emptyLinePlaceholder":287},[275,1553,1555,1557,1560,1562,1564,1566,1568],{"class":277,"line":1554},26,[275,1556,1262],{"class":487},[275,1558,1559],{"class":395}," parsed",[275,1561,540],{"class":391},[275,1563,1173],{"class":425},[275,1565,429],{"class":437},[275,1567,1487],{"class":395},[275,1569,467],{"class":437},[275,1571,1573,1575,1577,1579,1581,1583],{"class":277,"line":1572},27,[275,1574,1452],{"class":387},[275,1576,623],{"class":395},[275,1578,560],{"class":391},[275,1580,628],{"class":425},[275,1582,429],{"class":437},[275,1584,432],{"class":391},[275,1586,1588,1591,1593,1595,1597,1600],{"class":277,"line":1587},28,[275,1589,1590],{"class":437},"        message",[275,1592,441],{"class":391},[275,1594,1559],{"class":395},[275,1596,560],{"class":391},[275,1598,1599],{"class":395},"message",[275,1601,1370],{"class":391},[275,1603,1605,1608,1610,1612,1614,1617],{"class":277,"line":1604},29,[275,1606,1607],{"class":437},"        why",[275,1609,441],{"class":391},[275,1611,1559],{"class":395},[275,1613,560],{"class":391},[275,1615,1616],{"class":395},"why",[275,1618,1370],{"class":391},[275,1620,1622,1625,1627,1629,1631,1634],{"class":277,"line":1621},30,[275,1623,1624],{"class":437},"        fix",[275,1626,441],{"class":391},[275,1628,1559],{"class":395},[275,1630,560],{"class":391},[275,1632,1633],{"class":395},"fix",[275,1635,1370],{"class":391},[275,1637,1639,1642,1644,1647,1649,1651,1653,1656,1658],{"class":277,"line":1638},31,[275,1640,1641],{"class":391},"      },",[275,1643,392],{"class":391},[275,1645,1646],{"class":437}," status",[275,1648,441],{"class":391},[275,1650,1559],{"class":395},[275,1652,560],{"class":391},[275,1654,1655],{"class":395},"status",[275,1657,405],{"class":391},[275,1659,467],{"class":437},[275,1661,1663],{"class":277,"line":1662},32,[275,1664,1665],{"class":391},"    }\n",[275,1667,1669],{"class":277,"line":1668},33,[275,1670,651],{"class":391},[275,1672,1674],{"class":277,"line":1673},34,[275,1675,657],{"class":391},[343,1677,150],{"id":1678},"configuration",[249,1680,1681,1682,1686,1687,1690],{},"See the ",[1683,1684,1685],"a",{"href":151},"Configuration reference"," for all available options (",[253,1688,1689],{},"initLogger",", middleware options, sampling, silent mode, etc.).",[343,1692,1694],{"id":1693},"drain-enrichers","Drain & Enrichers",[249,1696,1697,1698,1700],{},"Configure drain and enrichers via ",[253,1699,426],{}," options:",[265,1702,1704],{"className":377,"code":1703,"filename":379,"language":380,"meta":271,"style":271},"import { initWorkersLogger, createWorkersLogger } from 'evlog\u002Fworkers'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\nimport { createUserAgentEnricher } from 'evlog\u002Fenrichers'\nimport { createDrainPipeline } from 'evlog\u002Fpipeline'\nimport type { DrainContext } from 'evlog'\n\nconst pipeline = createDrainPipeline\u003CDrainContext>({\n  batch: { size: 50, intervalMs: 5000 },\n})\nconst drain = pipeline(createAxiomDrain())\nconst userAgent = createUserAgentEnricher()\n\ninitWorkersLogger({\n  env: { service: 'my-worker' },\n  drain,\n  enrich: (ctx) => {\n    userAgent(ctx)\n  },\n})\n",[253,1705,1706,1728,1748,1768,1788,1810,1814,1838,1867,1873,1893,1906,1910,1918,1938,1945,1964,1975,1979],{"__ignoreMap":271},[275,1707,1708,1710,1712,1714,1716,1718,1720,1722,1724,1726],{"class":277,"line":278},[275,1709,388],{"class":387},[275,1711,392],{"class":391},[275,1713,396],{"class":395},[275,1715,399],{"class":391},[275,1717,402],{"class":395},[275,1719,405],{"class":391},[275,1721,408],{"class":387},[275,1723,411],{"class":391},[275,1725,255],{"class":366},[275,1727,416],{"class":391},[275,1729,1730,1732,1734,1737,1739,1741,1743,1746],{"class":277,"line":284},[275,1731,388],{"class":387},[275,1733,392],{"class":391},[275,1735,1736],{"class":395}," createAxiomDrain",[275,1738,405],{"class":391},[275,1740,408],{"class":387},[275,1742,411],{"class":391},[275,1744,1745],{"class":366},"evlog\u002Faxiom",[275,1747,416],{"class":391},[275,1749,1750,1752,1754,1757,1759,1761,1763,1766],{"class":277,"line":291},[275,1751,388],{"class":387},[275,1753,392],{"class":391},[275,1755,1756],{"class":395}," createUserAgentEnricher",[275,1758,405],{"class":391},[275,1760,408],{"class":387},[275,1762,411],{"class":391},[275,1764,1765],{"class":366},"evlog\u002Fenrichers",[275,1767,416],{"class":391},[275,1769,1770,1772,1774,1777,1779,1781,1783,1786],{"class":277,"line":297},[275,1771,388],{"class":387},[275,1773,392],{"class":391},[275,1775,1776],{"class":395}," createDrainPipeline",[275,1778,405],{"class":391},[275,1780,408],{"class":387},[275,1782,411],{"class":391},[275,1784,1785],{"class":366},"evlog\u002Fpipeline",[275,1787,416],{"class":391},[275,1789,1790,1792,1795,1797,1800,1802,1804,1806,1808],{"class":277,"line":303},[275,1791,388],{"class":387},[275,1793,1794],{"class":387}," type",[275,1796,392],{"class":391},[275,1798,1799],{"class":395}," DrainContext",[275,1801,405],{"class":391},[275,1803,408],{"class":387},[275,1805,411],{"class":391},[275,1807,1182],{"class":366},[275,1809,416],{"class":391},[275,1811,1812],{"class":277,"line":309},[275,1813,288],{"emptyLinePlaceholder":287},[275,1815,1816,1819,1822,1825,1827,1829,1832,1834,1836],{"class":277,"line":315},[275,1817,1818],{"class":487},"const",[275,1820,1821],{"class":395}," pipeline ",[275,1823,1824],{"class":391},"=",[275,1826,1776],{"class":425},[275,1828,521],{"class":391},[275,1830,1831],{"class":362},"DrainContext",[275,1833,527],{"class":391},[275,1835,429],{"class":395},[275,1837,432],{"class":391},[275,1839,1840,1843,1845,1847,1850,1852,1855,1857,1860,1862,1865],{"class":277,"line":321},[275,1841,1842],{"class":437},"  batch",[275,1844,441],{"class":391},[275,1846,392],{"class":391},[275,1848,1849],{"class":437}," size",[275,1851,441],{"class":391},[275,1853,1854],{"class":1108}," 50",[275,1856,399],{"class":391},[275,1858,1859],{"class":437}," intervalMs",[275,1861,441],{"class":391},[275,1863,1864],{"class":1108}," 5000",[275,1866,459],{"class":391},[275,1868,1869,1871],{"class":277,"line":327},[275,1870,464],{"class":391},[275,1872,467],{"class":395},[275,1874,1875,1877,1880,1882,1885,1887,1890],{"class":277,"line":332},[275,1876,1818],{"class":487},[275,1878,1879],{"class":395}," drain ",[275,1881,1824],{"class":391},[275,1883,1884],{"class":425}," pipeline",[275,1886,429],{"class":395},[275,1888,1889],{"class":425},"createAxiomDrain",[275,1891,1892],{"class":395},"())\n",[275,1894,1895,1897,1900,1902,1904],{"class":277,"line":338},[275,1896,1818],{"class":487},[275,1898,1899],{"class":395}," userAgent ",[275,1901,1824],{"class":391},[275,1903,1756],{"class":425},[275,1905,614],{"class":395},[275,1907,1908],{"class":277,"line":587},[275,1909,288],{"emptyLinePlaceholder":287},[275,1911,1912,1914,1916],{"class":277,"line":592},[275,1913,426],{"class":425},[275,1915,429],{"class":395},[275,1917,432],{"class":391},[275,1919,1920,1922,1924,1926,1928,1930,1932,1934,1936],{"class":277,"line":599},[275,1921,438],{"class":437},[275,1923,441],{"class":391},[275,1925,392],{"class":391},[275,1927,446],{"class":437},[275,1929,441],{"class":391},[275,1931,411],{"class":391},[275,1933,453],{"class":366},[275,1935,456],{"class":391},[275,1937,459],{"class":391},[275,1939,1940,1943],{"class":277,"line":604},[275,1941,1942],{"class":395},"  drain",[275,1944,1370],{"class":391},[275,1946,1947,1950,1952,1954,1957,1959,1962],{"class":277,"line":617},[275,1948,1949],{"class":425},"  enrich",[275,1951,441],{"class":391},[275,1953,1328],{"class":391},[275,1955,1956],{"class":496},"ctx",[275,1958,850],{"class":391},[275,1960,1961],{"class":487}," =>",[275,1963,482],{"class":391},[275,1965,1966,1969,1971,1973],{"class":277,"line":648},[275,1967,1968],{"class":425},"    userAgent",[275,1970,429],{"class":437},[275,1972,1956],{"class":395},[275,1974,467],{"class":437},[275,1976,1977],{"class":277,"line":654},[275,1978,651],{"class":391},[275,1980,1981,1983],{"class":277,"line":1433},[275,1982,464],{"class":391},[275,1984,467],{"class":395},[677,1986,1681,1987,1989,1990,1992],{"color":679,"icon":13},[1683,1988,160],{"href":165}," and ",[1683,1991,214],{"href":219}," docs for all available drain adapters and enrichers.",[343,1994,1996],{"id":1995},"wrangler-configuration","Wrangler Configuration",[249,1998,1999],{},"Disable Cloudflare's default invocation logs to avoid duplicates when using evlog:",[265,2001,2006],{"className":2002,"code":2003,"filename":2004,"language":2005,"meta":271,"style":271},"language-toml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","[observability]\nenabled = false\n","wrangler.toml","toml",[253,2007,2008,2013],{"__ignoreMap":271},[275,2009,2010],{"class":277,"line":278},[275,2011,2012],{},"[observability]\n",[275,2014,2015],{"class":277,"line":284},[275,2016,2017],{},"enabled = false\n",[343,2019,2021],{"id":2020},"run-locally","Run Locally",[265,2023,2025],{"className":353,"code":2024,"language":355,"meta":271,"style":271},"wrangler dev\n",[253,2026,2027],{"__ignoreMap":271},[275,2028,2029,2032],{"class":277,"line":278},[275,2030,2031],{"class":362},"wrangler",[275,2033,2034],{"class":366}," dev\n",[2036,2037,2038],"style",{},"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 .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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}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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":271,"searchDepth":284,"depth":284,"links":2040},[2041,2045,2046,2047,2048,2049,2050],{"id":345,"depth":284,"text":20,"children":2042},[2043,2044],{"id":349,"depth":291,"text":350},{"id":373,"depth":291,"text":374},{"id":686,"depth":284,"text":121},{"id":1146,"depth":284,"text":1147},{"id":1678,"depth":284,"text":150},{"id":1693,"depth":284,"text":1694},{"id":1995,"depth":284,"text":1996},{"id":2020,"depth":284,"text":2021},"Wide events, structured errors, and logging in Cloudflare Workers and Durable Objects.","md",null,{},{"title":91,"icon":94},{"title":91,"description":2051},"7qekdCPgUCKvLiaafximm-J0jndFLRnhOSQtkXDjXsw",[2059,2061],{"title":86,"path":87,"stem":88,"description":2060,"icon":89,"children":-1},"Automatic wide events, structured errors, drain adapters, enrichers, and tail sampling in Elysia applications.",{"title":96,"path":97,"stem":98,"description":2062,"icon":99,"children":-1},"Use evlog in standalone TypeScript scripts, CLI tools, queues, cron jobs, and any TypeScript process.",1773505334393]