[{"data":1,"prerenderedAt":6006},["ShallowReactive",2],{"navigation_docs":3,"evlog-docs-home":567},[4,30,80,133,313,444,503,542],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Start","\u002Fstart","1.start",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fstart\u002Fintroduction","1.start\u002F1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Why start with evlog","\u002Fstart\u002Fwhy-evlog","1.start\u002F2.why-evlog","i-lucide-rocket",{"title":20,"path":21,"stem":22,"icon":23},"Installation","\u002Fstart\u002Finstallation","1.start\u002F3.installation","i-lucide-download",{"title":25,"path":26,"stem":27,"icon":28},"Quick Start","\u002Fstart\u002Fquick-start","1.start\u002F4.quick-start","i-lucide-zap",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Learn","\u002Flearn","2.learn",[35,40,45,50,55,60,65,70,75],{"title":36,"path":37,"stem":38,"icon":39},"Overview","\u002Flearn\u002Foverview","2.learn\u002F0.overview","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Simple Logging","\u002Flearn\u002Fsimple-logging","2.learn\u002F1.simple-logging","i-lucide-terminal",{"title":46,"path":47,"stem":48,"icon":49},"Wide Events","\u002Flearn\u002Fwide-events","2.learn\u002F2.wide-events","i-lucide-layers",{"title":51,"path":52,"stem":53,"icon":54},"Structured Errors","\u002Flearn\u002Fstructured-errors","2.learn\u002F3.structured-errors","i-lucide-shield-alert",{"title":56,"path":57,"stem":58,"icon":59},"Lifecycle","\u002Flearn\u002Flifecycle","2.learn\u002F4.lifecycle","i-lucide-arrow-right-left",{"title":61,"path":62,"stem":63,"icon":64},"Sampling","\u002Flearn\u002Fsampling","2.learn\u002F5.sampling","i-lucide-filter",{"title":66,"path":67,"stem":68,"icon":69},"Auto-Redaction","\u002Flearn\u002Fredaction","2.learn\u002F6.redaction","i-lucide-eye-off",{"title":71,"path":72,"stem":73,"icon":74},"Typed Fields","\u002Flearn\u002Ftyped-fields","2.learn\u002F7.typed-fields","i-simple-icons-typescript",{"title":76,"path":77,"stem":78,"icon":79},"Catalogs","\u002Flearn\u002Fcatalogs","2.learn\u002F8.catalogs","i-lucide-book-open",{"title":81,"path":82,"stem":83,"children":84,"page":29},"CLI","\u002Fcli","3.cli",[85,88,93,98,103,108,113,118,123,128],{"title":36,"path":86,"stem":87,"icon":44},"\u002Fcli\u002Foverview","3.cli\u002F0.overview",{"title":89,"path":90,"stem":91,"icon":92},"init","\u002Fcli\u002Finit","3.cli\u002F1.init","i-lucide-wand-sparkles",{"title":94,"path":95,"stem":96,"icon":97},"map","\u002Fcli\u002Fmap","3.cli\u002F2.map","i-lucide-radar",{"title":99,"path":100,"stem":101,"icon":102},"Rules","\u002Fcli\u002Frules","3.cli\u002F3.rules","i-lucide-list-checks",{"title":104,"path":105,"stem":106,"icon":107},"Scoring","\u002Fcli\u002Fscoring","3.cli\u002F4.scoring","i-lucide-gauge",{"title":109,"path":110,"stem":111,"icon":112},"CI","\u002Fcli\u002Fci","3.cli\u002F5.ci","i-lucide-git-pull-request",{"title":114,"path":115,"stem":116,"icon":117},"doctor","\u002Fcli\u002Fdoctor","3.cli\u002F6.doctor","i-lucide-stethoscope",{"title":119,"path":120,"stem":121,"icon":122},"telemetry","\u002Fcli\u002Ftelemetry","3.cli\u002F7.telemetry","i-lucide-bar-chart-3",{"title":124,"path":125,"stem":126,"icon":127},"agents","\u002Fcli\u002Fagents","3.cli\u002F8.agents","i-lucide-bot",{"title":129,"path":130,"stem":131,"icon":132},"Observability Score","\u002Fcli\u002Fobservability-score","3.cli\u002F9.observability-score","i-lucide-activity",{"title":134,"path":135,"stem":136,"children":137,"page":29},"Integrate","\u002Fintegrate","4.integrate",[138,142,225],{"title":36,"path":139,"stem":140,"icon":141},"\u002Fintegrate\u002Foverview","4.integrate\u002F0.overview","i-lucide-plug",{"title":143,"path":144,"stem":145,"children":146,"page":29},"Adapters","\u002Fintegrate\u002Fadapters","4.integrate\u002Fadapters",[147,150,180,205],{"title":36,"path":148,"stem":149,"icon":39},"\u002Fintegrate\u002Fadapters\u002Foverview","4.integrate\u002Fadapters\u002F01.overview",{"title":151,"path":152,"stem":153,"children":154,"page":29},"Cloud","\u002Fintegrate\u002Fadapters\u002Fcloud","4.integrate\u002Fadapters\u002Fcloud",[155,160,165,170,175],{"title":156,"path":157,"stem":158,"icon":159},"Axiom","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Faxiom","4.integrate\u002Fadapters\u002Fcloud\u002F01.axiom","i-custom-axiom",{"title":161,"path":162,"stem":163,"icon":164},"PostHog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog","4.integrate\u002Fadapters\u002Fcloud\u002F02.posthog","i-simple-icons-posthog",{"title":166,"path":167,"stem":168,"icon":169},"Sentry","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fsentry","4.integrate\u002Fadapters\u002Fcloud\u002F03.sentry","i-simple-icons-sentry",{"title":171,"path":172,"stem":173,"icon":174},"Better Stack","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fbetter-stack","4.integrate\u002Fadapters\u002Fcloud\u002F04.better-stack","i-simple-icons-betterstack",{"title":176,"path":177,"stem":178,"icon":179},"Datadog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fdatadog","4.integrate\u002Fadapters\u002Fcloud\u002F05.datadog","i-simple-icons-datadog",{"title":181,"path":182,"stem":183,"children":184,"page":29},"Cloud or Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fhybrid","4.integrate\u002Fadapters\u002Fhybrid",[185,190,195,200],{"title":186,"path":187,"stem":188,"icon":189},"Grafana Loki","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Floki","4.integrate\u002Fadapters\u002Fhybrid\u002F01.loki","i-simple-icons-grafana",{"title":191,"path":192,"stem":193,"icon":194},"ClickHouse","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fclickhouse","4.integrate\u002Fadapters\u002Fhybrid\u002F02.clickhouse","i-simple-icons-clickhouse",{"title":196,"path":197,"stem":198,"icon":199},"OTLP","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fotlp","4.integrate\u002Fadapters\u002Fhybrid\u002F03.otlp","i-simple-icons-opentelemetry",{"title":201,"path":202,"stem":203,"icon":204},"HyperDX","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fhyperdx","4.integrate\u002Fadapters\u002Fhybrid\u002F04.hyperdx","i-custom-hyperdx",{"title":206,"path":207,"stem":208,"children":209,"page":29},"Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fself-hosted","4.integrate\u002Fadapters\u002Fself-hosted",[210,215,220],{"title":211,"path":212,"stem":213,"icon":214},"File System","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Ffs","4.integrate\u002Fadapters\u002Fself-hosted\u002F01.fs","i-lucide-hard-drive",{"title":216,"path":217,"stem":218,"icon":219},"NuxtHub","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fnuxthub","4.integrate\u002Fadapters\u002Fself-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":221,"path":222,"stem":223,"icon":224},"Memory","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fmemory","4.integrate\u002Fadapters\u002Fself-hosted\u002F03.memory","i-lucide-cpu",{"title":226,"path":227,"stem":228,"children":229,"page":29},"Frameworks","\u002Fintegrate\u002Fframeworks","4.integrate\u002Fframeworks",[230,234,239,244,249,254,259,264,269,274,279,284,289,294,298,303,308],{"title":36,"path":231,"stem":232,"icon":233},"\u002Fintegrate\u002Fframeworks\u002Foverview","4.integrate\u002Fframeworks\u002F00.overview","i-lucide-layout-grid",{"title":235,"path":236,"stem":237,"icon":238},"Nuxt","\u002Fintegrate\u002Fframeworks\u002Fnuxt","4.integrate\u002Fframeworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":240,"path":241,"stem":242,"icon":243},"Next.js","\u002Fintegrate\u002Fframeworks\u002Fnextjs","4.integrate\u002Fframeworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":245,"path":246,"stem":247,"icon":248},"SvelteKit","\u002Fintegrate\u002Fframeworks\u002Fsveltekit","4.integrate\u002Fframeworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":250,"path":251,"stem":252,"icon":253},"Nitro","\u002Fintegrate\u002Fframeworks\u002Fnitro","4.integrate\u002Fframeworks\u002F04.nitro","i-custom-nitro",{"title":255,"path":256,"stem":257,"icon":258},"TanStack Start","\u002Fintegrate\u002Fframeworks\u002Ftanstack-start","4.integrate\u002Fframeworks\u002F05.tanstack-start","i-custom-tanstack",{"title":260,"path":261,"stem":262,"icon":263},"NestJS","\u002Fintegrate\u002Fframeworks\u002Fnestjs","4.integrate\u002Fframeworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":265,"path":266,"stem":267,"icon":268},"Express","\u002Fintegrate\u002Fframeworks\u002Fexpress","4.integrate\u002Fframeworks\u002F07.express","i-simple-icons-express",{"title":270,"path":271,"stem":272,"icon":273},"Hono","\u002Fintegrate\u002Fframeworks\u002Fhono","4.integrate\u002Fframeworks\u002F08.hono","i-simple-icons-hono",{"title":275,"path":276,"stem":277,"icon":278},"Fastify","\u002Fintegrate\u002Fframeworks\u002Ffastify","4.integrate\u002Fframeworks\u002F09.fastify","i-simple-icons-fastify",{"title":280,"path":281,"stem":282,"icon":283},"Elysia","\u002Fintegrate\u002Fframeworks\u002Felysia","4.integrate\u002Fframeworks\u002F10.elysia","i-custom-elysia",{"title":285,"path":286,"stem":287,"icon":288},"React Router","\u002Fintegrate\u002Fframeworks\u002Freact-router","4.integrate\u002Fframeworks\u002F11.react-router","i-custom-reactrouter",{"title":290,"path":291,"stem":292,"icon":293},"Cloudflare Workers","\u002Fintegrate\u002Fframeworks\u002Fcloudflare-workers","4.integrate\u002Fframeworks\u002F12.cloudflare-workers","i-simple-icons-cloudflare",{"title":295,"path":296,"stem":297,"icon":74},"Standalone","\u002Fintegrate\u002Fframeworks\u002Fstandalone","4.integrate\u002Fframeworks\u002F13.standalone",{"title":299,"path":300,"stem":301,"icon":302},"Astro","\u002Fintegrate\u002Fframeworks\u002Fastro","4.integrate\u002Fframeworks\u002F14.astro","i-simple-icons-astro",{"title":304,"path":305,"stem":306,"icon":307},"oRPC","\u002Fintegrate\u002Fframeworks\u002Forpc","4.integrate\u002Fframeworks\u002F15.orpc","i-lucide-network",{"title":309,"path":310,"stem":311,"icon":312},"AWS Lambda","\u002Fintegrate\u002Fframeworks\u002Faws-lambda","4.integrate\u002Fframeworks\u002F16.aws-lambda","i-custom-lambda",{"title":314,"path":315,"stem":316,"children":317,"page":29},"Use Cases","\u002Fuse-cases","5.use-cases",[318,321,326,354,381,413,434,439],{"title":36,"path":319,"stem":320,"icon":102},"\u002Fuse-cases\u002Foverview","5.use-cases\u002F0.overview",{"title":322,"path":323,"stem":324,"icon":325},"Client Logging","\u002Fuse-cases\u002Fclient-logging","5.use-cases\u002F1.client-logging","i-lucide-monitor",{"title":327,"icon":328,"path":329,"stem":330,"children":331,"page":29},"AI SDK","i-simple-icons-vercel","\u002Fuse-cases\u002Fai-sdk","5.use-cases\u002F2.ai-sdk",[332,335,340,345,350],{"title":36,"path":333,"stem":334,"icon":39},"\u002Fuse-cases\u002Fai-sdk\u002Foverview","5.use-cases\u002F2.ai-sdk\u002F01.overview",{"title":336,"path":337,"stem":338,"icon":339},"Usage","\u002Fuse-cases\u002Fai-sdk\u002Fusage","5.use-cases\u002F2.ai-sdk\u002F02.usage","i-lucide-code",{"title":341,"path":342,"stem":343,"icon":344},"Options","\u002Fuse-cases\u002Fai-sdk\u002Foptions","5.use-cases\u002F2.ai-sdk\u002F03.options","i-lucide-sliders",{"title":346,"path":347,"stem":348,"icon":349},"Metadata","\u002Fuse-cases\u002Fai-sdk\u002Fmetadata","5.use-cases\u002F2.ai-sdk\u002F04.metadata","i-lucide-database",{"title":351,"path":352,"stem":353,"icon":132},"Telemetry","\u002Fuse-cases\u002Fai-sdk\u002Ftelemetry","5.use-cases\u002F2.ai-sdk\u002F05.telemetry",{"title":355,"icon":356,"path":357,"stem":358,"children":359,"page":29},"Better Auth","i-simple-icons-betterauth","\u002Fuse-cases\u002Fbetter-auth","5.use-cases\u002F3.better-auth",[360,363,368,373,377],{"title":36,"path":361,"stem":362,"icon":39},"\u002Fuse-cases\u002Fbetter-auth\u002Foverview","5.use-cases\u002F3.better-auth\u002F01.overview",{"title":364,"path":365,"stem":366,"icon":367},"Identify User","\u002Fuse-cases\u002Fbetter-auth\u002Fidentify-user","5.use-cases\u002F3.better-auth\u002F02.identify-user","i-lucide-user-check",{"title":369,"path":370,"stem":371,"icon":372},"Middleware","\u002Fuse-cases\u002Fbetter-auth\u002Fmiddleware","5.use-cases\u002F3.better-auth\u002F03.middleware","i-lucide-shield",{"title":374,"path":375,"stem":376,"icon":325},"Client Sync","\u002Fuse-cases\u002Fbetter-auth\u002Fclient-sync","5.use-cases\u002F3.better-auth\u002F04.client-sync",{"title":378,"path":379,"stem":380,"icon":107},"Performance","\u002Fuse-cases\u002Fbetter-auth\u002Fperformance","5.use-cases\u002F3.better-auth\u002F05.performance",{"title":382,"icon":383,"path":384,"stem":385,"children":386,"page":29},"Audit Logs","i-lucide-shield-check","\u002Fuse-cases\u002Faudit","5.use-cases\u002F4.audit",[387,390,395,400,405,409],{"title":36,"path":388,"stem":389,"icon":39},"\u002Fuse-cases\u002Faudit\u002Foverview","5.use-cases\u002F4.audit\u002F01.overview",{"title":391,"path":392,"stem":393,"icon":394},"Schema","\u002Fuse-cases\u002Faudit\u002Fschema","5.use-cases\u002F4.audit\u002F02.schema","i-lucide-file-text",{"title":396,"path":397,"stem":398,"icon":399},"Recording","\u002Fuse-cases\u002Faudit\u002Frecording","5.use-cases\u002F4.audit\u002F03.recording","i-lucide-pen-line",{"title":401,"path":402,"stem":403,"icon":404},"Drains","\u002Fuse-cases\u002Faudit\u002Fpipeline","5.use-cases\u002F4.audit\u002F04.pipeline","i-lucide-link",{"title":406,"path":407,"stem":408,"icon":383},"Compliance","\u002Fuse-cases\u002Faudit\u002Fcompliance","5.use-cases\u002F4.audit\u002F05.compliance",{"title":410,"path":411,"stem":412,"icon":79},"Recipes","\u002Fuse-cases\u002Faudit\u002Frecipes","5.use-cases\u002F4.audit\u002F06.recipes",{"title":351,"icon":107,"path":414,"stem":415,"children":416,"page":29},"\u002Fuse-cases\u002Ftelemetry","5.use-cases\u002F4.telemetry",[417,420,425,430],{"title":36,"path":418,"stem":419,"icon":39},"\u002Fuse-cases\u002Ftelemetry\u002Foverview","5.use-cases\u002F4.telemetry\u002F01.overview",{"title":421,"path":422,"stem":423,"icon":424},"Setup","\u002Fuse-cases\u002Ftelemetry\u002Fsetup","5.use-cases\u002F4.telemetry\u002F02.setup","i-lucide-wrench",{"title":426,"path":427,"stem":428,"icon":429},"Ingest","\u002Fuse-cases\u002Ftelemetry\u002Fingest","5.use-cases\u002F4.telemetry\u002F03.ingest","i-lucide-server",{"title":431,"path":432,"stem":433,"icon":79},"Reference","\u002Fuse-cases\u002Ftelemetry\u002Freference","5.use-cases\u002F4.telemetry\u002F04.reference",{"title":435,"path":436,"stem":437,"icon":438},"Enrichers","\u002Fuse-cases\u002Fenrichers","5.use-cases\u002F5.enrichers","i-lucide-sparkles",{"title":440,"path":441,"stem":442,"icon":443},"eve","\u002Fuse-cases\u002Feve","5.use-cases\u002F5.eve","i-custom-eve",{"title":445,"path":446,"stem":447,"children":448,"page":29},"Extend","\u002Fextend","6.extend",[449,453,458,463,467,472,476,480,484,488,493,498],{"title":36,"path":450,"stem":451,"icon":452},"\u002Fextend\u002Foverview","6.extend\u002F0.overview","i-lucide-blocks",{"title":454,"path":455,"stem":456,"icon":457},"Stream","\u002Fextend\u002Fstream","6.extend\u002F1.stream","i-lucide-radio-tower",{"title":459,"path":460,"stem":461,"icon":462},"Custom framework","\u002Fextend\u002Fcustom-framework","6.extend\u002F10.custom-framework","i-lucide-puzzle",{"title":464,"path":465,"stem":466,"icon":457},"Diagnostics channel","\u002Fextend\u002Fdiagnostics-channel","6.extend\u002F11.diagnostics-channel",{"title":468,"path":469,"stem":470,"icon":471},"FS reader","\u002Fextend\u002Ffs-reader","6.extend\u002F2.fs-reader","i-lucide-folder-search",{"title":410,"path":473,"stem":474,"icon":475},"\u002Fextend\u002Fconsumer-recipes","6.extend\u002F3.consumer-recipes","i-lucide-chef-hat",{"title":477,"path":478,"stem":479,"icon":452},"Plugins","\u002Fextend\u002Fplugins","6.extend\u002F4.plugins",{"title":481,"path":482,"stem":483,"icon":438},"Custom enrichers","\u002Fextend\u002Fcustom-enrichers","6.extend\u002F5.custom-enrichers",{"title":485,"path":486,"stem":487,"icon":64},"Tail sampling","\u002Fextend\u002Ftail-sampling","6.extend\u002F6.tail-sampling",{"title":489,"path":490,"stem":491,"icon":492},"Identity headers","\u002Fextend\u002Fidentity-headers","6.extend\u002F7.identity-headers","i-lucide-fingerprint",{"title":494,"path":495,"stem":496,"icon":497},"Custom drains","\u002Fextend\u002Fcustom-drains","6.extend\u002F8.custom-drains","i-lucide-share-2",{"title":499,"path":500,"stem":501,"icon":502},"Drain pipeline","\u002Fextend\u002Fdrain-pipeline","6.extend\u002F9.drain-pipeline","i-lucide-workflow",{"title":431,"path":504,"stem":505,"children":506,"page":29},"\u002Freference","7.reference",[507,511,516,519,524,528,533,537],{"title":36,"path":508,"stem":509,"icon":510},"\u002Freference\u002Foverview","7.reference\u002F0.overview","i-lucide-book-marked",{"title":512,"path":513,"stem":514,"icon":515},"Configuration","\u002Freference\u002Fconfiguration","7.reference\u002F1.configuration","i-lucide-settings",{"title":378,"path":517,"stem":518,"icon":107},"\u002Freference\u002Fperformance","7.reference\u002F2.performance",{"title":520,"path":521,"stem":522,"icon":523},"Vite Plugin","\u002Freference\u002Fvite-plugin","7.reference\u002F3.vite-plugin","i-custom-vite",{"title":525,"path":526,"stem":527,"icon":383},"Best Practices","\u002Freference\u002Fbest-practices","7.reference\u002F4.best-practices",{"title":529,"path":530,"stem":531,"icon":532},"vs Other Loggers","\u002Freference\u002Fvs-other-loggers","7.reference\u002F5.vs-other-loggers","i-lucide-scale",{"title":534,"path":535,"stem":536,"icon":438},"Agent Skills","\u002Freference\u002Fagent-skills","7.reference\u002F6.agent-skills",{"title":538,"path":539,"stem":540,"icon":541},"Cost","\u002Freference\u002Fcost","7.reference\u002F7.cost","i-lucide-receipt",{"title":543,"path":544,"stem":545,"children":546,"page":29},"Compare","\u002Fcompare","8.compare",[547,551,555,559,563],{"title":548,"path":549,"stem":550,"icon":532},"evlog vs Pino","\u002Fcompare\u002Fpino","8.compare\u002F1.pino",{"title":552,"path":553,"stem":554,"icon":199},"evlog vs OpenTelemetry","\u002Fcompare\u002Fopentelemetry","8.compare\u002F2.opentelemetry",{"title":556,"path":557,"stem":558,"icon":532},"evlog vs LogTape","\u002Fcompare\u002Flogtape","8.compare\u002F3.logtape",{"title":560,"path":561,"stem":562,"icon":532},"evlog vs Winston: formats and request events","\u002Fcompare\u002Fwinston","8.compare\u002F4.winston",{"title":564,"path":565,"stem":566,"icon":532},"evlog vs Consola: reporters and request context","\u002Fcompare\u002Fconsola","8.compare\u002F5.consola",{"id":568,"title":569,"body":570,"description":5998,"extension":5999,"links":6000,"meta":6001,"navigation":29,"path":6002,"seo":6003,"stem":6004,"__hash__":6005},"docs\u002F0.landing.md","evlog — Digging through logs is not observability. It's hope.",{"type":571,"value":572,"toc":5996},"minimark",[573,591,594,5855,5986,5992],[574,575,576,588],"landing-hero",{},[577,578,580,581,584,585,587],"template",{"v-slot:title":579},"","Digging through logs ",[582,583],"br",{}," is not observability. ",[582,586],{}," It's hope",[577,589,590],{"v-slot:description":579},"A modern TypeScript logger built for everything you ship. Simple logs, wide events, and structured errors: one API, every context.",[592,593],"landing-logos",{},[595,596,597],"landing-features",{},[577,598,599,615,628,648,661,674,686,701,717,732],{"v-slot:body":579},[600,601,603,606,612],"features-feature-simple-api",{"link":26,"link-label":602},"Quick start guide",[577,604,605],{"v-slot:headline":579},"Simple API",[577,607,608,609,611],{"v-slot:title":579},"Set context. ",[582,610],{}," Get answers",[577,613,614],{"v-slot:description":579},"Accumulate context with log.set, throw structured errors with why and fix, group recurring errors in typed catalogs. One wide event captures everything, whether the request succeeds or fails.",[616,617,619,622,625],"features-feature-agent-ready",{"link":535,"link-label":618},"Agent skills setup",[577,620,621],{"v-slot:headline":579},"Agent Ready",[577,623,624],{"v-slot:title":579},"Built for agents",[577,626,627],{"v-slot:description":579},"Structured fields, machine-readable context, and actionable metadata that give AI agents everything they need to diagnose and resolve issues on their own. Enable the file system drain to write NDJSON logs locally and let agents read them directly.",[629,630,632,634,640],"features-feature-cli-map",{"link":95,"link-label":631},"evlog map guide",[577,633,129],{"v-slot:headline":579},[577,635,636,637,639],{"v-slot:title":579},"Find logging gaps ",[582,638],{}," in your source",[577,641,642,643,647],{"v-slot:description":579},"Run ",[644,645,646],"code",{},"evlog map"," to find missing evlog patterns in supported Nuxt, Nitro, Next.js App Router, TanStack Start, and Hono entry points. The score summarizes static checks and suggests fixes. It does not run your handlers or verify the logs they produce.",[649,650,652,655,658],"features-feature-adapters",{"link":148,"link-label":651},"Explore adapters",[577,653,654],{"v-slot:headline":579},"Drain Pipeline",[577,656,657],{"v-slot:title":579},"Send everywhere",[577,659,660],{"v-slot:description":579},"Batched writes, automatic retries with backoff, and fan-out to multiple destinations. Your logs flow through a pipeline that never blocks your response.",[662,663,665,668,671],"features-feature-client-drain",{"link":323,"link-label":664},"Client logging guide",[577,666,667],{"v-slot:headline":579},"Client Logs",[577,669,670],{"v-slot:title":579},"See the full picture",[577,672,673],{"v-slot:description":579},"Capture browser events and drain them to your server. Automatic batching, retries, and page-aware flushing with the same pipeline from client to server.",[675,676,678,680,683],"features-feature-sampling",{"link":62,"link-label":677},"Sampling guide",[577,679,61],{"v-slot:headline":579},[577,681,682],{"v-slot:title":579},"Keep what matters",[577,684,685],{"v-slot:description":579},"Two-tier filtering: head sampling drops noise by level, tail sampling rescues critical events. Never miss errors, slow requests, or critical paths.",[687,688,690,692,698],"features-feature-audit",{"link":388,"link-label":689},"Audit logs guide",[577,691,382],{"v-slot:headline":579},[577,693,694,695,697],{"v-slot:title":579},"Compliance-ready ",[582,696],{}," by composition",[577,699,700],{"v-slot:description":579},"First-class who-did-what trails as a thin layer on top of wide events. One enricher, one drain wrapper, one helper. Tamper-evident hash chains, denied actions, redact-aware diffs, idempotency keys for safe retries, and typed action catalogs for refactor-safe alerting, all from the main entrypoint, no parallel pipeline.",[702,703,705,708,714],"features-feature-ai-sdk",{"link":333,"link-label":704},"AI SDK integration",[577,706,707],{"v-slot:headline":579},"AI Observability",[577,709,710,711,713],{"v-slot:title":579},"Make AI calls ",[582,712],{}," observable",[577,715,716],{"v-slot:description":579},"Your AI endpoints are black boxes. You don't know how many tokens each request burns, which tools the model called, or how fast the stream was. Wrap your model with one line and every call is captured into the wide event. Cost estimation, tool execution timing, streaming performance, cache hits, reasoning tokens, and multi-step agent breakdowns.",[718,719,721,723,729],"features-feature-performance",{"link":517,"link-label":720},"Benchmark results",[577,722,378],{"v-slot:headline":579},[577,724,725,726,728],{"v-slot:title":579},"Add logging, ",[582,727],{}," not overhead",[577,730,731],{"v-slot:description":579},"Zero runtime dependencies in the core package. Accumulate context and emit one event per operation. Inspect the benchmark workloads and measure your payload, output, and drain configuration before estimating production cost.",[733,734,736,738,741,748,1180,1581,2008,2389,2909,3310,3466,3817,4189,4527,4837,5288,5546],"features-feature-frameworks",{"link":231,"link-label":735},"Framework integrations",[577,737,226],{"v-slot:headline":579},[577,739,740],{"v-slot:title":579},"Your stack. Covered",[577,742,743,744,747],{"v-slot:description":579},"Integrations for Nuxt, Next.js, SvelteKit, Hono, Express, Fastify, and other documented stacks. Each guide covers its setup and request-logger access. For Vite projects, add ",[644,745,746],{},"evlog\u002Fvite"," for auto-initialization, debug stripping, and source locations.",[577,749,750],{"v-slot:nuxt":579},[751,752,757],"pre",{"className":753,"code":754,"filename":755,"language":756,"meta":579,"style":579},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const { cartId } = await readBody(event)\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return { orderId: charge.id }\n})\n","server\u002Fapi\u002Fcheckout.post.ts","ts",[644,758,759,800,823,851,858,886,947,952,983,1020,1025,1049,1062,1077,1097,1114,1131,1139,1145,1150,1172],{"__ignoreMap":579},[760,761,764,768,771,775,779,783,787,791,794,797],"span",{"class":762,"line":763},"line",1,[760,765,767],{"class":766},"s7zQu","export",[760,769,770],{"class":766}," default",[760,772,774],{"class":773},"s2Zo4"," defineEventHandler",[760,776,778],{"class":777},"sTEyZ","(",[760,780,782],{"class":781},"spNyl","async",[760,784,786],{"class":785},"sMK4o"," (",[760,788,790],{"class":789},"sHdIc","event",[760,792,793],{"class":785},")",[760,795,796],{"class":781}," =>",[760,798,799],{"class":785}," {\n",[760,801,803,806,809,812,815,818,820],{"class":762,"line":802},2,[760,804,805],{"class":781},"  const",[760,807,808],{"class":777}," log",[760,810,811],{"class":785}," =",[760,813,814],{"class":773}," useLogger",[760,816,778],{"class":817},"swJcz",[760,819,790],{"class":777},[760,821,822],{"class":817},")\n",[760,824,826,828,831,834,837,839,842,845,847,849],{"class":762,"line":825},3,[760,827,805],{"class":781},[760,829,830],{"class":785}," {",[760,832,833],{"class":777}," cartId",[760,835,836],{"class":785}," }",[760,838,811],{"class":785},[760,840,841],{"class":766}," await",[760,843,844],{"class":773}," readBody",[760,846,778],{"class":817},[760,848,790],{"class":777},[760,850,822],{"class":817},[760,852,854],{"class":762,"line":853},4,[760,855,857],{"emptyLinePlaceholder":856},true,"\n",[760,859,861,863,866,868,870,873,876,879,881,884],{"class":762,"line":860},5,[760,862,805],{"class":781},[760,864,865],{"class":777}," cart",[760,867,811],{"class":785},[760,869,841],{"class":766},[760,871,872],{"class":777}," db",[760,874,875],{"class":785},".",[760,877,878],{"class":773},"findCart",[760,880,778],{"class":817},[760,882,883],{"class":777},"cartId",[760,885,822],{"class":817},[760,887,889,892,894,897,899,902,904,907,909,912,914,916,918,921,923,926,929,932,934,936,938,941,943,945],{"class":762,"line":888},6,[760,890,891],{"class":777},"  log",[760,893,875],{"class":785},[760,895,896],{"class":773},"set",[760,898,778],{"class":817},[760,900,901],{"class":785},"{",[760,903,865],{"class":817},[760,905,906],{"class":785},":",[760,908,830],{"class":785},[760,910,911],{"class":817}," items",[760,913,906],{"class":785},[760,915,865],{"class":777},[760,917,875],{"class":785},[760,919,920],{"class":777},"items",[760,922,875],{"class":785},[760,924,925],{"class":777},"length",[760,927,928],{"class":785},",",[760,930,931],{"class":817}," total",[760,933,906],{"class":785},[760,935,865],{"class":777},[760,937,875],{"class":785},[760,939,940],{"class":777},"total",[760,942,836],{"class":785},[760,944,836],{"class":785},[760,946,822],{"class":817},[760,948,950],{"class":762,"line":949},7,[760,951,857],{"emptyLinePlaceholder":856},[760,953,955,957,960,962,964,967,969,972,974,977,979,981],{"class":762,"line":954},8,[760,956,805],{"class":781},[760,958,959],{"class":777}," charge",[760,961,811],{"class":785},[760,963,841],{"class":766},[760,965,966],{"class":777}," stripe",[760,968,875],{"class":785},[760,970,971],{"class":773},"charge",[760,973,778],{"class":817},[760,975,976],{"class":777},"cart",[760,978,875],{"class":785},[760,980,940],{"class":777},[760,982,822],{"class":817},[760,984,986,988,990,992,994,996,998,1000,1002,1005,1007,1009,1011,1014,1016,1018],{"class":762,"line":985},9,[760,987,891],{"class":777},[760,989,875],{"class":785},[760,991,896],{"class":773},[760,993,778],{"class":817},[760,995,901],{"class":785},[760,997,966],{"class":817},[760,999,906],{"class":785},[760,1001,830],{"class":785},[760,1003,1004],{"class":817}," chargeId",[760,1006,906],{"class":785},[760,1008,959],{"class":777},[760,1010,875],{"class":785},[760,1012,1013],{"class":777},"id",[760,1015,836],{"class":785},[760,1017,836],{"class":785},[760,1019,822],{"class":817},[760,1021,1023],{"class":762,"line":1022},10,[760,1024,857],{"emptyLinePlaceholder":856},[760,1026,1028,1031,1033,1036,1038,1040,1043,1046],{"class":762,"line":1027},11,[760,1029,1030],{"class":766},"  if",[760,1032,786],{"class":817},[760,1034,1035],{"class":785},"!",[760,1037,971],{"class":777},[760,1039,875],{"class":785},[760,1041,1042],{"class":777},"success",[760,1044,1045],{"class":817},") ",[760,1047,1048],{"class":785},"{\n",[760,1050,1052,1055,1058,1060],{"class":762,"line":1051},12,[760,1053,1054],{"class":766},"    throw",[760,1056,1057],{"class":773}," createError",[760,1059,778],{"class":817},[760,1061,1048],{"class":785},[760,1063,1065,1068,1070,1074],{"class":762,"line":1064},13,[760,1066,1067],{"class":817},"      status",[760,1069,906],{"class":785},[760,1071,1073],{"class":1072},"sbssI"," 402",[760,1075,1076],{"class":785},",\n",[760,1078,1080,1083,1085,1088,1092,1095],{"class":762,"line":1079},14,[760,1081,1082],{"class":817},"      message",[760,1084,906],{"class":785},[760,1086,1087],{"class":785}," '",[760,1089,1091],{"class":1090},"sfazB","Payment failed",[760,1093,1094],{"class":785},"'",[760,1096,1076],{"class":785},[760,1098,1100,1103,1105,1107,1109,1112],{"class":762,"line":1099},15,[760,1101,1102],{"class":817},"      why",[760,1104,906],{"class":785},[760,1106,959],{"class":777},[760,1108,875],{"class":785},[760,1110,1111],{"class":777},"decline_reason",[760,1113,1076],{"class":785},[760,1115,1117,1120,1122,1124,1127,1129],{"class":762,"line":1116},16,[760,1118,1119],{"class":817},"      fix",[760,1121,906],{"class":785},[760,1123,1087],{"class":785},[760,1125,1126],{"class":1090},"Try a different payment method",[760,1128,1094],{"class":785},[760,1130,1076],{"class":785},[760,1132,1134,1137],{"class":762,"line":1133},17,[760,1135,1136],{"class":785},"    }",[760,1138,822],{"class":817},[760,1140,1142],{"class":762,"line":1141},18,[760,1143,1144],{"class":785},"  }\n",[760,1146,1148],{"class":762,"line":1147},19,[760,1149,857],{"emptyLinePlaceholder":856},[760,1151,1153,1156,1158,1161,1163,1165,1167,1169],{"class":762,"line":1152},20,[760,1154,1155],{"class":766},"  return",[760,1157,830],{"class":785},[760,1159,1160],{"class":817}," orderId",[760,1162,906],{"class":785},[760,1164,959],{"class":777},[760,1166,875],{"class":785},[760,1168,1013],{"class":777},[760,1170,1171],{"class":785}," }\n",[760,1173,1175,1178],{"class":762,"line":1174},21,[760,1176,1177],{"class":785},"}",[760,1179,822],{"class":777},[577,1181,1182],{"v-slot:nextjs":579},[751,1183,1186],{"className":753,"code":1184,"filename":1185,"language":756,"meta":579,"style":579},"import { withEvlog, useLogger } from '@\u002Flib\u002Fevlog'\nimport { createError } from 'evlog'\n\nexport const POST = withEvlog(async (req) => {\n  const log = useLogger()\n  const { cartId } = await req.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return Response.json({ orderId: charge.id })\n})\n","app\u002Fapi\u002Fcheckout\u002Froute.ts",[644,1187,1188,1215,1234,1238,1268,1281,1305,1309,1331,1381,1385,1411,1445,1449,1467,1477,1487,1501,1515,1529,1535,1539,1544,1574],{"__ignoreMap":579},[760,1189,1190,1193,1195,1198,1200,1202,1204,1207,1209,1212],{"class":762,"line":763},[760,1191,1192],{"class":766},"import",[760,1194,830],{"class":785},[760,1196,1197],{"class":777}," withEvlog",[760,1199,928],{"class":785},[760,1201,814],{"class":777},[760,1203,836],{"class":785},[760,1205,1206],{"class":766}," from",[760,1208,1087],{"class":785},[760,1210,1211],{"class":1090},"@\u002Flib\u002Fevlog",[760,1213,1214],{"class":785},"'\n",[760,1216,1217,1219,1221,1223,1225,1227,1229,1232],{"class":762,"line":802},[760,1218,1192],{"class":766},[760,1220,830],{"class":785},[760,1222,1057],{"class":777},[760,1224,836],{"class":785},[760,1226,1206],{"class":766},[760,1228,1087],{"class":785},[760,1230,1231],{"class":1090},"evlog",[760,1233,1214],{"class":785},[760,1235,1236],{"class":762,"line":825},[760,1237,857],{"emptyLinePlaceholder":856},[760,1239,1240,1242,1245,1248,1251,1253,1255,1257,1259,1262,1264,1266],{"class":762,"line":853},[760,1241,767],{"class":766},[760,1243,1244],{"class":781}," const",[760,1246,1247],{"class":777}," POST ",[760,1249,1250],{"class":785},"=",[760,1252,1197],{"class":773},[760,1254,778],{"class":777},[760,1256,782],{"class":781},[760,1258,786],{"class":785},[760,1260,1261],{"class":789},"req",[760,1263,793],{"class":785},[760,1265,796],{"class":781},[760,1267,799],{"class":785},[760,1269,1270,1272,1274,1276,1278],{"class":762,"line":860},[760,1271,805],{"class":781},[760,1273,808],{"class":777},[760,1275,811],{"class":785},[760,1277,814],{"class":773},[760,1279,1280],{"class":817},"()\n",[760,1282,1283,1285,1287,1289,1291,1293,1295,1298,1300,1303],{"class":762,"line":888},[760,1284,805],{"class":781},[760,1286,830],{"class":785},[760,1288,833],{"class":777},[760,1290,836],{"class":785},[760,1292,811],{"class":785},[760,1294,841],{"class":766},[760,1296,1297],{"class":777}," req",[760,1299,875],{"class":785},[760,1301,1302],{"class":773},"json",[760,1304,1280],{"class":817},[760,1306,1307],{"class":762,"line":949},[760,1308,857],{"emptyLinePlaceholder":856},[760,1310,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329],{"class":762,"line":954},[760,1312,805],{"class":781},[760,1314,865],{"class":777},[760,1316,811],{"class":785},[760,1318,841],{"class":766},[760,1320,872],{"class":777},[760,1322,875],{"class":785},[760,1324,878],{"class":773},[760,1326,778],{"class":817},[760,1328,883],{"class":777},[760,1330,822],{"class":817},[760,1332,1333,1335,1337,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,1367,1369,1371,1373,1375,1377,1379],{"class":762,"line":985},[760,1334,891],{"class":777},[760,1336,875],{"class":785},[760,1338,896],{"class":773},[760,1340,778],{"class":817},[760,1342,901],{"class":785},[760,1344,865],{"class":817},[760,1346,906],{"class":785},[760,1348,830],{"class":785},[760,1350,911],{"class":817},[760,1352,906],{"class":785},[760,1354,865],{"class":777},[760,1356,875],{"class":785},[760,1358,920],{"class":777},[760,1360,875],{"class":785},[760,1362,925],{"class":777},[760,1364,928],{"class":785},[760,1366,931],{"class":817},[760,1368,906],{"class":785},[760,1370,865],{"class":777},[760,1372,875],{"class":785},[760,1374,940],{"class":777},[760,1376,836],{"class":785},[760,1378,836],{"class":785},[760,1380,822],{"class":817},[760,1382,1383],{"class":762,"line":1022},[760,1384,857],{"emptyLinePlaceholder":856},[760,1386,1387,1389,1391,1393,1395,1397,1399,1401,1403,1405,1407,1409],{"class":762,"line":1027},[760,1388,805],{"class":781},[760,1390,959],{"class":777},[760,1392,811],{"class":785},[760,1394,841],{"class":766},[760,1396,966],{"class":777},[760,1398,875],{"class":785},[760,1400,971],{"class":773},[760,1402,778],{"class":817},[760,1404,976],{"class":777},[760,1406,875],{"class":785},[760,1408,940],{"class":777},[760,1410,822],{"class":817},[760,1412,1413,1415,1417,1419,1421,1423,1425,1427,1429,1431,1433,1435,1437,1439,1441,1443],{"class":762,"line":1051},[760,1414,891],{"class":777},[760,1416,875],{"class":785},[760,1418,896],{"class":773},[760,1420,778],{"class":817},[760,1422,901],{"class":785},[760,1424,966],{"class":817},[760,1426,906],{"class":785},[760,1428,830],{"class":785},[760,1430,1004],{"class":817},[760,1432,906],{"class":785},[760,1434,959],{"class":777},[760,1436,875],{"class":785},[760,1438,1013],{"class":777},[760,1440,836],{"class":785},[760,1442,836],{"class":785},[760,1444,822],{"class":817},[760,1446,1447],{"class":762,"line":1064},[760,1448,857],{"emptyLinePlaceholder":856},[760,1450,1451,1453,1455,1457,1459,1461,1463,1465],{"class":762,"line":1079},[760,1452,1030],{"class":766},[760,1454,786],{"class":817},[760,1456,1035],{"class":785},[760,1458,971],{"class":777},[760,1460,875],{"class":785},[760,1462,1042],{"class":777},[760,1464,1045],{"class":817},[760,1466,1048],{"class":785},[760,1468,1469,1471,1473,1475],{"class":762,"line":1099},[760,1470,1054],{"class":766},[760,1472,1057],{"class":773},[760,1474,778],{"class":817},[760,1476,1048],{"class":785},[760,1478,1479,1481,1483,1485],{"class":762,"line":1116},[760,1480,1067],{"class":817},[760,1482,906],{"class":785},[760,1484,1073],{"class":1072},[760,1486,1076],{"class":785},[760,1488,1489,1491,1493,1495,1497,1499],{"class":762,"line":1133},[760,1490,1082],{"class":817},[760,1492,906],{"class":785},[760,1494,1087],{"class":785},[760,1496,1091],{"class":1090},[760,1498,1094],{"class":785},[760,1500,1076],{"class":785},[760,1502,1503,1505,1507,1509,1511,1513],{"class":762,"line":1141},[760,1504,1102],{"class":817},[760,1506,906],{"class":785},[760,1508,959],{"class":777},[760,1510,875],{"class":785},[760,1512,1111],{"class":777},[760,1514,1076],{"class":785},[760,1516,1517,1519,1521,1523,1525,1527],{"class":762,"line":1147},[760,1518,1119],{"class":817},[760,1520,906],{"class":785},[760,1522,1087],{"class":785},[760,1524,1126],{"class":1090},[760,1526,1094],{"class":785},[760,1528,1076],{"class":785},[760,1530,1531,1533],{"class":762,"line":1152},[760,1532,1136],{"class":785},[760,1534,822],{"class":817},[760,1536,1537],{"class":762,"line":1174},[760,1538,1144],{"class":785},[760,1540,1542],{"class":762,"line":1541},22,[760,1543,857],{"emptyLinePlaceholder":856},[760,1545,1547,1549,1552,1554,1556,1558,1560,1562,1564,1566,1568,1570,1572],{"class":762,"line":1546},23,[760,1548,1155],{"class":766},[760,1550,1551],{"class":777}," Response",[760,1553,875],{"class":785},[760,1555,1302],{"class":773},[760,1557,778],{"class":817},[760,1559,901],{"class":785},[760,1561,1160],{"class":817},[760,1563,906],{"class":785},[760,1565,959],{"class":777},[760,1567,875],{"class":785},[760,1569,1013],{"class":777},[760,1571,836],{"class":785},[760,1573,822],{"class":817},[760,1575,1577,1579],{"class":762,"line":1576},24,[760,1578,1177],{"class":785},[760,1580,822],{"class":777},[577,1582,1583],{"v-slot:sveltekit":579},[751,1584,1587],{"className":753,"code":1585,"filename":1586,"language":756,"meta":579,"style":579},"import { json } from '@sveltejs\u002Fkit'\nimport { createError } from 'evlog'\nimport { useLogger } from 'evlog\u002Fsveltekit'\nimport type { RequestHandler } from '.\u002F$types'\n\nexport const POST: RequestHandler = async ({ request }) => {\n  const log = useLogger()\n  const { cartId } = await request.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return json({ orderId: charge.id })\n}\n","src\u002Froutes\u002Fapi\u002Fcheckout\u002F+server.ts",[644,1588,1589,1609,1627,1646,1669,1673,1705,1717,1739,1743,1765,1815,1819,1845,1879,1883,1901,1911,1921,1935,1949,1963,1969,1973,1977,2002],{"__ignoreMap":579},[760,1590,1591,1593,1595,1598,1600,1602,1604,1607],{"class":762,"line":763},[760,1592,1192],{"class":766},[760,1594,830],{"class":785},[760,1596,1597],{"class":777}," json",[760,1599,836],{"class":785},[760,1601,1206],{"class":766},[760,1603,1087],{"class":785},[760,1605,1606],{"class":1090},"@sveltejs\u002Fkit",[760,1608,1214],{"class":785},[760,1610,1611,1613,1615,1617,1619,1621,1623,1625],{"class":762,"line":802},[760,1612,1192],{"class":766},[760,1614,830],{"class":785},[760,1616,1057],{"class":777},[760,1618,836],{"class":785},[760,1620,1206],{"class":766},[760,1622,1087],{"class":785},[760,1624,1231],{"class":1090},[760,1626,1214],{"class":785},[760,1628,1629,1631,1633,1635,1637,1639,1641,1644],{"class":762,"line":825},[760,1630,1192],{"class":766},[760,1632,830],{"class":785},[760,1634,814],{"class":777},[760,1636,836],{"class":785},[760,1638,1206],{"class":766},[760,1640,1087],{"class":785},[760,1642,1643],{"class":1090},"evlog\u002Fsveltekit",[760,1645,1214],{"class":785},[760,1647,1648,1650,1653,1655,1658,1660,1662,1664,1667],{"class":762,"line":853},[760,1649,1192],{"class":766},[760,1651,1652],{"class":766}," type",[760,1654,830],{"class":785},[760,1656,1657],{"class":777}," RequestHandler",[760,1659,836],{"class":785},[760,1661,1206],{"class":766},[760,1663,1087],{"class":785},[760,1665,1666],{"class":1090},".\u002F$types",[760,1668,1214],{"class":785},[760,1670,1671],{"class":762,"line":860},[760,1672,857],{"emptyLinePlaceholder":856},[760,1674,1675,1677,1679,1682,1684,1687,1689,1692,1695,1698,1701,1703],{"class":762,"line":888},[760,1676,767],{"class":766},[760,1678,1244],{"class":781},[760,1680,1681],{"class":777}," POST",[760,1683,906],{"class":785},[760,1685,1657],{"class":1686},"sBMFI",[760,1688,811],{"class":785},[760,1690,1691],{"class":781}," async",[760,1693,1694],{"class":785}," ({",[760,1696,1697],{"class":789}," request",[760,1699,1700],{"class":785}," })",[760,1702,796],{"class":781},[760,1704,799],{"class":785},[760,1706,1707,1709,1711,1713,1715],{"class":762,"line":949},[760,1708,805],{"class":781},[760,1710,808],{"class":777},[760,1712,811],{"class":785},[760,1714,814],{"class":773},[760,1716,1280],{"class":817},[760,1718,1719,1721,1723,1725,1727,1729,1731,1733,1735,1737],{"class":762,"line":954},[760,1720,805],{"class":781},[760,1722,830],{"class":785},[760,1724,833],{"class":777},[760,1726,836],{"class":785},[760,1728,811],{"class":785},[760,1730,841],{"class":766},[760,1732,1697],{"class":777},[760,1734,875],{"class":785},[760,1736,1302],{"class":773},[760,1738,1280],{"class":817},[760,1740,1741],{"class":762,"line":985},[760,1742,857],{"emptyLinePlaceholder":856},[760,1744,1745,1747,1749,1751,1753,1755,1757,1759,1761,1763],{"class":762,"line":1022},[760,1746,805],{"class":781},[760,1748,865],{"class":777},[760,1750,811],{"class":785},[760,1752,841],{"class":766},[760,1754,872],{"class":777},[760,1756,875],{"class":785},[760,1758,878],{"class":773},[760,1760,778],{"class":817},[760,1762,883],{"class":777},[760,1764,822],{"class":817},[760,1766,1767,1769,1771,1773,1775,1777,1779,1781,1783,1785,1787,1789,1791,1793,1795,1797,1799,1801,1803,1805,1807,1809,1811,1813],{"class":762,"line":1027},[760,1768,891],{"class":777},[760,1770,875],{"class":785},[760,1772,896],{"class":773},[760,1774,778],{"class":817},[760,1776,901],{"class":785},[760,1778,865],{"class":817},[760,1780,906],{"class":785},[760,1782,830],{"class":785},[760,1784,911],{"class":817},[760,1786,906],{"class":785},[760,1788,865],{"class":777},[760,1790,875],{"class":785},[760,1792,920],{"class":777},[760,1794,875],{"class":785},[760,1796,925],{"class":777},[760,1798,928],{"class":785},[760,1800,931],{"class":817},[760,1802,906],{"class":785},[760,1804,865],{"class":777},[760,1806,875],{"class":785},[760,1808,940],{"class":777},[760,1810,836],{"class":785},[760,1812,836],{"class":785},[760,1814,822],{"class":817},[760,1816,1817],{"class":762,"line":1051},[760,1818,857],{"emptyLinePlaceholder":856},[760,1820,1821,1823,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843],{"class":762,"line":1064},[760,1822,805],{"class":781},[760,1824,959],{"class":777},[760,1826,811],{"class":785},[760,1828,841],{"class":766},[760,1830,966],{"class":777},[760,1832,875],{"class":785},[760,1834,971],{"class":773},[760,1836,778],{"class":817},[760,1838,976],{"class":777},[760,1840,875],{"class":785},[760,1842,940],{"class":777},[760,1844,822],{"class":817},[760,1846,1847,1849,1851,1853,1855,1857,1859,1861,1863,1865,1867,1869,1871,1873,1875,1877],{"class":762,"line":1079},[760,1848,891],{"class":777},[760,1850,875],{"class":785},[760,1852,896],{"class":773},[760,1854,778],{"class":817},[760,1856,901],{"class":785},[760,1858,966],{"class":817},[760,1860,906],{"class":785},[760,1862,830],{"class":785},[760,1864,1004],{"class":817},[760,1866,906],{"class":785},[760,1868,959],{"class":777},[760,1870,875],{"class":785},[760,1872,1013],{"class":777},[760,1874,836],{"class":785},[760,1876,836],{"class":785},[760,1878,822],{"class":817},[760,1880,1881],{"class":762,"line":1099},[760,1882,857],{"emptyLinePlaceholder":856},[760,1884,1885,1887,1889,1891,1893,1895,1897,1899],{"class":762,"line":1116},[760,1886,1030],{"class":766},[760,1888,786],{"class":817},[760,1890,1035],{"class":785},[760,1892,971],{"class":777},[760,1894,875],{"class":785},[760,1896,1042],{"class":777},[760,1898,1045],{"class":817},[760,1900,1048],{"class":785},[760,1902,1903,1905,1907,1909],{"class":762,"line":1133},[760,1904,1054],{"class":766},[760,1906,1057],{"class":773},[760,1908,778],{"class":817},[760,1910,1048],{"class":785},[760,1912,1913,1915,1917,1919],{"class":762,"line":1141},[760,1914,1067],{"class":817},[760,1916,906],{"class":785},[760,1918,1073],{"class":1072},[760,1920,1076],{"class":785},[760,1922,1923,1925,1927,1929,1931,1933],{"class":762,"line":1147},[760,1924,1082],{"class":817},[760,1926,906],{"class":785},[760,1928,1087],{"class":785},[760,1930,1091],{"class":1090},[760,1932,1094],{"class":785},[760,1934,1076],{"class":785},[760,1936,1937,1939,1941,1943,1945,1947],{"class":762,"line":1152},[760,1938,1102],{"class":817},[760,1940,906],{"class":785},[760,1942,959],{"class":777},[760,1944,875],{"class":785},[760,1946,1111],{"class":777},[760,1948,1076],{"class":785},[760,1950,1951,1953,1955,1957,1959,1961],{"class":762,"line":1174},[760,1952,1119],{"class":817},[760,1954,906],{"class":785},[760,1956,1087],{"class":785},[760,1958,1126],{"class":1090},[760,1960,1094],{"class":785},[760,1962,1076],{"class":785},[760,1964,1965,1967],{"class":762,"line":1541},[760,1966,1136],{"class":785},[760,1968,822],{"class":817},[760,1970,1971],{"class":762,"line":1546},[760,1972,1144],{"class":785},[760,1974,1975],{"class":762,"line":1576},[760,1976,857],{"emptyLinePlaceholder":856},[760,1978,1980,1982,1984,1986,1988,1990,1992,1994,1996,1998,2000],{"class":762,"line":1979},25,[760,1981,1155],{"class":766},[760,1983,1597],{"class":773},[760,1985,778],{"class":817},[760,1987,901],{"class":785},[760,1989,1160],{"class":817},[760,1991,906],{"class":785},[760,1993,959],{"class":777},[760,1995,875],{"class":785},[760,1997,1013],{"class":777},[760,1999,836],{"class":785},[760,2001,822],{"class":817},[760,2003,2005],{"class":762,"line":2004},26,[760,2006,2007],{"class":785},"}\n",[577,2009,2010],{"v-slot:nitro":579},[751,2011,2014],{"className":753,"code":2012,"filename":2013,"language":756,"meta":579,"style":579},"import { defineHandler, readBody } from 'nitro\u002Fh3'\nimport { useLogger, createError } from 'evlog\u002Fnitro\u002Fv3'\n\nexport default defineHandler(async (event) => {\n  const log = useLogger(event)\n  const { cartId } = await readBody(event)\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return { orderId: charge.id }\n})\n","routes\u002Fapi\u002Fcheckout.post.ts",[644,2015,2016,2040,2063,2067,2089,2105,2127,2131,2153,2203,2207,2233,2267,2271,2289,2299,2309,2323,2337,2351,2357,2361,2365,2383],{"__ignoreMap":579},[760,2017,2018,2020,2022,2025,2027,2029,2031,2033,2035,2038],{"class":762,"line":763},[760,2019,1192],{"class":766},[760,2021,830],{"class":785},[760,2023,2024],{"class":777}," defineHandler",[760,2026,928],{"class":785},[760,2028,844],{"class":777},[760,2030,836],{"class":785},[760,2032,1206],{"class":766},[760,2034,1087],{"class":785},[760,2036,2037],{"class":1090},"nitro\u002Fh3",[760,2039,1214],{"class":785},[760,2041,2042,2044,2046,2048,2050,2052,2054,2056,2058,2061],{"class":762,"line":802},[760,2043,1192],{"class":766},[760,2045,830],{"class":785},[760,2047,814],{"class":777},[760,2049,928],{"class":785},[760,2051,1057],{"class":777},[760,2053,836],{"class":785},[760,2055,1206],{"class":766},[760,2057,1087],{"class":785},[760,2059,2060],{"class":1090},"evlog\u002Fnitro\u002Fv3",[760,2062,1214],{"class":785},[760,2064,2065],{"class":762,"line":825},[760,2066,857],{"emptyLinePlaceholder":856},[760,2068,2069,2071,2073,2075,2077,2079,2081,2083,2085,2087],{"class":762,"line":853},[760,2070,767],{"class":766},[760,2072,770],{"class":766},[760,2074,2024],{"class":773},[760,2076,778],{"class":777},[760,2078,782],{"class":781},[760,2080,786],{"class":785},[760,2082,790],{"class":789},[760,2084,793],{"class":785},[760,2086,796],{"class":781},[760,2088,799],{"class":785},[760,2090,2091,2093,2095,2097,2099,2101,2103],{"class":762,"line":860},[760,2092,805],{"class":781},[760,2094,808],{"class":777},[760,2096,811],{"class":785},[760,2098,814],{"class":773},[760,2100,778],{"class":817},[760,2102,790],{"class":777},[760,2104,822],{"class":817},[760,2106,2107,2109,2111,2113,2115,2117,2119,2121,2123,2125],{"class":762,"line":888},[760,2108,805],{"class":781},[760,2110,830],{"class":785},[760,2112,833],{"class":777},[760,2114,836],{"class":785},[760,2116,811],{"class":785},[760,2118,841],{"class":766},[760,2120,844],{"class":773},[760,2122,778],{"class":817},[760,2124,790],{"class":777},[760,2126,822],{"class":817},[760,2128,2129],{"class":762,"line":949},[760,2130,857],{"emptyLinePlaceholder":856},[760,2132,2133,2135,2137,2139,2141,2143,2145,2147,2149,2151],{"class":762,"line":954},[760,2134,805],{"class":781},[760,2136,865],{"class":777},[760,2138,811],{"class":785},[760,2140,841],{"class":766},[760,2142,872],{"class":777},[760,2144,875],{"class":785},[760,2146,878],{"class":773},[760,2148,778],{"class":817},[760,2150,883],{"class":777},[760,2152,822],{"class":817},[760,2154,2155,2157,2159,2161,2163,2165,2167,2169,2171,2173,2175,2177,2179,2181,2183,2185,2187,2189,2191,2193,2195,2197,2199,2201],{"class":762,"line":985},[760,2156,891],{"class":777},[760,2158,875],{"class":785},[760,2160,896],{"class":773},[760,2162,778],{"class":817},[760,2164,901],{"class":785},[760,2166,865],{"class":817},[760,2168,906],{"class":785},[760,2170,830],{"class":785},[760,2172,911],{"class":817},[760,2174,906],{"class":785},[760,2176,865],{"class":777},[760,2178,875],{"class":785},[760,2180,920],{"class":777},[760,2182,875],{"class":785},[760,2184,925],{"class":777},[760,2186,928],{"class":785},[760,2188,931],{"class":817},[760,2190,906],{"class":785},[760,2192,865],{"class":777},[760,2194,875],{"class":785},[760,2196,940],{"class":777},[760,2198,836],{"class":785},[760,2200,836],{"class":785},[760,2202,822],{"class":817},[760,2204,2205],{"class":762,"line":1022},[760,2206,857],{"emptyLinePlaceholder":856},[760,2208,2209,2211,2213,2215,2217,2219,2221,2223,2225,2227,2229,2231],{"class":762,"line":1027},[760,2210,805],{"class":781},[760,2212,959],{"class":777},[760,2214,811],{"class":785},[760,2216,841],{"class":766},[760,2218,966],{"class":777},[760,2220,875],{"class":785},[760,2222,971],{"class":773},[760,2224,778],{"class":817},[760,2226,976],{"class":777},[760,2228,875],{"class":785},[760,2230,940],{"class":777},[760,2232,822],{"class":817},[760,2234,2235,2237,2239,2241,2243,2245,2247,2249,2251,2253,2255,2257,2259,2261,2263,2265],{"class":762,"line":1051},[760,2236,891],{"class":777},[760,2238,875],{"class":785},[760,2240,896],{"class":773},[760,2242,778],{"class":817},[760,2244,901],{"class":785},[760,2246,966],{"class":817},[760,2248,906],{"class":785},[760,2250,830],{"class":785},[760,2252,1004],{"class":817},[760,2254,906],{"class":785},[760,2256,959],{"class":777},[760,2258,875],{"class":785},[760,2260,1013],{"class":777},[760,2262,836],{"class":785},[760,2264,836],{"class":785},[760,2266,822],{"class":817},[760,2268,2269],{"class":762,"line":1064},[760,2270,857],{"emptyLinePlaceholder":856},[760,2272,2273,2275,2277,2279,2281,2283,2285,2287],{"class":762,"line":1079},[760,2274,1030],{"class":766},[760,2276,786],{"class":817},[760,2278,1035],{"class":785},[760,2280,971],{"class":777},[760,2282,875],{"class":785},[760,2284,1042],{"class":777},[760,2286,1045],{"class":817},[760,2288,1048],{"class":785},[760,2290,2291,2293,2295,2297],{"class":762,"line":1099},[760,2292,1054],{"class":766},[760,2294,1057],{"class":773},[760,2296,778],{"class":817},[760,2298,1048],{"class":785},[760,2300,2301,2303,2305,2307],{"class":762,"line":1116},[760,2302,1067],{"class":817},[760,2304,906],{"class":785},[760,2306,1073],{"class":1072},[760,2308,1076],{"class":785},[760,2310,2311,2313,2315,2317,2319,2321],{"class":762,"line":1133},[760,2312,1082],{"class":817},[760,2314,906],{"class":785},[760,2316,1087],{"class":785},[760,2318,1091],{"class":1090},[760,2320,1094],{"class":785},[760,2322,1076],{"class":785},[760,2324,2325,2327,2329,2331,2333,2335],{"class":762,"line":1141},[760,2326,1102],{"class":817},[760,2328,906],{"class":785},[760,2330,959],{"class":777},[760,2332,875],{"class":785},[760,2334,1111],{"class":777},[760,2336,1076],{"class":785},[760,2338,2339,2341,2343,2345,2347,2349],{"class":762,"line":1147},[760,2340,1119],{"class":817},[760,2342,906],{"class":785},[760,2344,1087],{"class":785},[760,2346,1126],{"class":1090},[760,2348,1094],{"class":785},[760,2350,1076],{"class":785},[760,2352,2353,2355],{"class":762,"line":1152},[760,2354,1136],{"class":785},[760,2356,822],{"class":817},[760,2358,2359],{"class":762,"line":1174},[760,2360,1144],{"class":785},[760,2362,2363],{"class":762,"line":1541},[760,2364,857],{"emptyLinePlaceholder":856},[760,2366,2367,2369,2371,2373,2375,2377,2379,2381],{"class":762,"line":1546},[760,2368,1155],{"class":766},[760,2370,830],{"class":785},[760,2372,1160],{"class":817},[760,2374,906],{"class":785},[760,2376,959],{"class":777},[760,2378,875],{"class":785},[760,2380,1013],{"class":777},[760,2382,1171],{"class":785},[760,2384,2385,2387],{"class":762,"line":1576},[760,2386,1177],{"class":785},[760,2388,822],{"class":777},[577,2390,2391],{"v-slot:tanstack-start":579},[751,2392,2395],{"className":753,"code":2393,"filename":2394,"language":756,"meta":579,"style":579},"import { createFileRoute } from '@tanstack\u002Freact-router'\nimport { useRequest } from 'nitro\u002Fcontext'\nimport { createError } from 'evlog'\nimport type { RequestLogger } from 'evlog'\n\nexport const Route = createFileRoute('\u002Fapi\u002Fcheckout')({\n  server: {\n    handlers: {\n      POST: async ({ request }) => {\n        const req = useRequest()\n        const log = req.context.log as RequestLogger\n        const { cartId } = await request.json()\n\n        const cart = await db.findCart(cartId)\n        log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n        const charge = await stripe.charge(cart.total)\n        log.set({ stripe: { chargeId: charge.id } })\n\n        if (!charge.success) {\n          throw createError({\n            status: 402,\n            message: 'Payment failed',\n            why: charge.decline_reason,\n            fix: 'Try a different payment method',\n          })\n        }\n\n        return Response.json({ orderId: charge.id })\n      },\n    },\n  },\n})\n","src\u002Froutes\u002Fapi\u002Fcheckout.ts",[644,2396,2397,2417,2437,2455,2476,2480,2507,2516,2525,2544,2557,2583,2605,2609,2631,2682,2686,2712,2746,2750,2769,2780,2791,2806,2821,2836,2843,2849,2854,2884,2890,2896,2902],{"__ignoreMap":579},[760,2398,2399,2401,2403,2406,2408,2410,2412,2415],{"class":762,"line":763},[760,2400,1192],{"class":766},[760,2402,830],{"class":785},[760,2404,2405],{"class":777}," createFileRoute",[760,2407,836],{"class":785},[760,2409,1206],{"class":766},[760,2411,1087],{"class":785},[760,2413,2414],{"class":1090},"@tanstack\u002Freact-router",[760,2416,1214],{"class":785},[760,2418,2419,2421,2423,2426,2428,2430,2432,2435],{"class":762,"line":802},[760,2420,1192],{"class":766},[760,2422,830],{"class":785},[760,2424,2425],{"class":777}," useRequest",[760,2427,836],{"class":785},[760,2429,1206],{"class":766},[760,2431,1087],{"class":785},[760,2433,2434],{"class":1090},"nitro\u002Fcontext",[760,2436,1214],{"class":785},[760,2438,2439,2441,2443,2445,2447,2449,2451,2453],{"class":762,"line":825},[760,2440,1192],{"class":766},[760,2442,830],{"class":785},[760,2444,1057],{"class":777},[760,2446,836],{"class":785},[760,2448,1206],{"class":766},[760,2450,1087],{"class":785},[760,2452,1231],{"class":1090},[760,2454,1214],{"class":785},[760,2456,2457,2459,2461,2463,2466,2468,2470,2472,2474],{"class":762,"line":853},[760,2458,1192],{"class":766},[760,2460,1652],{"class":766},[760,2462,830],{"class":785},[760,2464,2465],{"class":777}," RequestLogger",[760,2467,836],{"class":785},[760,2469,1206],{"class":766},[760,2471,1087],{"class":785},[760,2473,1231],{"class":1090},[760,2475,1214],{"class":785},[760,2477,2478],{"class":762,"line":860},[760,2479,857],{"emptyLinePlaceholder":856},[760,2481,2482,2484,2486,2489,2491,2493,2495,2497,2500,2502,2505],{"class":762,"line":888},[760,2483,767],{"class":766},[760,2485,1244],{"class":781},[760,2487,2488],{"class":777}," Route ",[760,2490,1250],{"class":785},[760,2492,2405],{"class":773},[760,2494,778],{"class":777},[760,2496,1094],{"class":785},[760,2498,2499],{"class":1090},"\u002Fapi\u002Fcheckout",[760,2501,1094],{"class":785},[760,2503,2504],{"class":777},")(",[760,2506,1048],{"class":785},[760,2508,2509,2512,2514],{"class":762,"line":949},[760,2510,2511],{"class":817},"  server",[760,2513,906],{"class":785},[760,2515,799],{"class":785},[760,2517,2518,2521,2523],{"class":762,"line":954},[760,2519,2520],{"class":817},"    handlers",[760,2522,906],{"class":785},[760,2524,799],{"class":785},[760,2526,2527,2530,2532,2534,2536,2538,2540,2542],{"class":762,"line":985},[760,2528,2529],{"class":773},"      POST",[760,2531,906],{"class":785},[760,2533,1691],{"class":781},[760,2535,1694],{"class":785},[760,2537,1697],{"class":789},[760,2539,1700],{"class":785},[760,2541,796],{"class":781},[760,2543,799],{"class":785},[760,2545,2546,2549,2551,2553,2555],{"class":762,"line":1022},[760,2547,2548],{"class":781},"        const",[760,2550,1297],{"class":777},[760,2552,811],{"class":785},[760,2554,2425],{"class":773},[760,2556,1280],{"class":817},[760,2558,2559,2561,2563,2565,2567,2569,2572,2574,2577,2580],{"class":762,"line":1027},[760,2560,2548],{"class":781},[760,2562,808],{"class":777},[760,2564,811],{"class":785},[760,2566,1297],{"class":777},[760,2568,875],{"class":785},[760,2570,2571],{"class":777},"context",[760,2573,875],{"class":785},[760,2575,2576],{"class":777},"log",[760,2578,2579],{"class":766}," as",[760,2581,2582],{"class":1686}," RequestLogger\n",[760,2584,2585,2587,2589,2591,2593,2595,2597,2599,2601,2603],{"class":762,"line":1051},[760,2586,2548],{"class":781},[760,2588,830],{"class":785},[760,2590,833],{"class":777},[760,2592,836],{"class":785},[760,2594,811],{"class":785},[760,2596,841],{"class":766},[760,2598,1697],{"class":777},[760,2600,875],{"class":785},[760,2602,1302],{"class":773},[760,2604,1280],{"class":817},[760,2606,2607],{"class":762,"line":1064},[760,2608,857],{"emptyLinePlaceholder":856},[760,2610,2611,2613,2615,2617,2619,2621,2623,2625,2627,2629],{"class":762,"line":1079},[760,2612,2548],{"class":781},[760,2614,865],{"class":777},[760,2616,811],{"class":785},[760,2618,841],{"class":766},[760,2620,872],{"class":777},[760,2622,875],{"class":785},[760,2624,878],{"class":773},[760,2626,778],{"class":817},[760,2628,883],{"class":777},[760,2630,822],{"class":817},[760,2632,2633,2636,2638,2640,2642,2644,2646,2648,2650,2652,2654,2656,2658,2660,2662,2664,2666,2668,2670,2672,2674,2676,2678,2680],{"class":762,"line":1099},[760,2634,2635],{"class":777},"        log",[760,2637,875],{"class":785},[760,2639,896],{"class":773},[760,2641,778],{"class":817},[760,2643,901],{"class":785},[760,2645,865],{"class":817},[760,2647,906],{"class":785},[760,2649,830],{"class":785},[760,2651,911],{"class":817},[760,2653,906],{"class":785},[760,2655,865],{"class":777},[760,2657,875],{"class":785},[760,2659,920],{"class":777},[760,2661,875],{"class":785},[760,2663,925],{"class":777},[760,2665,928],{"class":785},[760,2667,931],{"class":817},[760,2669,906],{"class":785},[760,2671,865],{"class":777},[760,2673,875],{"class":785},[760,2675,940],{"class":777},[760,2677,836],{"class":785},[760,2679,836],{"class":785},[760,2681,822],{"class":817},[760,2683,2684],{"class":762,"line":1116},[760,2685,857],{"emptyLinePlaceholder":856},[760,2687,2688,2690,2692,2694,2696,2698,2700,2702,2704,2706,2708,2710],{"class":762,"line":1133},[760,2689,2548],{"class":781},[760,2691,959],{"class":777},[760,2693,811],{"class":785},[760,2695,841],{"class":766},[760,2697,966],{"class":777},[760,2699,875],{"class":785},[760,2701,971],{"class":773},[760,2703,778],{"class":817},[760,2705,976],{"class":777},[760,2707,875],{"class":785},[760,2709,940],{"class":777},[760,2711,822],{"class":817},[760,2713,2714,2716,2718,2720,2722,2724,2726,2728,2730,2732,2734,2736,2738,2740,2742,2744],{"class":762,"line":1141},[760,2715,2635],{"class":777},[760,2717,875],{"class":785},[760,2719,896],{"class":773},[760,2721,778],{"class":817},[760,2723,901],{"class":785},[760,2725,966],{"class":817},[760,2727,906],{"class":785},[760,2729,830],{"class":785},[760,2731,1004],{"class":817},[760,2733,906],{"class":785},[760,2735,959],{"class":777},[760,2737,875],{"class":785},[760,2739,1013],{"class":777},[760,2741,836],{"class":785},[760,2743,836],{"class":785},[760,2745,822],{"class":817},[760,2747,2748],{"class":762,"line":1147},[760,2749,857],{"emptyLinePlaceholder":856},[760,2751,2752,2755,2757,2759,2761,2763,2765,2767],{"class":762,"line":1152},[760,2753,2754],{"class":766},"        if",[760,2756,786],{"class":817},[760,2758,1035],{"class":785},[760,2760,971],{"class":777},[760,2762,875],{"class":785},[760,2764,1042],{"class":777},[760,2766,1045],{"class":817},[760,2768,1048],{"class":785},[760,2770,2771,2774,2776,2778],{"class":762,"line":1174},[760,2772,2773],{"class":766},"          throw",[760,2775,1057],{"class":773},[760,2777,778],{"class":817},[760,2779,1048],{"class":785},[760,2781,2782,2785,2787,2789],{"class":762,"line":1541},[760,2783,2784],{"class":817},"            status",[760,2786,906],{"class":785},[760,2788,1073],{"class":1072},[760,2790,1076],{"class":785},[760,2792,2793,2796,2798,2800,2802,2804],{"class":762,"line":1546},[760,2794,2795],{"class":817},"            message",[760,2797,906],{"class":785},[760,2799,1087],{"class":785},[760,2801,1091],{"class":1090},[760,2803,1094],{"class":785},[760,2805,1076],{"class":785},[760,2807,2808,2811,2813,2815,2817,2819],{"class":762,"line":1576},[760,2809,2810],{"class":817},"            why",[760,2812,906],{"class":785},[760,2814,959],{"class":777},[760,2816,875],{"class":785},[760,2818,1111],{"class":777},[760,2820,1076],{"class":785},[760,2822,2823,2826,2828,2830,2832,2834],{"class":762,"line":1979},[760,2824,2825],{"class":817},"            fix",[760,2827,906],{"class":785},[760,2829,1087],{"class":785},[760,2831,1126],{"class":1090},[760,2833,1094],{"class":785},[760,2835,1076],{"class":785},[760,2837,2838,2841],{"class":762,"line":2004},[760,2839,2840],{"class":785},"          }",[760,2842,822],{"class":817},[760,2844,2846],{"class":762,"line":2845},27,[760,2847,2848],{"class":785},"        }\n",[760,2850,2852],{"class":762,"line":2851},28,[760,2853,857],{"emptyLinePlaceholder":856},[760,2855,2857,2860,2862,2864,2866,2868,2870,2872,2874,2876,2878,2880,2882],{"class":762,"line":2856},29,[760,2858,2859],{"class":766},"        return",[760,2861,1551],{"class":777},[760,2863,875],{"class":785},[760,2865,1302],{"class":773},[760,2867,778],{"class":817},[760,2869,901],{"class":785},[760,2871,1160],{"class":817},[760,2873,906],{"class":785},[760,2875,959],{"class":777},[760,2877,875],{"class":785},[760,2879,1013],{"class":777},[760,2881,836],{"class":785},[760,2883,822],{"class":817},[760,2885,2887],{"class":762,"line":2886},30,[760,2888,2889],{"class":785},"      },\n",[760,2891,2893],{"class":762,"line":2892},31,[760,2894,2895],{"class":785},"    },\n",[760,2897,2899],{"class":762,"line":2898},32,[760,2900,2901],{"class":785},"  },\n",[760,2903,2905,2907],{"class":762,"line":2904},33,[760,2906,1177],{"class":785},[760,2908,822],{"class":777},[577,2910,2911],{"v-slot:react-router":579},[751,2912,2915],{"className":753,"code":2913,"filename":2914,"language":756,"meta":579,"style":579},"import { loggerContext } from 'evlog\u002Freact-router'\nimport { createError } from 'evlog'\n\nexport async function action({ request, context }: Route.ActionArgs) {\n  const log = context.get(loggerContext)\n  const { cartId } = await request.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return Response.json({ orderId: charge.id })\n}\n","app\u002Froutes\u002Fapi.checkout.tsx",[644,2916,2917,2937,2955,2959,2996,3018,3040,3044,3066,3116,3120,3146,3180,3184,3202,3212,3222,3236,3250,3264,3270,3274,3278,3306],{"__ignoreMap":579},[760,2918,2919,2921,2923,2926,2928,2930,2932,2935],{"class":762,"line":763},[760,2920,1192],{"class":766},[760,2922,830],{"class":785},[760,2924,2925],{"class":777}," loggerContext",[760,2927,836],{"class":785},[760,2929,1206],{"class":766},[760,2931,1087],{"class":785},[760,2933,2934],{"class":1090},"evlog\u002Freact-router",[760,2936,1214],{"class":785},[760,2938,2939,2941,2943,2945,2947,2949,2951,2953],{"class":762,"line":802},[760,2940,1192],{"class":766},[760,2942,830],{"class":785},[760,2944,1057],{"class":777},[760,2946,836],{"class":785},[760,2948,1206],{"class":766},[760,2950,1087],{"class":785},[760,2952,1231],{"class":1090},[760,2954,1214],{"class":785},[760,2956,2957],{"class":762,"line":825},[760,2958,857],{"emptyLinePlaceholder":856},[760,2960,2961,2963,2965,2968,2971,2974,2976,2978,2981,2984,2987,2989,2992,2994],{"class":762,"line":853},[760,2962,767],{"class":766},[760,2964,1691],{"class":781},[760,2966,2967],{"class":781}," function",[760,2969,2970],{"class":773}," action",[760,2972,2973],{"class":785},"({",[760,2975,1697],{"class":789},[760,2977,928],{"class":785},[760,2979,2980],{"class":789}," context",[760,2982,2983],{"class":785}," }:",[760,2985,2986],{"class":1686}," Route",[760,2988,875],{"class":785},[760,2990,2991],{"class":1686},"ActionArgs",[760,2993,793],{"class":785},[760,2995,799],{"class":785},[760,2997,2998,3000,3002,3004,3006,3008,3011,3013,3016],{"class":762,"line":860},[760,2999,805],{"class":781},[760,3001,808],{"class":777},[760,3003,811],{"class":785},[760,3005,2980],{"class":777},[760,3007,875],{"class":785},[760,3009,3010],{"class":773},"get",[760,3012,778],{"class":817},[760,3014,3015],{"class":777},"loggerContext",[760,3017,822],{"class":817},[760,3019,3020,3022,3024,3026,3028,3030,3032,3034,3036,3038],{"class":762,"line":888},[760,3021,805],{"class":781},[760,3023,830],{"class":785},[760,3025,833],{"class":777},[760,3027,836],{"class":785},[760,3029,811],{"class":785},[760,3031,841],{"class":766},[760,3033,1697],{"class":777},[760,3035,875],{"class":785},[760,3037,1302],{"class":773},[760,3039,1280],{"class":817},[760,3041,3042],{"class":762,"line":949},[760,3043,857],{"emptyLinePlaceholder":856},[760,3045,3046,3048,3050,3052,3054,3056,3058,3060,3062,3064],{"class":762,"line":954},[760,3047,805],{"class":781},[760,3049,865],{"class":777},[760,3051,811],{"class":785},[760,3053,841],{"class":766},[760,3055,872],{"class":777},[760,3057,875],{"class":785},[760,3059,878],{"class":773},[760,3061,778],{"class":817},[760,3063,883],{"class":777},[760,3065,822],{"class":817},[760,3067,3068,3070,3072,3074,3076,3078,3080,3082,3084,3086,3088,3090,3092,3094,3096,3098,3100,3102,3104,3106,3108,3110,3112,3114],{"class":762,"line":985},[760,3069,891],{"class":777},[760,3071,875],{"class":785},[760,3073,896],{"class":773},[760,3075,778],{"class":817},[760,3077,901],{"class":785},[760,3079,865],{"class":817},[760,3081,906],{"class":785},[760,3083,830],{"class":785},[760,3085,911],{"class":817},[760,3087,906],{"class":785},[760,3089,865],{"class":777},[760,3091,875],{"class":785},[760,3093,920],{"class":777},[760,3095,875],{"class":785},[760,3097,925],{"class":777},[760,3099,928],{"class":785},[760,3101,931],{"class":817},[760,3103,906],{"class":785},[760,3105,865],{"class":777},[760,3107,875],{"class":785},[760,3109,940],{"class":777},[760,3111,836],{"class":785},[760,3113,836],{"class":785},[760,3115,822],{"class":817},[760,3117,3118],{"class":762,"line":1022},[760,3119,857],{"emptyLinePlaceholder":856},[760,3121,3122,3124,3126,3128,3130,3132,3134,3136,3138,3140,3142,3144],{"class":762,"line":1027},[760,3123,805],{"class":781},[760,3125,959],{"class":777},[760,3127,811],{"class":785},[760,3129,841],{"class":766},[760,3131,966],{"class":777},[760,3133,875],{"class":785},[760,3135,971],{"class":773},[760,3137,778],{"class":817},[760,3139,976],{"class":777},[760,3141,875],{"class":785},[760,3143,940],{"class":777},[760,3145,822],{"class":817},[760,3147,3148,3150,3152,3154,3156,3158,3160,3162,3164,3166,3168,3170,3172,3174,3176,3178],{"class":762,"line":1051},[760,3149,891],{"class":777},[760,3151,875],{"class":785},[760,3153,896],{"class":773},[760,3155,778],{"class":817},[760,3157,901],{"class":785},[760,3159,966],{"class":817},[760,3161,906],{"class":785},[760,3163,830],{"class":785},[760,3165,1004],{"class":817},[760,3167,906],{"class":785},[760,3169,959],{"class":777},[760,3171,875],{"class":785},[760,3173,1013],{"class":777},[760,3175,836],{"class":785},[760,3177,836],{"class":785},[760,3179,822],{"class":817},[760,3181,3182],{"class":762,"line":1064},[760,3183,857],{"emptyLinePlaceholder":856},[760,3185,3186,3188,3190,3192,3194,3196,3198,3200],{"class":762,"line":1079},[760,3187,1030],{"class":766},[760,3189,786],{"class":817},[760,3191,1035],{"class":785},[760,3193,971],{"class":777},[760,3195,875],{"class":785},[760,3197,1042],{"class":777},[760,3199,1045],{"class":817},[760,3201,1048],{"class":785},[760,3203,3204,3206,3208,3210],{"class":762,"line":1099},[760,3205,1054],{"class":766},[760,3207,1057],{"class":773},[760,3209,778],{"class":817},[760,3211,1048],{"class":785},[760,3213,3214,3216,3218,3220],{"class":762,"line":1116},[760,3215,1067],{"class":817},[760,3217,906],{"class":785},[760,3219,1073],{"class":1072},[760,3221,1076],{"class":785},[760,3223,3224,3226,3228,3230,3232,3234],{"class":762,"line":1133},[760,3225,1082],{"class":817},[760,3227,906],{"class":785},[760,3229,1087],{"class":785},[760,3231,1091],{"class":1090},[760,3233,1094],{"class":785},[760,3235,1076],{"class":785},[760,3237,3238,3240,3242,3244,3246,3248],{"class":762,"line":1141},[760,3239,1102],{"class":817},[760,3241,906],{"class":785},[760,3243,959],{"class":777},[760,3245,875],{"class":785},[760,3247,1111],{"class":777},[760,3249,1076],{"class":785},[760,3251,3252,3254,3256,3258,3260,3262],{"class":762,"line":1147},[760,3253,1119],{"class":817},[760,3255,906],{"class":785},[760,3257,1087],{"class":785},[760,3259,1126],{"class":1090},[760,3261,1094],{"class":785},[760,3263,1076],{"class":785},[760,3265,3266,3268],{"class":762,"line":1152},[760,3267,1136],{"class":785},[760,3269,822],{"class":817},[760,3271,3272],{"class":762,"line":1174},[760,3273,1144],{"class":785},[760,3275,3276],{"class":762,"line":1541},[760,3277,857],{"emptyLinePlaceholder":856},[760,3279,3280,3282,3284,3286,3288,3290,3292,3294,3296,3298,3300,3302,3304],{"class":762,"line":1546},[760,3281,1155],{"class":766},[760,3283,1551],{"class":777},[760,3285,875],{"class":785},[760,3287,1302],{"class":773},[760,3289,778],{"class":817},[760,3291,901],{"class":785},[760,3293,1160],{"class":817},[760,3295,906],{"class":785},[760,3297,959],{"class":777},[760,3299,875],{"class":785},[760,3301,1013],{"class":777},[760,3303,836],{"class":785},[760,3305,822],{"class":817},[760,3307,3308],{"class":762,"line":1576},[760,3309,2007],{"class":785},[577,3311,3312],{"v-slot:nestjs":579},[751,3313,3316],{"className":753,"code":3314,"filename":3315,"language":756,"meta":579,"style":579},"import { Module } from '@nestjs\u002Fcommon'\nimport { EvlogModule } from 'evlog\u002Fnestjs'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\n@Module({\n  imports: [\n    EvlogModule.forRoot({\n      drain: createAxiomDrain(),\n    }),\n  ],\n})\nexport class AppModule {}\n","app.module.ts",[644,3317,3318,3338,3358,3378,3382,3394,3404,3418,3432,3440,3447,3453],{"__ignoreMap":579},[760,3319,3320,3322,3324,3327,3329,3331,3333,3336],{"class":762,"line":763},[760,3321,1192],{"class":766},[760,3323,830],{"class":785},[760,3325,3326],{"class":777}," Module",[760,3328,836],{"class":785},[760,3330,1206],{"class":766},[760,3332,1087],{"class":785},[760,3334,3335],{"class":1090},"@nestjs\u002Fcommon",[760,3337,1214],{"class":785},[760,3339,3340,3342,3344,3347,3349,3351,3353,3356],{"class":762,"line":802},[760,3341,1192],{"class":766},[760,3343,830],{"class":785},[760,3345,3346],{"class":777}," EvlogModule",[760,3348,836],{"class":785},[760,3350,1206],{"class":766},[760,3352,1087],{"class":785},[760,3354,3355],{"class":1090},"evlog\u002Fnestjs",[760,3357,1214],{"class":785},[760,3359,3360,3362,3364,3367,3369,3371,3373,3376],{"class":762,"line":825},[760,3361,1192],{"class":766},[760,3363,830],{"class":785},[760,3365,3366],{"class":777}," createAxiomDrain",[760,3368,836],{"class":785},[760,3370,1206],{"class":766},[760,3372,1087],{"class":785},[760,3374,3375],{"class":1090},"evlog\u002Faxiom",[760,3377,1214],{"class":785},[760,3379,3380],{"class":762,"line":853},[760,3381,857],{"emptyLinePlaceholder":856},[760,3383,3384,3387,3390,3392],{"class":762,"line":860},[760,3385,3386],{"class":785},"@",[760,3388,3389],{"class":773},"Module",[760,3391,778],{"class":777},[760,3393,1048],{"class":785},[760,3395,3396,3399,3401],{"class":762,"line":888},[760,3397,3398],{"class":817},"  imports",[760,3400,906],{"class":785},[760,3402,3403],{"class":777}," [\n",[760,3405,3406,3409,3411,3414,3416],{"class":762,"line":949},[760,3407,3408],{"class":777},"    EvlogModule",[760,3410,875],{"class":785},[760,3412,3413],{"class":773},"forRoot",[760,3415,778],{"class":777},[760,3417,1048],{"class":785},[760,3419,3420,3423,3425,3427,3430],{"class":762,"line":954},[760,3421,3422],{"class":817},"      drain",[760,3424,906],{"class":785},[760,3426,3366],{"class":773},[760,3428,3429],{"class":777},"()",[760,3431,1076],{"class":785},[760,3433,3434,3436,3438],{"class":762,"line":985},[760,3435,1136],{"class":785},[760,3437,793],{"class":777},[760,3439,1076],{"class":785},[760,3441,3442,3445],{"class":762,"line":1022},[760,3443,3444],{"class":777},"  ]",[760,3446,1076],{"class":785},[760,3448,3449,3451],{"class":762,"line":1027},[760,3450,1177],{"class":785},[760,3452,822],{"class":777},[760,3454,3455,3457,3460,3463],{"class":762,"line":1051},[760,3456,767],{"class":766},[760,3458,3459],{"class":781}," class",[760,3461,3462],{"class":1686}," AppModule",[760,3464,3465],{"class":785}," {}\n",[577,3467,3468],{"v-slot:express":579},[751,3469,3472],{"className":753,"code":3470,"filename":3471,"language":756,"meta":579,"style":579},"import { evlog, useLogger } from 'evlog\u002Fexpress'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = express()\napp.use(evlog({ drain: createAxiomDrain() }))\n\napp.post('\u002Fcheckout', async (req, res) => {\n  const log = useLogger()\n  const { cartId } = req.body\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  res.json({ orderId: charge.id })\n})\n","src\u002Findex.ts",[644,3473,3474,3498,3516,3520,3535,3568,3572,3609,3621,3640,3644,3666,3716,3720,3746,3780,3784,3811],{"__ignoreMap":579},[760,3475,3476,3478,3480,3483,3485,3487,3489,3491,3493,3496],{"class":762,"line":763},[760,3477,1192],{"class":766},[760,3479,830],{"class":785},[760,3481,3482],{"class":777}," evlog",[760,3484,928],{"class":785},[760,3486,814],{"class":777},[760,3488,836],{"class":785},[760,3490,1206],{"class":766},[760,3492,1087],{"class":785},[760,3494,3495],{"class":1090},"evlog\u002Fexpress",[760,3497,1214],{"class":785},[760,3499,3500,3502,3504,3506,3508,3510,3512,3514],{"class":762,"line":802},[760,3501,1192],{"class":766},[760,3503,830],{"class":785},[760,3505,3366],{"class":777},[760,3507,836],{"class":785},[760,3509,1206],{"class":766},[760,3511,1087],{"class":785},[760,3513,3375],{"class":1090},[760,3515,1214],{"class":785},[760,3517,3518],{"class":762,"line":825},[760,3519,857],{"emptyLinePlaceholder":856},[760,3521,3522,3525,3528,3530,3533],{"class":762,"line":853},[760,3523,3524],{"class":781},"const",[760,3526,3527],{"class":777}," app ",[760,3529,1250],{"class":785},[760,3531,3532],{"class":773}," express",[760,3534,1280],{"class":777},[760,3536,3537,3540,3542,3545,3547,3549,3551,3553,3556,3558,3560,3563,3565],{"class":762,"line":860},[760,3538,3539],{"class":777},"app",[760,3541,875],{"class":785},[760,3543,3544],{"class":773},"use",[760,3546,778],{"class":777},[760,3548,1231],{"class":773},[760,3550,778],{"class":777},[760,3552,901],{"class":785},[760,3554,3555],{"class":817}," drain",[760,3557,906],{"class":785},[760,3559,3366],{"class":773},[760,3561,3562],{"class":777},"() ",[760,3564,1177],{"class":785},[760,3566,3567],{"class":777},"))\n",[760,3569,3570],{"class":762,"line":888},[760,3571,857],{"emptyLinePlaceholder":856},[760,3573,3574,3576,3578,3581,3583,3585,3588,3590,3592,3594,3596,3598,3600,3603,3605,3607],{"class":762,"line":949},[760,3575,3539],{"class":777},[760,3577,875],{"class":785},[760,3579,3580],{"class":773},"post",[760,3582,778],{"class":777},[760,3584,1094],{"class":785},[760,3586,3587],{"class":1090},"\u002Fcheckout",[760,3589,1094],{"class":785},[760,3591,928],{"class":785},[760,3593,1691],{"class":781},[760,3595,786],{"class":785},[760,3597,1261],{"class":789},[760,3599,928],{"class":785},[760,3601,3602],{"class":789}," res",[760,3604,793],{"class":785},[760,3606,796],{"class":781},[760,3608,799],{"class":785},[760,3610,3611,3613,3615,3617,3619],{"class":762,"line":954},[760,3612,805],{"class":781},[760,3614,808],{"class":777},[760,3616,811],{"class":785},[760,3618,814],{"class":773},[760,3620,1280],{"class":817},[760,3622,3623,3625,3627,3629,3631,3633,3635,3637],{"class":762,"line":985},[760,3624,805],{"class":781},[760,3626,830],{"class":785},[760,3628,833],{"class":777},[760,3630,836],{"class":785},[760,3632,811],{"class":785},[760,3634,1297],{"class":777},[760,3636,875],{"class":785},[760,3638,3639],{"class":777},"body\n",[760,3641,3642],{"class":762,"line":1022},[760,3643,857],{"emptyLinePlaceholder":856},[760,3645,3646,3648,3650,3652,3654,3656,3658,3660,3662,3664],{"class":762,"line":1027},[760,3647,805],{"class":781},[760,3649,865],{"class":777},[760,3651,811],{"class":785},[760,3653,841],{"class":766},[760,3655,872],{"class":777},[760,3657,875],{"class":785},[760,3659,878],{"class":773},[760,3661,778],{"class":817},[760,3663,883],{"class":777},[760,3665,822],{"class":817},[760,3667,3668,3670,3672,3674,3676,3678,3680,3682,3684,3686,3688,3690,3692,3694,3696,3698,3700,3702,3704,3706,3708,3710,3712,3714],{"class":762,"line":1051},[760,3669,891],{"class":777},[760,3671,875],{"class":785},[760,3673,896],{"class":773},[760,3675,778],{"class":817},[760,3677,901],{"class":785},[760,3679,865],{"class":817},[760,3681,906],{"class":785},[760,3683,830],{"class":785},[760,3685,911],{"class":817},[760,3687,906],{"class":785},[760,3689,865],{"class":777},[760,3691,875],{"class":785},[760,3693,920],{"class":777},[760,3695,875],{"class":785},[760,3697,925],{"class":777},[760,3699,928],{"class":785},[760,3701,931],{"class":817},[760,3703,906],{"class":785},[760,3705,865],{"class":777},[760,3707,875],{"class":785},[760,3709,940],{"class":777},[760,3711,836],{"class":785},[760,3713,836],{"class":785},[760,3715,822],{"class":817},[760,3717,3718],{"class":762,"line":1064},[760,3719,857],{"emptyLinePlaceholder":856},[760,3721,3722,3724,3726,3728,3730,3732,3734,3736,3738,3740,3742,3744],{"class":762,"line":1079},[760,3723,805],{"class":781},[760,3725,959],{"class":777},[760,3727,811],{"class":785},[760,3729,841],{"class":766},[760,3731,966],{"class":777},[760,3733,875],{"class":785},[760,3735,971],{"class":773},[760,3737,778],{"class":817},[760,3739,976],{"class":777},[760,3741,875],{"class":785},[760,3743,940],{"class":777},[760,3745,822],{"class":817},[760,3747,3748,3750,3752,3754,3756,3758,3760,3762,3764,3766,3768,3770,3772,3774,3776,3778],{"class":762,"line":1099},[760,3749,891],{"class":777},[760,3751,875],{"class":785},[760,3753,896],{"class":773},[760,3755,778],{"class":817},[760,3757,901],{"class":785},[760,3759,966],{"class":817},[760,3761,906],{"class":785},[760,3763,830],{"class":785},[760,3765,1004],{"class":817},[760,3767,906],{"class":785},[760,3769,959],{"class":777},[760,3771,875],{"class":785},[760,3773,1013],{"class":777},[760,3775,836],{"class":785},[760,3777,836],{"class":785},[760,3779,822],{"class":817},[760,3781,3782],{"class":762,"line":1116},[760,3783,857],{"emptyLinePlaceholder":856},[760,3785,3786,3789,3791,3793,3795,3797,3799,3801,3803,3805,3807,3809],{"class":762,"line":1133},[760,3787,3788],{"class":777},"  res",[760,3790,875],{"class":785},[760,3792,1302],{"class":773},[760,3794,778],{"class":817},[760,3796,901],{"class":785},[760,3798,1160],{"class":817},[760,3800,906],{"class":785},[760,3802,959],{"class":777},[760,3804,875],{"class":785},[760,3806,1013],{"class":777},[760,3808,836],{"class":785},[760,3810,822],{"class":817},[760,3812,3813,3815],{"class":762,"line":1141},[760,3814,1177],{"class":785},[760,3816,822],{"class":777},[577,3818,3819],{"v-slot:hono":579},[751,3820,3822],{"className":753,"code":3821,"filename":3471,"language":756,"meta":579,"style":579},"import { evlog, type EvlogVariables } from 'evlog\u002Fhono'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = new Hono\u003CEvlogVariables>()\napp.use(evlog({ drain: createAxiomDrain() }))\n\napp.post('\u002Fcheckout', async (c) => {\n  const log = c.get('log')\n  const { cartId } = await c.req.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  return c.json({ orderId: charge.id })\n})\n",[644,3823,3824,3850,3868,3872,3897,3925,3929,3960,3985,4011,4015,4037,4087,4091,4117,4151,4155,4183],{"__ignoreMap":579},[760,3825,3826,3828,3830,3832,3834,3836,3839,3841,3843,3845,3848],{"class":762,"line":763},[760,3827,1192],{"class":766},[760,3829,830],{"class":785},[760,3831,3482],{"class":777},[760,3833,928],{"class":785},[760,3835,1652],{"class":766},[760,3837,3838],{"class":777}," EvlogVariables",[760,3840,836],{"class":785},[760,3842,1206],{"class":766},[760,3844,1087],{"class":785},[760,3846,3847],{"class":1090},"evlog\u002Fhono",[760,3849,1214],{"class":785},[760,3851,3852,3854,3856,3858,3860,3862,3864,3866],{"class":762,"line":802},[760,3853,1192],{"class":766},[760,3855,830],{"class":785},[760,3857,3366],{"class":777},[760,3859,836],{"class":785},[760,3861,1206],{"class":766},[760,3863,1087],{"class":785},[760,3865,3375],{"class":1090},[760,3867,1214],{"class":785},[760,3869,3870],{"class":762,"line":825},[760,3871,857],{"emptyLinePlaceholder":856},[760,3873,3874,3876,3878,3880,3883,3886,3889,3892,3895],{"class":762,"line":853},[760,3875,3524],{"class":781},[760,3877,3527],{"class":777},[760,3879,1250],{"class":785},[760,3881,3882],{"class":785}," new",[760,3884,3885],{"class":773}," Hono",[760,3887,3888],{"class":785},"\u003C",[760,3890,3891],{"class":1686},"EvlogVariables",[760,3893,3894],{"class":785},">",[760,3896,1280],{"class":777},[760,3898,3899,3901,3903,3905,3907,3909,3911,3913,3915,3917,3919,3921,3923],{"class":762,"line":860},[760,3900,3539],{"class":777},[760,3902,875],{"class":785},[760,3904,3544],{"class":773},[760,3906,778],{"class":777},[760,3908,1231],{"class":773},[760,3910,778],{"class":777},[760,3912,901],{"class":785},[760,3914,3555],{"class":817},[760,3916,906],{"class":785},[760,3918,3366],{"class":773},[760,3920,3562],{"class":777},[760,3922,1177],{"class":785},[760,3924,3567],{"class":777},[760,3926,3927],{"class":762,"line":888},[760,3928,857],{"emptyLinePlaceholder":856},[760,3930,3931,3933,3935,3937,3939,3941,3943,3945,3947,3949,3951,3954,3956,3958],{"class":762,"line":949},[760,3932,3539],{"class":777},[760,3934,875],{"class":785},[760,3936,3580],{"class":773},[760,3938,778],{"class":777},[760,3940,1094],{"class":785},[760,3942,3587],{"class":1090},[760,3944,1094],{"class":785},[760,3946,928],{"class":785},[760,3948,1691],{"class":781},[760,3950,786],{"class":785},[760,3952,3953],{"class":789},"c",[760,3955,793],{"class":785},[760,3957,796],{"class":781},[760,3959,799],{"class":785},[760,3961,3962,3964,3966,3968,3971,3973,3975,3977,3979,3981,3983],{"class":762,"line":954},[760,3963,805],{"class":781},[760,3965,808],{"class":777},[760,3967,811],{"class":785},[760,3969,3970],{"class":777}," c",[760,3972,875],{"class":785},[760,3974,3010],{"class":773},[760,3976,778],{"class":817},[760,3978,1094],{"class":785},[760,3980,2576],{"class":1090},[760,3982,1094],{"class":785},[760,3984,822],{"class":817},[760,3986,3987,3989,3991,3993,3995,3997,3999,4001,4003,4005,4007,4009],{"class":762,"line":985},[760,3988,805],{"class":781},[760,3990,830],{"class":785},[760,3992,833],{"class":777},[760,3994,836],{"class":785},[760,3996,811],{"class":785},[760,3998,841],{"class":766},[760,4000,3970],{"class":777},[760,4002,875],{"class":785},[760,4004,1261],{"class":777},[760,4006,875],{"class":785},[760,4008,1302],{"class":773},[760,4010,1280],{"class":817},[760,4012,4013],{"class":762,"line":1022},[760,4014,857],{"emptyLinePlaceholder":856},[760,4016,4017,4019,4021,4023,4025,4027,4029,4031,4033,4035],{"class":762,"line":1027},[760,4018,805],{"class":781},[760,4020,865],{"class":777},[760,4022,811],{"class":785},[760,4024,841],{"class":766},[760,4026,872],{"class":777},[760,4028,875],{"class":785},[760,4030,878],{"class":773},[760,4032,778],{"class":817},[760,4034,883],{"class":777},[760,4036,822],{"class":817},[760,4038,4039,4041,4043,4045,4047,4049,4051,4053,4055,4057,4059,4061,4063,4065,4067,4069,4071,4073,4075,4077,4079,4081,4083,4085],{"class":762,"line":1051},[760,4040,891],{"class":777},[760,4042,875],{"class":785},[760,4044,896],{"class":773},[760,4046,778],{"class":817},[760,4048,901],{"class":785},[760,4050,865],{"class":817},[760,4052,906],{"class":785},[760,4054,830],{"class":785},[760,4056,911],{"class":817},[760,4058,906],{"class":785},[760,4060,865],{"class":777},[760,4062,875],{"class":785},[760,4064,920],{"class":777},[760,4066,875],{"class":785},[760,4068,925],{"class":777},[760,4070,928],{"class":785},[760,4072,931],{"class":817},[760,4074,906],{"class":785},[760,4076,865],{"class":777},[760,4078,875],{"class":785},[760,4080,940],{"class":777},[760,4082,836],{"class":785},[760,4084,836],{"class":785},[760,4086,822],{"class":817},[760,4088,4089],{"class":762,"line":1064},[760,4090,857],{"emptyLinePlaceholder":856},[760,4092,4093,4095,4097,4099,4101,4103,4105,4107,4109,4111,4113,4115],{"class":762,"line":1079},[760,4094,805],{"class":781},[760,4096,959],{"class":777},[760,4098,811],{"class":785},[760,4100,841],{"class":766},[760,4102,966],{"class":777},[760,4104,875],{"class":785},[760,4106,971],{"class":773},[760,4108,778],{"class":817},[760,4110,976],{"class":777},[760,4112,875],{"class":785},[760,4114,940],{"class":777},[760,4116,822],{"class":817},[760,4118,4119,4121,4123,4125,4127,4129,4131,4133,4135,4137,4139,4141,4143,4145,4147,4149],{"class":762,"line":1099},[760,4120,891],{"class":777},[760,4122,875],{"class":785},[760,4124,896],{"class":773},[760,4126,778],{"class":817},[760,4128,901],{"class":785},[760,4130,966],{"class":817},[760,4132,906],{"class":785},[760,4134,830],{"class":785},[760,4136,1004],{"class":817},[760,4138,906],{"class":785},[760,4140,959],{"class":777},[760,4142,875],{"class":785},[760,4144,1013],{"class":777},[760,4146,836],{"class":785},[760,4148,836],{"class":785},[760,4150,822],{"class":817},[760,4152,4153],{"class":762,"line":1116},[760,4154,857],{"emptyLinePlaceholder":856},[760,4156,4157,4159,4161,4163,4165,4167,4169,4171,4173,4175,4177,4179,4181],{"class":762,"line":1133},[760,4158,1155],{"class":766},[760,4160,3970],{"class":777},[760,4162,875],{"class":785},[760,4164,1302],{"class":773},[760,4166,778],{"class":817},[760,4168,901],{"class":785},[760,4170,1160],{"class":817},[760,4172,906],{"class":785},[760,4174,959],{"class":777},[760,4176,875],{"class":785},[760,4178,1013],{"class":777},[760,4180,836],{"class":785},[760,4182,822],{"class":817},[760,4184,4185,4187],{"class":762,"line":1141},[760,4186,1177],{"class":785},[760,4188,822],{"class":777},[577,4190,4191],{"v-slot:fastify":579},[751,4192,4194],{"className":753,"code":4193,"filename":3471,"language":756,"meta":579,"style":579},"import { evlog } from 'evlog\u002Ffastify'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = Fastify({ logger: false })\nawait app.register(evlog, { drain: createAxiomDrain() })\n\napp.post('\u002Fcheckout', async (request) => {\n  const { cartId } = request.body\n\n  const cart = await db.findCart(cartId)\n  request.log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  request.log.set({ stripe: { chargeId: charge.id } })\n\n  return { orderId: charge.id }\n})\n",[644,4195,4196,4215,4233,4237,4265,4297,4301,4332,4350,4354,4376,4431,4435,4461,4499,4503,4521],{"__ignoreMap":579},[760,4197,4198,4200,4202,4204,4206,4208,4210,4213],{"class":762,"line":763},[760,4199,1192],{"class":766},[760,4201,830],{"class":785},[760,4203,3482],{"class":777},[760,4205,836],{"class":785},[760,4207,1206],{"class":766},[760,4209,1087],{"class":785},[760,4211,4212],{"class":1090},"evlog\u002Ffastify",[760,4214,1214],{"class":785},[760,4216,4217,4219,4221,4223,4225,4227,4229,4231],{"class":762,"line":802},[760,4218,1192],{"class":766},[760,4220,830],{"class":785},[760,4222,3366],{"class":777},[760,4224,836],{"class":785},[760,4226,1206],{"class":766},[760,4228,1087],{"class":785},[760,4230,3375],{"class":1090},[760,4232,1214],{"class":785},[760,4234,4235],{"class":762,"line":825},[760,4236,857],{"emptyLinePlaceholder":856},[760,4238,4239,4241,4243,4245,4248,4250,4252,4255,4257,4261,4263],{"class":762,"line":853},[760,4240,3524],{"class":781},[760,4242,3527],{"class":777},[760,4244,1250],{"class":785},[760,4246,4247],{"class":773}," Fastify",[760,4249,778],{"class":777},[760,4251,901],{"class":785},[760,4253,4254],{"class":817}," logger",[760,4256,906],{"class":785},[760,4258,4260],{"class":4259},"sfNiH"," false",[760,4262,836],{"class":785},[760,4264,822],{"class":777},[760,4266,4267,4270,4273,4275,4278,4281,4283,4285,4287,4289,4291,4293,4295],{"class":762,"line":860},[760,4268,4269],{"class":766},"await",[760,4271,4272],{"class":777}," app",[760,4274,875],{"class":785},[760,4276,4277],{"class":773},"register",[760,4279,4280],{"class":777},"(evlog",[760,4282,928],{"class":785},[760,4284,830],{"class":785},[760,4286,3555],{"class":817},[760,4288,906],{"class":785},[760,4290,3366],{"class":773},[760,4292,3562],{"class":777},[760,4294,1177],{"class":785},[760,4296,822],{"class":777},[760,4298,4299],{"class":762,"line":888},[760,4300,857],{"emptyLinePlaceholder":856},[760,4302,4303,4305,4307,4309,4311,4313,4315,4317,4319,4321,4323,4326,4328,4330],{"class":762,"line":949},[760,4304,3539],{"class":777},[760,4306,875],{"class":785},[760,4308,3580],{"class":773},[760,4310,778],{"class":777},[760,4312,1094],{"class":785},[760,4314,3587],{"class":1090},[760,4316,1094],{"class":785},[760,4318,928],{"class":785},[760,4320,1691],{"class":781},[760,4322,786],{"class":785},[760,4324,4325],{"class":789},"request",[760,4327,793],{"class":785},[760,4329,796],{"class":781},[760,4331,799],{"class":785},[760,4333,4334,4336,4338,4340,4342,4344,4346,4348],{"class":762,"line":954},[760,4335,805],{"class":781},[760,4337,830],{"class":785},[760,4339,833],{"class":777},[760,4341,836],{"class":785},[760,4343,811],{"class":785},[760,4345,1697],{"class":777},[760,4347,875],{"class":785},[760,4349,3639],{"class":777},[760,4351,4352],{"class":762,"line":985},[760,4353,857],{"emptyLinePlaceholder":856},[760,4355,4356,4358,4360,4362,4364,4366,4368,4370,4372,4374],{"class":762,"line":1022},[760,4357,805],{"class":781},[760,4359,865],{"class":777},[760,4361,811],{"class":785},[760,4363,841],{"class":766},[760,4365,872],{"class":777},[760,4367,875],{"class":785},[760,4369,878],{"class":773},[760,4371,778],{"class":817},[760,4373,883],{"class":777},[760,4375,822],{"class":817},[760,4377,4378,4381,4383,4385,4387,4389,4391,4393,4395,4397,4399,4401,4403,4405,4407,4409,4411,4413,4415,4417,4419,4421,4423,4425,4427,4429],{"class":762,"line":1027},[760,4379,4380],{"class":777},"  request",[760,4382,875],{"class":785},[760,4384,2576],{"class":777},[760,4386,875],{"class":785},[760,4388,896],{"class":773},[760,4390,778],{"class":817},[760,4392,901],{"class":785},[760,4394,865],{"class":817},[760,4396,906],{"class":785},[760,4398,830],{"class":785},[760,4400,911],{"class":817},[760,4402,906],{"class":785},[760,4404,865],{"class":777},[760,4406,875],{"class":785},[760,4408,920],{"class":777},[760,4410,875],{"class":785},[760,4412,925],{"class":777},[760,4414,928],{"class":785},[760,4416,931],{"class":817},[760,4418,906],{"class":785},[760,4420,865],{"class":777},[760,4422,875],{"class":785},[760,4424,940],{"class":777},[760,4426,836],{"class":785},[760,4428,836],{"class":785},[760,4430,822],{"class":817},[760,4432,4433],{"class":762,"line":1051},[760,4434,857],{"emptyLinePlaceholder":856},[760,4436,4437,4439,4441,4443,4445,4447,4449,4451,4453,4455,4457,4459],{"class":762,"line":1064},[760,4438,805],{"class":781},[760,4440,959],{"class":777},[760,4442,811],{"class":785},[760,4444,841],{"class":766},[760,4446,966],{"class":777},[760,4448,875],{"class":785},[760,4450,971],{"class":773},[760,4452,778],{"class":817},[760,4454,976],{"class":777},[760,4456,875],{"class":785},[760,4458,940],{"class":777},[760,4460,822],{"class":817},[760,4462,4463,4465,4467,4469,4471,4473,4475,4477,4479,4481,4483,4485,4487,4489,4491,4493,4495,4497],{"class":762,"line":1079},[760,4464,4380],{"class":777},[760,4466,875],{"class":785},[760,4468,2576],{"class":777},[760,4470,875],{"class":785},[760,4472,896],{"class":773},[760,4474,778],{"class":817},[760,4476,901],{"class":785},[760,4478,966],{"class":817},[760,4480,906],{"class":785},[760,4482,830],{"class":785},[760,4484,1004],{"class":817},[760,4486,906],{"class":785},[760,4488,959],{"class":777},[760,4490,875],{"class":785},[760,4492,1013],{"class":777},[760,4494,836],{"class":785},[760,4496,836],{"class":785},[760,4498,822],{"class":817},[760,4500,4501],{"class":762,"line":1099},[760,4502,857],{"emptyLinePlaceholder":856},[760,4504,4505,4507,4509,4511,4513,4515,4517,4519],{"class":762,"line":1116},[760,4506,1155],{"class":766},[760,4508,830],{"class":785},[760,4510,1160],{"class":817},[760,4512,906],{"class":785},[760,4514,959],{"class":777},[760,4516,875],{"class":785},[760,4518,1013],{"class":777},[760,4520,1171],{"class":785},[760,4522,4523,4525],{"class":762,"line":1133},[760,4524,1177],{"class":785},[760,4526,822],{"class":777},[577,4528,4529],{"v-slot:elysia":579},[751,4530,4532],{"className":753,"code":4531,"filename":3471,"language":756,"meta":579,"style":579},"import { evlog } from 'evlog\u002Felysia'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = new Elysia()\n  .use(evlog({ drain: createAxiomDrain() }))\n  .post('\u002Fcheckout', async ({ log, body }) => {\n    const { cartId } = body\n\n    const cart = await db.findCart(cartId)\n    log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n    const charge = await stripe.charge(cart.total)\n    log.set({ stripe: { chargeId: charge.id } })\n\n    return { orderId: charge.id }\n  })\n",[644,4533,4534,4553,4571,4575,4590,4617,4650,4666,4670,4692,4743,4747,4773,4807,4811,4830],{"__ignoreMap":579},[760,4535,4536,4538,4540,4542,4544,4546,4548,4551],{"class":762,"line":763},[760,4537,1192],{"class":766},[760,4539,830],{"class":785},[760,4541,3482],{"class":777},[760,4543,836],{"class":785},[760,4545,1206],{"class":766},[760,4547,1087],{"class":785},[760,4549,4550],{"class":1090},"evlog\u002Felysia",[760,4552,1214],{"class":785},[760,4554,4555,4557,4559,4561,4563,4565,4567,4569],{"class":762,"line":802},[760,4556,1192],{"class":766},[760,4558,830],{"class":785},[760,4560,3366],{"class":777},[760,4562,836],{"class":785},[760,4564,1206],{"class":766},[760,4566,1087],{"class":785},[760,4568,3375],{"class":1090},[760,4570,1214],{"class":785},[760,4572,4573],{"class":762,"line":825},[760,4574,857],{"emptyLinePlaceholder":856},[760,4576,4577,4579,4581,4583,4585,4588],{"class":762,"line":853},[760,4578,3524],{"class":781},[760,4580,3527],{"class":777},[760,4582,1250],{"class":785},[760,4584,3882],{"class":785},[760,4586,4587],{"class":773}," Elysia",[760,4589,1280],{"class":777},[760,4591,4592,4595,4597,4599,4601,4603,4605,4607,4609,4611,4613,4615],{"class":762,"line":860},[760,4593,4594],{"class":785},"  .",[760,4596,3544],{"class":773},[760,4598,778],{"class":777},[760,4600,1231],{"class":773},[760,4602,778],{"class":777},[760,4604,901],{"class":785},[760,4606,3555],{"class":817},[760,4608,906],{"class":785},[760,4610,3366],{"class":773},[760,4612,3562],{"class":777},[760,4614,1177],{"class":785},[760,4616,3567],{"class":777},[760,4618,4619,4621,4623,4625,4627,4629,4631,4633,4635,4637,4639,4641,4644,4646,4648],{"class":762,"line":888},[760,4620,4594],{"class":785},[760,4622,3580],{"class":773},[760,4624,778],{"class":777},[760,4626,1094],{"class":785},[760,4628,3587],{"class":1090},[760,4630,1094],{"class":785},[760,4632,928],{"class":785},[760,4634,1691],{"class":781},[760,4636,1694],{"class":785},[760,4638,808],{"class":789},[760,4640,928],{"class":785},[760,4642,4643],{"class":789}," body",[760,4645,1700],{"class":785},[760,4647,796],{"class":781},[760,4649,799],{"class":785},[760,4651,4652,4655,4657,4659,4661,4663],{"class":762,"line":949},[760,4653,4654],{"class":781},"    const",[760,4656,830],{"class":785},[760,4658,833],{"class":777},[760,4660,836],{"class":785},[760,4662,811],{"class":785},[760,4664,4665],{"class":777}," body\n",[760,4667,4668],{"class":762,"line":954},[760,4669,857],{"emptyLinePlaceholder":856},[760,4671,4672,4674,4676,4678,4680,4682,4684,4686,4688,4690],{"class":762,"line":985},[760,4673,4654],{"class":781},[760,4675,865],{"class":777},[760,4677,811],{"class":785},[760,4679,841],{"class":766},[760,4681,872],{"class":777},[760,4683,875],{"class":785},[760,4685,878],{"class":773},[760,4687,778],{"class":817},[760,4689,883],{"class":777},[760,4691,822],{"class":817},[760,4693,4694,4697,4699,4701,4703,4705,4707,4709,4711,4713,4715,4717,4719,4721,4723,4725,4727,4729,4731,4733,4735,4737,4739,4741],{"class":762,"line":1022},[760,4695,4696],{"class":777},"    log",[760,4698,875],{"class":785},[760,4700,896],{"class":773},[760,4702,778],{"class":817},[760,4704,901],{"class":785},[760,4706,865],{"class":817},[760,4708,906],{"class":785},[760,4710,830],{"class":785},[760,4712,911],{"class":817},[760,4714,906],{"class":785},[760,4716,865],{"class":777},[760,4718,875],{"class":785},[760,4720,920],{"class":777},[760,4722,875],{"class":785},[760,4724,925],{"class":777},[760,4726,928],{"class":785},[760,4728,931],{"class":817},[760,4730,906],{"class":785},[760,4732,865],{"class":777},[760,4734,875],{"class":785},[760,4736,940],{"class":777},[760,4738,836],{"class":785},[760,4740,836],{"class":785},[760,4742,822],{"class":817},[760,4744,4745],{"class":762,"line":1027},[760,4746,857],{"emptyLinePlaceholder":856},[760,4748,4749,4751,4753,4755,4757,4759,4761,4763,4765,4767,4769,4771],{"class":762,"line":1051},[760,4750,4654],{"class":781},[760,4752,959],{"class":777},[760,4754,811],{"class":785},[760,4756,841],{"class":766},[760,4758,966],{"class":777},[760,4760,875],{"class":785},[760,4762,971],{"class":773},[760,4764,778],{"class":817},[760,4766,976],{"class":777},[760,4768,875],{"class":785},[760,4770,940],{"class":777},[760,4772,822],{"class":817},[760,4774,4775,4777,4779,4781,4783,4785,4787,4789,4791,4793,4795,4797,4799,4801,4803,4805],{"class":762,"line":1064},[760,4776,4696],{"class":777},[760,4778,875],{"class":785},[760,4780,896],{"class":773},[760,4782,778],{"class":817},[760,4784,901],{"class":785},[760,4786,966],{"class":817},[760,4788,906],{"class":785},[760,4790,830],{"class":785},[760,4792,1004],{"class":817},[760,4794,906],{"class":785},[760,4796,959],{"class":777},[760,4798,875],{"class":785},[760,4800,1013],{"class":777},[760,4802,836],{"class":785},[760,4804,836],{"class":785},[760,4806,822],{"class":817},[760,4808,4809],{"class":762,"line":1079},[760,4810,857],{"emptyLinePlaceholder":856},[760,4812,4813,4816,4818,4820,4822,4824,4826,4828],{"class":762,"line":1099},[760,4814,4815],{"class":766},"    return",[760,4817,830],{"class":785},[760,4819,1160],{"class":817},[760,4821,906],{"class":785},[760,4823,959],{"class":777},[760,4825,875],{"class":785},[760,4827,1013],{"class":777},[760,4829,1171],{"class":785},[760,4831,4832,4835],{"class":762,"line":1116},[760,4833,4834],{"class":785},"  }",[760,4836,822],{"class":777},[577,4838,4839],{"v-slot:orpc":579},[751,4840,4843],{"className":753,"code":4841,"filename":4842,"language":756,"meta":579,"style":579},"import { os } from '@orpc\u002Fserver'\nimport { RPCHandler } from '@orpc\u002Fserver\u002Ffetch'\nimport { evlog, withEvlog, type EvlogOrpcContext } from 'evlog\u002Forpc'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst base = os.$context\u003CEvlogOrpcContext>().use(evlog())\n\nconst router = {\n  checkout: base\n    .input(z.object({ cartId: z.string() }))\n    .handler(async ({ input, context }) => {\n      const cart = await db.findCart(input.cartId)\n      context.log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n      const charge = await stripe.charge(cart.total)\n      context.log.set({ stripe: { chargeId: charge.id } })\n\n      return { orderId: charge.id }\n    }),\n}\n\nconst handler = withEvlog(new RPCHandler(router), { drain: createAxiomDrain() })\n","server\u002Forpc.ts",[644,4844,4845,4865,4885,4915,4933,4937,4973,4977,4988,4998,5036,5062,5089,5144,5148,5174,5212,5216,5235,5243,5247,5251],{"__ignoreMap":579},[760,4846,4847,4849,4851,4854,4856,4858,4860,4863],{"class":762,"line":763},[760,4848,1192],{"class":766},[760,4850,830],{"class":785},[760,4852,4853],{"class":777}," os",[760,4855,836],{"class":785},[760,4857,1206],{"class":766},[760,4859,1087],{"class":785},[760,4861,4862],{"class":1090},"@orpc\u002Fserver",[760,4864,1214],{"class":785},[760,4866,4867,4869,4871,4874,4876,4878,4880,4883],{"class":762,"line":802},[760,4868,1192],{"class":766},[760,4870,830],{"class":785},[760,4872,4873],{"class":777}," RPCHandler",[760,4875,836],{"class":785},[760,4877,1206],{"class":766},[760,4879,1087],{"class":785},[760,4881,4882],{"class":1090},"@orpc\u002Fserver\u002Ffetch",[760,4884,1214],{"class":785},[760,4886,4887,4889,4891,4893,4895,4897,4899,4901,4904,4906,4908,4910,4913],{"class":762,"line":825},[760,4888,1192],{"class":766},[760,4890,830],{"class":785},[760,4892,3482],{"class":777},[760,4894,928],{"class":785},[760,4896,1197],{"class":777},[760,4898,928],{"class":785},[760,4900,1652],{"class":766},[760,4902,4903],{"class":777}," EvlogOrpcContext",[760,4905,836],{"class":785},[760,4907,1206],{"class":766},[760,4909,1087],{"class":785},[760,4911,4912],{"class":1090},"evlog\u002Forpc",[760,4914,1214],{"class":785},[760,4916,4917,4919,4921,4923,4925,4927,4929,4931],{"class":762,"line":853},[760,4918,1192],{"class":766},[760,4920,830],{"class":785},[760,4922,3366],{"class":777},[760,4924,836],{"class":785},[760,4926,1206],{"class":766},[760,4928,1087],{"class":785},[760,4930,3375],{"class":1090},[760,4932,1214],{"class":785},[760,4934,4935],{"class":762,"line":860},[760,4936,857],{"emptyLinePlaceholder":856},[760,4938,4939,4941,4944,4946,4948,4950,4953,4955,4958,4960,4962,4964,4966,4968,4970],{"class":762,"line":888},[760,4940,3524],{"class":781},[760,4942,4943],{"class":777}," base ",[760,4945,1250],{"class":785},[760,4947,4853],{"class":777},[760,4949,875],{"class":785},[760,4951,4952],{"class":773},"$context",[760,4954,3888],{"class":785},[760,4956,4957],{"class":1686},"EvlogOrpcContext",[760,4959,3894],{"class":785},[760,4961,3429],{"class":777},[760,4963,875],{"class":785},[760,4965,3544],{"class":773},[760,4967,778],{"class":777},[760,4969,1231],{"class":773},[760,4971,4972],{"class":777},"())\n",[760,4974,4975],{"class":762,"line":949},[760,4976,857],{"emptyLinePlaceholder":856},[760,4978,4979,4981,4984,4986],{"class":762,"line":954},[760,4980,3524],{"class":781},[760,4982,4983],{"class":777}," router ",[760,4985,1250],{"class":785},[760,4987,799],{"class":785},[760,4989,4990,4993,4995],{"class":762,"line":985},[760,4991,4992],{"class":817},"  checkout",[760,4994,906],{"class":785},[760,4996,4997],{"class":777}," base\n",[760,4999,5000,5003,5006,5009,5011,5014,5016,5018,5020,5022,5025,5027,5030,5032,5034],{"class":762,"line":1022},[760,5001,5002],{"class":785},"    .",[760,5004,5005],{"class":773},"input",[760,5007,5008],{"class":777},"(z",[760,5010,875],{"class":785},[760,5012,5013],{"class":773},"object",[760,5015,778],{"class":777},[760,5017,901],{"class":785},[760,5019,833],{"class":817},[760,5021,906],{"class":785},[760,5023,5024],{"class":777}," z",[760,5026,875],{"class":785},[760,5028,5029],{"class":773},"string",[760,5031,3562],{"class":777},[760,5033,1177],{"class":785},[760,5035,3567],{"class":777},[760,5037,5038,5040,5043,5045,5047,5049,5052,5054,5056,5058,5060],{"class":762,"line":1027},[760,5039,5002],{"class":785},[760,5041,5042],{"class":773},"handler",[760,5044,778],{"class":777},[760,5046,782],{"class":781},[760,5048,1694],{"class":785},[760,5050,5051],{"class":789}," input",[760,5053,928],{"class":785},[760,5055,2980],{"class":789},[760,5057,1700],{"class":785},[760,5059,796],{"class":781},[760,5061,799],{"class":785},[760,5063,5064,5067,5069,5071,5073,5075,5077,5079,5081,5083,5085,5087],{"class":762,"line":1051},[760,5065,5066],{"class":781},"      const",[760,5068,865],{"class":777},[760,5070,811],{"class":785},[760,5072,841],{"class":766},[760,5074,872],{"class":777},[760,5076,875],{"class":785},[760,5078,878],{"class":773},[760,5080,778],{"class":817},[760,5082,5005],{"class":777},[760,5084,875],{"class":785},[760,5086,883],{"class":777},[760,5088,822],{"class":817},[760,5090,5091,5094,5096,5098,5100,5102,5104,5106,5108,5110,5112,5114,5116,5118,5120,5122,5124,5126,5128,5130,5132,5134,5136,5138,5140,5142],{"class":762,"line":1064},[760,5092,5093],{"class":777},"      context",[760,5095,875],{"class":785},[760,5097,2576],{"class":777},[760,5099,875],{"class":785},[760,5101,896],{"class":773},[760,5103,778],{"class":817},[760,5105,901],{"class":785},[760,5107,865],{"class":817},[760,5109,906],{"class":785},[760,5111,830],{"class":785},[760,5113,911],{"class":817},[760,5115,906],{"class":785},[760,5117,865],{"class":777},[760,5119,875],{"class":785},[760,5121,920],{"class":777},[760,5123,875],{"class":785},[760,5125,925],{"class":777},[760,5127,928],{"class":785},[760,5129,931],{"class":817},[760,5131,906],{"class":785},[760,5133,865],{"class":777},[760,5135,875],{"class":785},[760,5137,940],{"class":777},[760,5139,836],{"class":785},[760,5141,836],{"class":785},[760,5143,822],{"class":817},[760,5145,5146],{"class":762,"line":1079},[760,5147,857],{"emptyLinePlaceholder":856},[760,5149,5150,5152,5154,5156,5158,5160,5162,5164,5166,5168,5170,5172],{"class":762,"line":1099},[760,5151,5066],{"class":781},[760,5153,959],{"class":777},[760,5155,811],{"class":785},[760,5157,841],{"class":766},[760,5159,966],{"class":777},[760,5161,875],{"class":785},[760,5163,971],{"class":773},[760,5165,778],{"class":817},[760,5167,976],{"class":777},[760,5169,875],{"class":785},[760,5171,940],{"class":777},[760,5173,822],{"class":817},[760,5175,5176,5178,5180,5182,5184,5186,5188,5190,5192,5194,5196,5198,5200,5202,5204,5206,5208,5210],{"class":762,"line":1116},[760,5177,5093],{"class":777},[760,5179,875],{"class":785},[760,5181,2576],{"class":777},[760,5183,875],{"class":785},[760,5185,896],{"class":773},[760,5187,778],{"class":817},[760,5189,901],{"class":785},[760,5191,966],{"class":817},[760,5193,906],{"class":785},[760,5195,830],{"class":785},[760,5197,1004],{"class":817},[760,5199,906],{"class":785},[760,5201,959],{"class":777},[760,5203,875],{"class":785},[760,5205,1013],{"class":777},[760,5207,836],{"class":785},[760,5209,836],{"class":785},[760,5211,822],{"class":817},[760,5213,5214],{"class":762,"line":1133},[760,5215,857],{"emptyLinePlaceholder":856},[760,5217,5218,5221,5223,5225,5227,5229,5231,5233],{"class":762,"line":1141},[760,5219,5220],{"class":766},"      return",[760,5222,830],{"class":785},[760,5224,1160],{"class":817},[760,5226,906],{"class":785},[760,5228,959],{"class":777},[760,5230,875],{"class":785},[760,5232,1013],{"class":777},[760,5234,1171],{"class":785},[760,5236,5237,5239,5241],{"class":762,"line":1147},[760,5238,1136],{"class":785},[760,5240,793],{"class":777},[760,5242,1076],{"class":785},[760,5244,5245],{"class":762,"line":1152},[760,5246,2007],{"class":785},[760,5248,5249],{"class":762,"line":1174},[760,5250,857],{"emptyLinePlaceholder":856},[760,5252,5253,5255,5258,5260,5262,5264,5267,5269,5272,5274,5276,5278,5280,5282,5284,5286],{"class":762,"line":1541},[760,5254,3524],{"class":781},[760,5256,5257],{"class":777}," handler ",[760,5259,1250],{"class":785},[760,5261,1197],{"class":773},[760,5263,778],{"class":777},[760,5265,5266],{"class":785},"new",[760,5268,4873],{"class":773},[760,5270,5271],{"class":777},"(router)",[760,5273,928],{"class":785},[760,5275,830],{"class":785},[760,5277,3555],{"class":817},[760,5279,906],{"class":785},[760,5281,3366],{"class":773},[760,5283,3562],{"class":777},[760,5285,1177],{"class":785},[760,5287,822],{"class":777},[577,5289,5290],{"v-slot:cloudflare":579},[751,5291,5294],{"className":753,"code":5292,"filename":5293,"language":756,"meta":579,"style":579},"import { defineWorkerFetch, initWorkersLogger } from 'evlog\u002Fworkers'\n\ninitWorkersLogger({ env: { service: 'checkout-worker' } })\n\nexport default defineWorkerFetch(async (request, env, _ctx, log) => {\n  const { cartId } = await request.json()\n  const cart = await env.DB.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  log.emit()\n  return Response.json({ orderId: cart.id })\n})\n","src\u002Fworker.ts",[644,5295,5296,5321,5325,5359,5363,5398,5420,5447,5497,5501,5512,5540],{"__ignoreMap":579},[760,5297,5298,5300,5302,5305,5307,5310,5312,5314,5316,5319],{"class":762,"line":763},[760,5299,1192],{"class":766},[760,5301,830],{"class":785},[760,5303,5304],{"class":777}," defineWorkerFetch",[760,5306,928],{"class":785},[760,5308,5309],{"class":777}," initWorkersLogger",[760,5311,836],{"class":785},[760,5313,1206],{"class":766},[760,5315,1087],{"class":785},[760,5317,5318],{"class":1090},"evlog\u002Fworkers",[760,5320,1214],{"class":785},[760,5322,5323],{"class":762,"line":802},[760,5324,857],{"emptyLinePlaceholder":856},[760,5326,5327,5330,5332,5334,5337,5339,5341,5344,5346,5348,5351,5353,5355,5357],{"class":762,"line":825},[760,5328,5329],{"class":773},"initWorkersLogger",[760,5331,778],{"class":777},[760,5333,901],{"class":785},[760,5335,5336],{"class":817}," env",[760,5338,906],{"class":785},[760,5340,830],{"class":785},[760,5342,5343],{"class":817}," service",[760,5345,906],{"class":785},[760,5347,1087],{"class":785},[760,5349,5350],{"class":1090},"checkout-worker",[760,5352,1094],{"class":785},[760,5354,836],{"class":785},[760,5356,836],{"class":785},[760,5358,822],{"class":777},[760,5360,5361],{"class":762,"line":853},[760,5362,857],{"emptyLinePlaceholder":856},[760,5364,5365,5367,5369,5371,5373,5375,5377,5379,5381,5383,5385,5388,5390,5392,5394,5396],{"class":762,"line":860},[760,5366,767],{"class":766},[760,5368,770],{"class":766},[760,5370,5304],{"class":773},[760,5372,778],{"class":777},[760,5374,782],{"class":781},[760,5376,786],{"class":785},[760,5378,4325],{"class":789},[760,5380,928],{"class":785},[760,5382,5336],{"class":789},[760,5384,928],{"class":785},[760,5386,5387],{"class":789}," _ctx",[760,5389,928],{"class":785},[760,5391,808],{"class":789},[760,5393,793],{"class":785},[760,5395,796],{"class":781},[760,5397,799],{"class":785},[760,5399,5400,5402,5404,5406,5408,5410,5412,5414,5416,5418],{"class":762,"line":888},[760,5401,805],{"class":781},[760,5403,830],{"class":785},[760,5405,833],{"class":777},[760,5407,836],{"class":785},[760,5409,811],{"class":785},[760,5411,841],{"class":766},[760,5413,1697],{"class":777},[760,5415,875],{"class":785},[760,5417,1302],{"class":773},[760,5419,1280],{"class":817},[760,5421,5422,5424,5426,5428,5430,5432,5434,5437,5439,5441,5443,5445],{"class":762,"line":949},[760,5423,805],{"class":781},[760,5425,865],{"class":777},[760,5427,811],{"class":785},[760,5429,841],{"class":766},[760,5431,5336],{"class":777},[760,5433,875],{"class":785},[760,5435,5436],{"class":777},"DB",[760,5438,875],{"class":785},[760,5440,878],{"class":773},[760,5442,778],{"class":817},[760,5444,883],{"class":777},[760,5446,822],{"class":817},[760,5448,5449,5451,5453,5455,5457,5459,5461,5463,5465,5467,5469,5471,5473,5475,5477,5479,5481,5483,5485,5487,5489,5491,5493,5495],{"class":762,"line":954},[760,5450,891],{"class":777},[760,5452,875],{"class":785},[760,5454,896],{"class":773},[760,5456,778],{"class":817},[760,5458,901],{"class":785},[760,5460,865],{"class":817},[760,5462,906],{"class":785},[760,5464,830],{"class":785},[760,5466,911],{"class":817},[760,5468,906],{"class":785},[760,5470,865],{"class":777},[760,5472,875],{"class":785},[760,5474,920],{"class":777},[760,5476,875],{"class":785},[760,5478,925],{"class":777},[760,5480,928],{"class":785},[760,5482,931],{"class":817},[760,5484,906],{"class":785},[760,5486,865],{"class":777},[760,5488,875],{"class":785},[760,5490,940],{"class":777},[760,5492,836],{"class":785},[760,5494,836],{"class":785},[760,5496,822],{"class":817},[760,5498,5499],{"class":762,"line":985},[760,5500,857],{"emptyLinePlaceholder":856},[760,5502,5503,5505,5507,5510],{"class":762,"line":1022},[760,5504,891],{"class":777},[760,5506,875],{"class":785},[760,5508,5509],{"class":773},"emit",[760,5511,1280],{"class":817},[760,5513,5514,5516,5518,5520,5522,5524,5526,5528,5530,5532,5534,5536,5538],{"class":762,"line":1027},[760,5515,1155],{"class":766},[760,5517,1551],{"class":777},[760,5519,875],{"class":785},[760,5521,1302],{"class":773},[760,5523,778],{"class":817},[760,5525,901],{"class":785},[760,5527,1160],{"class":817},[760,5529,906],{"class":785},[760,5531,865],{"class":777},[760,5533,875],{"class":785},[760,5535,1013],{"class":777},[760,5537,836],{"class":785},[760,5539,822],{"class":817},[760,5541,5542,5544],{"class":762,"line":1051},[760,5543,1177],{"class":785},[760,5545,822],{"class":777},[577,5547,5548],{"v-slot:bun":579},[751,5549,5552],{"className":753,"code":5550,"filename":5551,"language":756,"meta":579,"style":579},"import { initLogger, createLogger } from 'evlog'\n\ninitLogger({ env: { service: 'migrate' } })\n\nconst log = createLogger({ task: 'user-migration' })\n\nconst users = await db.query('SELECT * FROM legacy_users')\nlog.set({ found: users.length })\n\nfor (const user of users) {\n  await newDb.upsert({ id: user.id, email: user.email, plan: user.plan })\n}\n\nlog.set({ migrated: users.length, status: 'complete' })\nlog.emit()\n","scripts\u002Fmigrate-users.ts",[644,5553,5554,5578,5582,5614,5618,5649,5653,5682,5711,5715,5735,5796,5800,5804,5845],{"__ignoreMap":579},[760,5555,5556,5558,5560,5563,5565,5568,5570,5572,5574,5576],{"class":762,"line":763},[760,5557,1192],{"class":766},[760,5559,830],{"class":785},[760,5561,5562],{"class":777}," initLogger",[760,5564,928],{"class":785},[760,5566,5567],{"class":777}," createLogger",[760,5569,836],{"class":785},[760,5571,1206],{"class":766},[760,5573,1087],{"class":785},[760,5575,1231],{"class":1090},[760,5577,1214],{"class":785},[760,5579,5580],{"class":762,"line":802},[760,5581,857],{"emptyLinePlaceholder":856},[760,5583,5584,5587,5589,5591,5593,5595,5597,5599,5601,5603,5606,5608,5610,5612],{"class":762,"line":825},[760,5585,5586],{"class":773},"initLogger",[760,5588,778],{"class":777},[760,5590,901],{"class":785},[760,5592,5336],{"class":817},[760,5594,906],{"class":785},[760,5596,830],{"class":785},[760,5598,5343],{"class":817},[760,5600,906],{"class":785},[760,5602,1087],{"class":785},[760,5604,5605],{"class":1090},"migrate",[760,5607,1094],{"class":785},[760,5609,836],{"class":785},[760,5611,836],{"class":785},[760,5613,822],{"class":777},[760,5615,5616],{"class":762,"line":853},[760,5617,857],{"emptyLinePlaceholder":856},[760,5619,5620,5622,5625,5627,5629,5631,5633,5636,5638,5640,5643,5645,5647],{"class":762,"line":860},[760,5621,3524],{"class":781},[760,5623,5624],{"class":777}," log ",[760,5626,1250],{"class":785},[760,5628,5567],{"class":773},[760,5630,778],{"class":777},[760,5632,901],{"class":785},[760,5634,5635],{"class":817}," task",[760,5637,906],{"class":785},[760,5639,1087],{"class":785},[760,5641,5642],{"class":1090},"user-migration",[760,5644,1094],{"class":785},[760,5646,836],{"class":785},[760,5648,822],{"class":777},[760,5650,5651],{"class":762,"line":888},[760,5652,857],{"emptyLinePlaceholder":856},[760,5654,5655,5657,5660,5662,5664,5666,5668,5671,5673,5675,5678,5680],{"class":762,"line":949},[760,5656,3524],{"class":781},[760,5658,5659],{"class":777}," users ",[760,5661,1250],{"class":785},[760,5663,841],{"class":766},[760,5665,872],{"class":777},[760,5667,875],{"class":785},[760,5669,5670],{"class":773},"query",[760,5672,778],{"class":777},[760,5674,1094],{"class":785},[760,5676,5677],{"class":1090},"SELECT * FROM legacy_users",[760,5679,1094],{"class":785},[760,5681,822],{"class":777},[760,5683,5684,5686,5688,5690,5692,5694,5697,5699,5702,5704,5707,5709],{"class":762,"line":954},[760,5685,2576],{"class":777},[760,5687,875],{"class":785},[760,5689,896],{"class":773},[760,5691,778],{"class":777},[760,5693,901],{"class":785},[760,5695,5696],{"class":817}," found",[760,5698,906],{"class":785},[760,5700,5701],{"class":777}," users",[760,5703,875],{"class":785},[760,5705,5706],{"class":777},"length ",[760,5708,1177],{"class":785},[760,5710,822],{"class":777},[760,5712,5713],{"class":762,"line":985},[760,5714,857],{"emptyLinePlaceholder":856},[760,5716,5717,5720,5722,5724,5727,5730,5733],{"class":762,"line":1022},[760,5718,5719],{"class":766},"for",[760,5721,786],{"class":777},[760,5723,3524],{"class":781},[760,5725,5726],{"class":777}," user ",[760,5728,5729],{"class":785},"of",[760,5731,5732],{"class":777}," users) ",[760,5734,1048],{"class":785},[760,5736,5737,5740,5743,5745,5748,5750,5752,5755,5757,5760,5762,5764,5766,5769,5771,5773,5775,5778,5780,5783,5785,5787,5789,5792,5794],{"class":762,"line":1027},[760,5738,5739],{"class":766},"  await",[760,5741,5742],{"class":777}," newDb",[760,5744,875],{"class":785},[760,5746,5747],{"class":773},"upsert",[760,5749,778],{"class":817},[760,5751,901],{"class":785},[760,5753,5754],{"class":817}," id",[760,5756,906],{"class":785},[760,5758,5759],{"class":777}," user",[760,5761,875],{"class":785},[760,5763,1013],{"class":777},[760,5765,928],{"class":785},[760,5767,5768],{"class":817}," email",[760,5770,906],{"class":785},[760,5772,5759],{"class":777},[760,5774,875],{"class":785},[760,5776,5777],{"class":777},"email",[760,5779,928],{"class":785},[760,5781,5782],{"class":817}," plan",[760,5784,906],{"class":785},[760,5786,5759],{"class":777},[760,5788,875],{"class":785},[760,5790,5791],{"class":777},"plan",[760,5793,836],{"class":785},[760,5795,822],{"class":817},[760,5797,5798],{"class":762,"line":1051},[760,5799,2007],{"class":785},[760,5801,5802],{"class":762,"line":1064},[760,5803,857],{"emptyLinePlaceholder":856},[760,5805,5806,5808,5810,5812,5814,5816,5819,5821,5823,5825,5827,5829,5832,5834,5836,5839,5841,5843],{"class":762,"line":1079},[760,5807,2576],{"class":777},[760,5809,875],{"class":785},[760,5811,896],{"class":773},[760,5813,778],{"class":777},[760,5815,901],{"class":785},[760,5817,5818],{"class":817}," migrated",[760,5820,906],{"class":785},[760,5822,5701],{"class":777},[760,5824,875],{"class":785},[760,5826,925],{"class":777},[760,5828,928],{"class":785},[760,5830,5831],{"class":817}," status",[760,5833,906],{"class":785},[760,5835,1087],{"class":785},[760,5837,5838],{"class":1090},"complete",[760,5840,1094],{"class":785},[760,5842,836],{"class":785},[760,5844,822],{"class":777},[760,5846,5847,5849,5851,5853],{"class":762,"line":1099},[760,5848,2576],{"class":777},[760,5850,875],{"class":785},[760,5852,5509],{"class":773},[760,5854,1280],{"class":777},[5856,5857,5858,5861,5864],"landing-faq",{},[577,5859,5860],{"v-slot:headline":579},"FAQ",[577,5862,5863],{"v-slot:title":579},"Before you install",[577,5865,5866],{"v-slot:body":579},[5867,5868,5870,5900,5911,5919,5940,5973],"accordion",{"type":5869},"single",[5871,5872,5874,5875,5878,5879,5882,5883,5886,5887,5890,5891,5895,5896,875],"accordion-item",{"label":5873},"I already use pino. What actually changes?","evlog supplies a context accumulator and integrations that finish the request event. ",[644,5876,5877],{},"log.set()"," adds fields during the operation, and the emitted event carries its outcome and error together. Pino can also emit a completed object once, with accumulation managed by your application. ",[644,5880,5881],{},"createError()"," adds ",[644,5884,5885],{},"why"," and ",[644,5888,5889],{},"fix",", and a ",[5892,5893,5894],"a",{"href":77},"catalog"," gives recurring failures a stable code. Call signatures, serializers, and output configuration need an explicit migration. See ",[5892,5897,5899],{"href":5898},"\u002Freference\u002Fvs-other-loggers#choose-the-comparison-for-your-stack","the comparison for your stack",[5871,5901,5903,5904,5906,5907,875],{"label":5902},"My app is already in production. Is it too late?","No, and you do not have to guess where to start. ",[644,5905,646],{}," reads your source and scores every entry point on the context it will hand you when it breaks, then names the ones to fix first. It needs no traffic, no agent, and no deploy, so you get that list before the next incident instead of during it. Day one or year three, the work is the same list. See ",[5892,5908,5910],{"href":5909},"\u002Fcli\u002Fmap#adding-it-to-an-app-already-in-production","adding it to an app already in production",[5871,5912,5914,5915,875],{"label":5913},"Do I have to change where my logs go?","No, and you keep the platform you already pay for. evlog produces the events, a drain ships them: Axiom, Datadog, Sentry, Better Stack, PostHog, Loki, ClickHouse, OTLP, or the filesystem. Changing provider is a drain swap, not an architecture change, because your handlers never name a destination. If you are building the platform rather than buying one, that same pipeline is where you plug in. See ",[5892,5916,5918],{"href":5917},"\u002Fintegrate\u002Fadapters\u002Foverview#send-events-without-naming-a-destination-in-your-code","how a drain keeps the destination out of your code",[5871,5920,5922,5923,5927,5928,5931,5932,5935,5936,875],{"label":5921},"Will it cost me more to ship these logs?","It usually costs less. One request leaves one event instead of four lines, which measures ",[5924,5925,5926],"strong",{},"56% fewer bytes and 75% fewer events"," on the checkout shape in the ",[5892,5929,5930],{"href":539},"log cost guide",", because the level, timestamp, host and request bindings stop repeating on every line. Which of those two numbers moves your bill depends on your provider: most charge per GB ingested, so you save on bytes, while a provider that also bills per million events indexed rewards the event count instead. Then ",[5892,5933,5934],{"href":62},"sampling"," drops what you were never going to read and force-keeps errors and slow requests. Price it against your own traffic on ",[5892,5937,5939],{"href":5938},"\u002Freference\u002Fcost#which-number-moves-your-bill","which number moves your bill",[5871,5941,5943,5944,5947,5948,5951,5952,5954,5955,5957,5958,5960,5961,5963,5964,5968,5969,5972],{"label":5942},"How much work is it to adopt?","You migrate one handler at a time. ",[644,5945,5946],{},"log.info()"," behaves like ",[644,5949,5950],{},"console.log",", so nothing breaks on the first commit. Two calls are worth learning: ",[644,5953,5877],{},", which adds context to the event in flight, and ",[644,5956,5881],{},", which attaches a ",[644,5959,5885],{}," and a ",[644,5962,5889],{}," to an error instead of a bare stack. See ",[5892,5965,5967],{"href":5966},"\u002Fstart\u002Fquick-start#how-much-of-this-do-you-need-on-day-one","how much of this you need on day one",", or ",[5892,5970,5971],{"href":11},"what evlog is"," if you want the shape before the code.",[5871,5974,5976,5977,5980,5981,5985],{"label":5975},"What does it cost at runtime?","The core package has ",[5924,5978,5979],{},"zero runtime dependencies",". Execution cost depends on context size, redaction, output, and delivery. A silent construction benchmark excludes console serialization and remote export, so it cannot establish a fixed cost per production request. Follow ",[5892,5982,5984],{"href":5983},"\u002Freference\u002Fperformance#what-it-costs-on-one-real-request","what it costs on one real request"," to measure the complete path on your runtime.",[5987,5988,5989],"landing-cta",{},[577,5990,5991],{"v-slot:description":579},"One logger for every context. Set it up in 10 minutes. Your future self will thank you.",[5993,5994,5995],"style",{},"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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}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 .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 pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":579,"searchDepth":802,"depth":802,"links":5997},[],"A modern TypeScript logger built for everything you ship — scripts, libraries, jobs, edge, requests. Simple logs, wide events, and structured errors in one API.","md",null,{},"\u002Flanding",{"title":569,"description":5998},"0.landing","F3Ju--XTLj2oNakwV4pwCae2yhB-Og8G823JgKz-eFk",1788921623694]