[{"data":1,"prerenderedAt":4088},["ShallowReactive",2],{"navigation_docs":3,"-learn-sampling":612,"-learn-sampling-surround":4083},[4,35,85,148,328,489,548,587],{"title":5,"path":6,"stem":7,"children":8,"page":34},"Start","\u002Fstart","1.start",[9,14,19,24,29],{"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",{"title":30,"path":31,"stem":32,"icon":33},"Choose your logger","\u002Fstart\u002Ftypescript-logging-library","1.start\u002F5.typescript-logging-library","i-lucide-file-code",false,{"title":36,"path":37,"stem":38,"children":39,"page":34},"Learn","\u002Flearn","2.learn",[40,45,50,55,60,65,70,75,80],{"title":41,"path":42,"stem":43,"icon":44},"Overview","\u002Flearn\u002Foverview","2.learn\u002F0.overview","i-lucide-list",{"title":46,"path":47,"stem":48,"icon":49},"Simple Logging","\u002Flearn\u002Fsimple-logging","2.learn\u002F1.simple-logging","i-lucide-terminal",{"title":51,"path":52,"stem":53,"icon":54},"Wide Events","\u002Flearn\u002Fwide-events","2.learn\u002F2.wide-events","i-lucide-layers",{"title":56,"path":57,"stem":58,"icon":59},"Structured Errors","\u002Flearn\u002Fstructured-errors","2.learn\u002F3.structured-errors","i-lucide-shield-alert",{"title":61,"path":62,"stem":63,"icon":64},"Lifecycle","\u002Flearn\u002Flifecycle","2.learn\u002F4.lifecycle","i-lucide-arrow-right-left",{"title":66,"path":67,"stem":68,"icon":69},"Sampling","\u002Flearn\u002Fsampling","2.learn\u002F5.sampling","i-lucide-filter",{"title":71,"path":72,"stem":73,"icon":74},"Auto-Redaction","\u002Flearn\u002Fredaction","2.learn\u002F6.redaction","i-lucide-eye-off",{"title":76,"path":77,"stem":78,"icon":79},"Typed Fields","\u002Flearn\u002Ftyped-fields","2.learn\u002F7.typed-fields","i-simple-icons-typescript",{"title":81,"path":82,"stem":83,"icon":84},"Catalogs","\u002Flearn\u002Fcatalogs","2.learn\u002F8.catalogs","i-lucide-book-open",{"title":86,"path":87,"stem":88,"children":89,"page":34},"CLI","\u002Fcli","3.cli",[90,93,98,103,108,113,118,123,128,133,138,143],{"title":41,"path":91,"stem":92,"icon":49},"\u002Fcli\u002Foverview","3.cli\u002F0.overview",{"title":94,"path":95,"stem":96,"icon":97},"init","\u002Fcli\u002Finit","3.cli\u002F1.init","i-lucide-wand-sparkles",{"title":99,"path":100,"stem":101,"icon":102},"logs","\u002Fcli\u002Flogs","3.cli\u002F10.logs","i-lucide-scroll-text",{"title":104,"path":105,"stem":106,"icon":107},"config","\u002Fcli\u002Fconfig","3.cli\u002F11.config","i-lucide-settings-2",{"title":109,"path":110,"stem":111,"icon":112},"map","\u002Fcli\u002Fmap","3.cli\u002F2.map","i-lucide-radar",{"title":114,"path":115,"stem":116,"icon":117},"Rules","\u002Fcli\u002Frules","3.cli\u002F3.rules","i-lucide-list-checks",{"title":119,"path":120,"stem":121,"icon":122},"Scoring","\u002Fcli\u002Fscoring","3.cli\u002F4.scoring","i-lucide-gauge",{"title":124,"path":125,"stem":126,"icon":127},"CI","\u002Fcli\u002Fci","3.cli\u002F5.ci","i-lucide-git-pull-request",{"title":129,"path":130,"stem":131,"icon":132},"doctor","\u002Fcli\u002Fdoctor","3.cli\u002F6.doctor","i-lucide-stethoscope",{"title":134,"path":135,"stem":136,"icon":137},"telemetry","\u002Fcli\u002Ftelemetry","3.cli\u002F7.telemetry","i-lucide-bar-chart-3",{"title":139,"path":140,"stem":141,"icon":142},"agents","\u002Fcli\u002Fagents","3.cli\u002F8.agents","i-lucide-bot",{"title":144,"path":145,"stem":146,"icon":147},"Observability Score","\u002Fcli\u002Fobservability-score","3.cli\u002F9.observability-score","i-lucide-activity",{"title":149,"path":150,"stem":151,"children":152,"page":34},"Integrate","\u002Fintegrate","4.integrate",[153,157,240],{"title":41,"path":154,"stem":155,"icon":156},"\u002Fintegrate\u002Foverview","4.integrate\u002F0.overview","i-lucide-plug",{"title":158,"path":159,"stem":160,"children":161,"page":34},"Adapters","\u002Fintegrate\u002Fadapters","4.integrate\u002Fadapters",[162,165,195,220],{"title":41,"path":163,"stem":164,"icon":44},"\u002Fintegrate\u002Fadapters\u002Foverview","4.integrate\u002Fadapters\u002F01.overview",{"title":166,"path":167,"stem":168,"children":169,"page":34},"Cloud","\u002Fintegrate\u002Fadapters\u002Fcloud","4.integrate\u002Fadapters\u002Fcloud",[170,175,180,185,190],{"title":171,"path":172,"stem":173,"icon":174},"Axiom","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Faxiom","4.integrate\u002Fadapters\u002Fcloud\u002F01.axiom","i-custom-axiom",{"title":176,"path":177,"stem":178,"icon":179},"PostHog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog","4.integrate\u002Fadapters\u002Fcloud\u002F02.posthog","i-simple-icons-posthog",{"title":181,"path":182,"stem":183,"icon":184},"Sentry","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fsentry","4.integrate\u002Fadapters\u002Fcloud\u002F03.sentry","i-simple-icons-sentry",{"title":186,"path":187,"stem":188,"icon":189},"Better Stack","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fbetter-stack","4.integrate\u002Fadapters\u002Fcloud\u002F04.better-stack","i-simple-icons-betterstack",{"title":191,"path":192,"stem":193,"icon":194},"Datadog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fdatadog","4.integrate\u002Fadapters\u002Fcloud\u002F05.datadog","i-simple-icons-datadog",{"title":196,"path":197,"stem":198,"children":199,"page":34},"Cloud or Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fhybrid","4.integrate\u002Fadapters\u002Fhybrid",[200,205,210,215],{"title":201,"path":202,"stem":203,"icon":204},"Grafana Loki","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Floki","4.integrate\u002Fadapters\u002Fhybrid\u002F01.loki","i-simple-icons-grafana",{"title":206,"path":207,"stem":208,"icon":209},"ClickHouse","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fclickhouse","4.integrate\u002Fadapters\u002Fhybrid\u002F02.clickhouse","i-simple-icons-clickhouse",{"title":211,"path":212,"stem":213,"icon":214},"OTLP","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fotlp","4.integrate\u002Fadapters\u002Fhybrid\u002F03.otlp","i-simple-icons-opentelemetry",{"title":216,"path":217,"stem":218,"icon":219},"HyperDX","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fhyperdx","4.integrate\u002Fadapters\u002Fhybrid\u002F04.hyperdx","i-custom-hyperdx",{"title":221,"path":222,"stem":223,"children":224,"page":34},"Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fself-hosted","4.integrate\u002Fadapters\u002Fself-hosted",[225,230,235],{"title":226,"path":227,"stem":228,"icon":229},"File System","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Ffs","4.integrate\u002Fadapters\u002Fself-hosted\u002F01.fs","i-lucide-hard-drive",{"title":231,"path":232,"stem":233,"icon":234},"NuxtHub","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fnuxthub","4.integrate\u002Fadapters\u002Fself-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":236,"path":237,"stem":238,"icon":239},"Memory","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fmemory","4.integrate\u002Fadapters\u002Fself-hosted\u002F03.memory","i-lucide-cpu",{"title":241,"path":242,"stem":243,"children":244,"page":34},"Frameworks","\u002Fintegrate\u002Fframeworks","4.integrate\u002Fframeworks",[245,249,254,259,264,269,274,279,284,289,294,299,304,309,313,318,323],{"title":41,"path":246,"stem":247,"icon":248},"\u002Fintegrate\u002Fframeworks\u002Foverview","4.integrate\u002Fframeworks\u002F00.overview","i-lucide-layout-grid",{"title":250,"path":251,"stem":252,"icon":253},"Nuxt","\u002Fintegrate\u002Fframeworks\u002Fnuxt","4.integrate\u002Fframeworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":255,"path":256,"stem":257,"icon":258},"Next.js","\u002Fintegrate\u002Fframeworks\u002Fnextjs","4.integrate\u002Fframeworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":260,"path":261,"stem":262,"icon":263},"SvelteKit","\u002Fintegrate\u002Fframeworks\u002Fsveltekit","4.integrate\u002Fframeworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":265,"path":266,"stem":267,"icon":268},"Nitro","\u002Fintegrate\u002Fframeworks\u002Fnitro","4.integrate\u002Fframeworks\u002F04.nitro","i-custom-nitro",{"title":270,"path":271,"stem":272,"icon":273},"TanStack Start","\u002Fintegrate\u002Fframeworks\u002Ftanstack-start","4.integrate\u002Fframeworks\u002F05.tanstack-start","i-custom-tanstack",{"title":275,"path":276,"stem":277,"icon":278},"NestJS","\u002Fintegrate\u002Fframeworks\u002Fnestjs","4.integrate\u002Fframeworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":280,"path":281,"stem":282,"icon":283},"Express","\u002Fintegrate\u002Fframeworks\u002Fexpress","4.integrate\u002Fframeworks\u002F07.express","i-simple-icons-express",{"title":285,"path":286,"stem":287,"icon":288},"Hono","\u002Fintegrate\u002Fframeworks\u002Fhono","4.integrate\u002Fframeworks\u002F08.hono","i-simple-icons-hono",{"title":290,"path":291,"stem":292,"icon":293},"Fastify","\u002Fintegrate\u002Fframeworks\u002Ffastify","4.integrate\u002Fframeworks\u002F09.fastify","i-simple-icons-fastify",{"title":295,"path":296,"stem":297,"icon":298},"Elysia","\u002Fintegrate\u002Fframeworks\u002Felysia","4.integrate\u002Fframeworks\u002F10.elysia","i-custom-elysia",{"title":300,"path":301,"stem":302,"icon":303},"React Router","\u002Fintegrate\u002Fframeworks\u002Freact-router","4.integrate\u002Fframeworks\u002F11.react-router","i-custom-reactrouter",{"title":305,"path":306,"stem":307,"icon":308},"Cloudflare Workers","\u002Fintegrate\u002Fframeworks\u002Fcloudflare-workers","4.integrate\u002Fframeworks\u002F12.cloudflare-workers","i-simple-icons-cloudflare",{"title":310,"path":311,"stem":312,"icon":79},"Standalone","\u002Fintegrate\u002Fframeworks\u002Fstandalone","4.integrate\u002Fframeworks\u002F13.standalone",{"title":314,"path":315,"stem":316,"icon":317},"Astro","\u002Fintegrate\u002Fframeworks\u002Fastro","4.integrate\u002Fframeworks\u002F14.astro","i-simple-icons-astro",{"title":319,"path":320,"stem":321,"icon":322},"oRPC","\u002Fintegrate\u002Fframeworks\u002Forpc","4.integrate\u002Fframeworks\u002F15.orpc","i-lucide-network",{"title":324,"path":325,"stem":326,"icon":327},"AWS Lambda","\u002Fintegrate\u002Fframeworks\u002Faws-lambda","4.integrate\u002Fframeworks\u002F16.aws-lambda","i-custom-lambda",{"title":329,"path":330,"stem":331,"children":332,"page":34},"Use Cases","\u002Fuse-cases","5.use-cases",[333,336,341,369,396,428,449,454,459,463],{"title":41,"path":334,"stem":335,"icon":117},"\u002Fuse-cases\u002Foverview","5.use-cases\u002F0.overview",{"title":337,"path":338,"stem":339,"icon":340},"Client Logging","\u002Fuse-cases\u002Fclient-logging","5.use-cases\u002F1.client-logging","i-lucide-monitor",{"title":342,"icon":343,"path":344,"stem":345,"children":346,"page":34},"AI SDK","i-simple-icons-vercel","\u002Fuse-cases\u002Fai-sdk","5.use-cases\u002F2.ai-sdk",[347,350,355,360,365],{"title":41,"path":348,"stem":349,"icon":44},"\u002Fuse-cases\u002Fai-sdk\u002Foverview","5.use-cases\u002F2.ai-sdk\u002F01.overview",{"title":351,"path":352,"stem":353,"icon":354},"Usage","\u002Fuse-cases\u002Fai-sdk\u002Fusage","5.use-cases\u002F2.ai-sdk\u002F02.usage","i-lucide-code",{"title":356,"path":357,"stem":358,"icon":359},"Options","\u002Fuse-cases\u002Fai-sdk\u002Foptions","5.use-cases\u002F2.ai-sdk\u002F03.options","i-lucide-sliders",{"title":361,"path":362,"stem":363,"icon":364},"Metadata","\u002Fuse-cases\u002Fai-sdk\u002Fmetadata","5.use-cases\u002F2.ai-sdk\u002F04.metadata","i-lucide-database",{"title":366,"path":367,"stem":368,"icon":147},"Telemetry","\u002Fuse-cases\u002Fai-sdk\u002Ftelemetry","5.use-cases\u002F2.ai-sdk\u002F05.telemetry",{"title":370,"icon":371,"path":372,"stem":373,"children":374,"page":34},"Better Auth","i-simple-icons-betterauth","\u002Fuse-cases\u002Fbetter-auth","5.use-cases\u002F3.better-auth",[375,378,383,388,392],{"title":41,"path":376,"stem":377,"icon":44},"\u002Fuse-cases\u002Fbetter-auth\u002Foverview","5.use-cases\u002F3.better-auth\u002F01.overview",{"title":379,"path":380,"stem":381,"icon":382},"Identify User","\u002Fuse-cases\u002Fbetter-auth\u002Fidentify-user","5.use-cases\u002F3.better-auth\u002F02.identify-user","i-lucide-user-check",{"title":384,"path":385,"stem":386,"icon":387},"Middleware","\u002Fuse-cases\u002Fbetter-auth\u002Fmiddleware","5.use-cases\u002F3.better-auth\u002F03.middleware","i-lucide-shield",{"title":389,"path":390,"stem":391,"icon":340},"Client Sync","\u002Fuse-cases\u002Fbetter-auth\u002Fclient-sync","5.use-cases\u002F3.better-auth\u002F04.client-sync",{"title":393,"path":394,"stem":395,"icon":122},"Performance","\u002Fuse-cases\u002Fbetter-auth\u002Fperformance","5.use-cases\u002F3.better-auth\u002F05.performance",{"title":397,"icon":398,"path":399,"stem":400,"children":401,"page":34},"Audit Logs","i-lucide-shield-check","\u002Fuse-cases\u002Faudit","5.use-cases\u002F4.audit",[402,405,410,415,420,424],{"title":41,"path":403,"stem":404,"icon":44},"\u002Fuse-cases\u002Faudit\u002Foverview","5.use-cases\u002F4.audit\u002F01.overview",{"title":406,"path":407,"stem":408,"icon":409},"Schema","\u002Fuse-cases\u002Faudit\u002Fschema","5.use-cases\u002F4.audit\u002F02.schema","i-lucide-file-text",{"title":411,"path":412,"stem":413,"icon":414},"Recording","\u002Fuse-cases\u002Faudit\u002Frecording","5.use-cases\u002F4.audit\u002F03.recording","i-lucide-pen-line",{"title":416,"path":417,"stem":418,"icon":419},"Drains","\u002Fuse-cases\u002Faudit\u002Fpipeline","5.use-cases\u002F4.audit\u002F04.pipeline","i-lucide-link",{"title":421,"path":422,"stem":423,"icon":398},"Compliance","\u002Fuse-cases\u002Faudit\u002Fcompliance","5.use-cases\u002F4.audit\u002F05.compliance",{"title":425,"path":426,"stem":427,"icon":84},"Recipes","\u002Fuse-cases\u002Faudit\u002Frecipes","5.use-cases\u002F4.audit\u002F06.recipes",{"title":366,"icon":122,"path":429,"stem":430,"children":431,"page":34},"\u002Fuse-cases\u002Ftelemetry","5.use-cases\u002F4.telemetry",[432,435,440,445],{"title":41,"path":433,"stem":434,"icon":44},"\u002Fuse-cases\u002Ftelemetry\u002Foverview","5.use-cases\u002F4.telemetry\u002F01.overview",{"title":436,"path":437,"stem":438,"icon":439},"Setup","\u002Fuse-cases\u002Ftelemetry\u002Fsetup","5.use-cases\u002F4.telemetry\u002F02.setup","i-lucide-wrench",{"title":441,"path":442,"stem":443,"icon":444},"Ingest","\u002Fuse-cases\u002Ftelemetry\u002Fingest","5.use-cases\u002F4.telemetry\u002F03.ingest","i-lucide-server",{"title":446,"path":447,"stem":448,"icon":84},"Reference","\u002Fuse-cases\u002Ftelemetry\u002Freference","5.use-cases\u002F4.telemetry\u002F04.reference",{"title":450,"path":451,"stem":452,"icon":453},"Enrichers","\u002Fuse-cases\u002Fenrichers","5.use-cases\u002F5.enrichers","i-lucide-sparkles",{"title":455,"path":456,"stem":457,"icon":458},"eve","\u002Fuse-cases\u002Feve","5.use-cases\u002F5.eve","i-custom-eve",{"title":460,"path":461,"stem":462,"icon":444},"Node.js request logging","\u002Fuse-cases\u002Fstructured-logging-nodejs","5.use-cases\u002F6.structured-logging-nodejs",{"title":464,"icon":465,"path":466,"stem":467,"children":468,"page":34},"Signals","i-lucide-scan-search","\u002Fuse-cases\u002Fsignals","5.use-cases\u002F7.signals",[469,472,477,482,485],{"title":41,"path":470,"stem":471,"icon":44},"\u002Fuse-cases\u002Fsignals\u002Foverview","5.use-cases\u002F7.signals\u002F01.overview",{"title":473,"path":474,"stem":475,"icon":476},"What You Can Ask","\u002Fuse-cases\u002Fsignals\u002Fask","5.use-cases\u002F7.signals\u002F02.ask","i-lucide-message-circle-question",{"title":478,"path":479,"stem":480,"icon":481},"What It Costs","\u002Fuse-cases\u002Fsignals\u002Fcost","5.use-cases\u002F7.signals\u002F03.cost","i-lucide-coins",{"title":446,"path":483,"stem":484,"icon":84},"\u002Fuse-cases\u002Fsignals\u002Freference","5.use-cases\u002F7.signals\u002F04.reference",{"title":425,"path":486,"stem":487,"icon":488},"\u002Fuse-cases\u002Fsignals\u002Frecipes","5.use-cases\u002F7.signals\u002F05.recipes","i-lucide-lightbulb",{"title":490,"path":491,"stem":492,"children":493,"page":34},"Extend","\u002Fextend","6.extend",[494,498,503,508,512,517,521,525,529,533,538,543],{"title":41,"path":495,"stem":496,"icon":497},"\u002Fextend\u002Foverview","6.extend\u002F0.overview","i-lucide-blocks",{"title":499,"path":500,"stem":501,"icon":502},"Stream","\u002Fextend\u002Fstream","6.extend\u002F1.stream","i-lucide-radio-tower",{"title":504,"path":505,"stem":506,"icon":507},"Custom framework","\u002Fextend\u002Fcustom-framework","6.extend\u002F10.custom-framework","i-lucide-puzzle",{"title":509,"path":510,"stem":511,"icon":502},"Diagnostics channel","\u002Fextend\u002Fdiagnostics-channel","6.extend\u002F11.diagnostics-channel",{"title":513,"path":514,"stem":515,"icon":516},"FS reader","\u002Fextend\u002Ffs-reader","6.extend\u002F2.fs-reader","i-lucide-folder-search",{"title":425,"path":518,"stem":519,"icon":520},"\u002Fextend\u002Fconsumer-recipes","6.extend\u002F3.consumer-recipes","i-lucide-chef-hat",{"title":522,"path":523,"stem":524,"icon":497},"Plugins","\u002Fextend\u002Fplugins","6.extend\u002F4.plugins",{"title":526,"path":527,"stem":528,"icon":453},"Custom enrichers","\u002Fextend\u002Fcustom-enrichers","6.extend\u002F5.custom-enrichers",{"title":530,"path":531,"stem":532,"icon":69},"Tail sampling","\u002Fextend\u002Ftail-sampling","6.extend\u002F6.tail-sampling",{"title":534,"path":535,"stem":536,"icon":537},"Identity headers","\u002Fextend\u002Fidentity-headers","6.extend\u002F7.identity-headers","i-lucide-fingerprint",{"title":539,"path":540,"stem":541,"icon":542},"Custom drains","\u002Fextend\u002Fcustom-drains","6.extend\u002F8.custom-drains","i-lucide-share-2",{"title":544,"path":545,"stem":546,"icon":547},"Drain pipeline","\u002Fextend\u002Fdrain-pipeline","6.extend\u002F9.drain-pipeline","i-lucide-workflow",{"title":446,"path":549,"stem":550,"children":551,"page":34},"\u002Freference","7.reference",[552,556,561,564,569,573,578,582],{"title":41,"path":553,"stem":554,"icon":555},"\u002Freference\u002Foverview","7.reference\u002F0.overview","i-lucide-book-marked",{"title":557,"path":558,"stem":559,"icon":560},"Configuration","\u002Freference\u002Fconfiguration","7.reference\u002F1.configuration","i-lucide-settings",{"title":393,"path":562,"stem":563,"icon":122},"\u002Freference\u002Fperformance","7.reference\u002F2.performance",{"title":565,"path":566,"stem":567,"icon":568},"Vite Plugin","\u002Freference\u002Fvite-plugin","7.reference\u002F3.vite-plugin","i-custom-vite",{"title":570,"path":571,"stem":572,"icon":398},"Best Practices","\u002Freference\u002Fbest-practices","7.reference\u002F4.best-practices",{"title":574,"path":575,"stem":576,"icon":577},"vs Other Loggers","\u002Freference\u002Fvs-other-loggers","7.reference\u002F5.vs-other-loggers","i-lucide-scale",{"title":579,"path":580,"stem":581,"icon":453},"Agent Skills","\u002Freference\u002Fagent-skills","7.reference\u002F6.agent-skills",{"title":583,"path":584,"stem":585,"icon":586},"Cost","\u002Freference\u002Fcost","7.reference\u002F7.cost","i-lucide-receipt",{"title":588,"path":589,"stem":590,"children":591,"page":34},"Compare","\u002Fcompare","8.compare",[592,596,600,604,608],{"title":593,"path":594,"stem":595,"icon":577},"evlog vs Pino","\u002Fcompare\u002Fpino","8.compare\u002F1.pino",{"title":597,"path":598,"stem":599,"icon":214},"evlog vs OpenTelemetry","\u002Fcompare\u002Fopentelemetry","8.compare\u002F2.opentelemetry",{"title":601,"path":602,"stem":603,"icon":577},"evlog vs LogTape","\u002Fcompare\u002Flogtape","8.compare\u002F3.logtape",{"title":605,"path":606,"stem":607,"icon":577},"evlog vs Winston: formats and request events","\u002Fcompare\u002Fwinston","8.compare\u002F4.winston",{"title":609,"path":610,"stem":611,"icon":577},"evlog vs Consola: reporters and request context","\u002Fcompare\u002Fconsola","8.compare\u002F5.consola",{"id":613,"title":66,"body":614,"description":4072,"extension":4073,"links":4074,"meta":4079,"navigation":4080,"path":67,"seo":4081,"stem":68,"__hash__":4082},"docs\u002F2.learn\u002F5.sampling.md",{"type":615,"value":616,"toc":4062},"minimark",[617,621,669,674,682,685,1166,1173,1181,1190,1194,1201,1328,1351,1356,1428,1432,1435,1466,1476,1479,1685,1689,1699,3259,3265,3370,3374,3377,4034,4042,4046,4058],[618,619,620],"p",{},"At scale, logging everything gets expensive fast. Sampling lets you keep costs under control without losing visibility into what matters. evlog uses a two-tier approach: head sampling drops noise upfront, tail sampling rescues critical events after the fact.",[622,623,626,629,655],"prompt",{":actions":624,"description":625,"icon":69},"[\"copy\",\"cursor\",\"claude\"]","Enable head and tail sampling",[618,627,628],{},"Enable head and tail sampling in my evlog production config.",[630,631,632,636,639,646,649,652],"ul",{},[633,634,635],"li",{},"Identify my framework and locate the evlog config (nuxt.config.ts, lib\u002Fevlog.ts, initLogger, etc.)",[633,637,638],{},"Configure sampling.rates per level: { info: 10, warn: 50, debug: 0, error: 100 } as a starting point",[633,640,641,642],{},"Add sampling.keep rules to force-keep critical events: ",[643,644,645],"span",{},"{ status: 400 }, { duration: 1000 }, { path: '\u002Fapi\u002Fcritical\u002F**' }",[633,647,648],{},"For business-specific keep logic (e.g. premium users), add a custom keep callback or evlog:emit:keep hook",[633,650,651],{},"Wrap sampling in a $production override so dev keeps full logging",[633,653,654],{},"Confirm errors are always kept by default unless I explicitly set error: 0",[618,656,657,658,664,665],{},"Docs: ",[659,660,661],"a",{"href":661,"rel":662},"https:\u002F\u002Fwww.evlog.dev\u002Flearn\u002Fsampling",[663],"nofollow","\nBest practices: ",[659,666,667],{"href":667,"rel":668},"https:\u002F\u002Fwww.evlog.dev\u002Freference\u002Fbest-practices",[663],[670,671,673],"h2",{"id":672},"drop-noise-before-it-is-built","Drop noise before it is built",[618,675,676,677,681],{},"Head sampling randomly keeps a percentage of logs per level. It runs ",[678,679,680],"strong",{},"before"," the request completes, acting as a coin flip at emission time.",[683,684],"head-sampling-plinko",{},[686,687,688,875,1034],"framework-tabs",{},[689,690,696],"pre",{"className":691,"code":692,"filename":250,"language":693,"meta":694,"style":695},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  modules: ['evlog\u002Fnuxt'],\n  evlog: {\n    sampling: {\n      rates: {\n        info: 10,    \u002F\u002F Keep 10% of info logs\n        warn: 50,    \u002F\u002F Keep 50% of warnings\n        debug: 0,    \u002F\u002F Drop all debug logs\n        error: 100,  \u002F\u002F Always keep errors (default)\n      },\n    },\n  },\n})\n","typescript","nuxt.config.ts","",[697,698,699,722,750,761,771,781,800,816,832,848,854,860,866],"code",{"__ignoreMap":695},[643,700,703,707,710,714,718],{"class":701,"line":702},"line",1,[643,704,706],{"class":705},"s7zQu","export",[643,708,709],{"class":705}," default",[643,711,713],{"class":712},"s2Zo4"," defineNuxtConfig",[643,715,717],{"class":716},"sTEyZ","(",[643,719,721],{"class":720},"sMK4o","{\n",[643,723,725,729,732,735,738,742,744,747],{"class":701,"line":724},2,[643,726,728],{"class":727},"swJcz","  modules",[643,730,731],{"class":720},":",[643,733,734],{"class":716}," [",[643,736,737],{"class":720},"'",[643,739,741],{"class":740},"sfazB","evlog\u002Fnuxt",[643,743,737],{"class":720},[643,745,746],{"class":716},"]",[643,748,749],{"class":720},",\n",[643,751,753,756,758],{"class":701,"line":752},3,[643,754,755],{"class":727},"  evlog",[643,757,731],{"class":720},[643,759,760],{"class":720}," {\n",[643,762,764,767,769],{"class":701,"line":763},4,[643,765,766],{"class":727},"    sampling",[643,768,731],{"class":720},[643,770,760],{"class":720},[643,772,774,777,779],{"class":701,"line":773},5,[643,775,776],{"class":727},"      rates",[643,778,731],{"class":720},[643,780,760],{"class":720},[643,782,784,787,789,793,796],{"class":701,"line":783},6,[643,785,786],{"class":727},"        info",[643,788,731],{"class":720},[643,790,792],{"class":791},"sbssI"," 10",[643,794,795],{"class":720},",",[643,797,799],{"class":798},"sHwdD","    \u002F\u002F Keep 10% of info logs\n",[643,801,803,806,808,811,813],{"class":701,"line":802},7,[643,804,805],{"class":727},"        warn",[643,807,731],{"class":720},[643,809,810],{"class":791}," 50",[643,812,795],{"class":720},[643,814,815],{"class":798},"    \u002F\u002F Keep 50% of warnings\n",[643,817,819,822,824,827,829],{"class":701,"line":818},8,[643,820,821],{"class":727},"        debug",[643,823,731],{"class":720},[643,825,826],{"class":791}," 0",[643,828,795],{"class":720},[643,830,831],{"class":798},"    \u002F\u002F Drop all debug logs\n",[643,833,835,838,840,843,845],{"class":701,"line":834},9,[643,836,837],{"class":727},"        error",[643,839,731],{"class":720},[643,841,842],{"class":791}," 100",[643,844,795],{"class":720},[643,846,847],{"class":798},"  \u002F\u002F Always keep errors (default)\n",[643,849,851],{"class":701,"line":850},10,[643,852,853],{"class":720},"      },\n",[643,855,857],{"class":701,"line":856},11,[643,858,859],{"class":720},"    },\n",[643,861,863],{"class":701,"line":862},12,[643,864,865],{"class":720},"  },\n",[643,867,869,872],{"class":701,"line":868},13,[643,870,871],{"class":720},"}",[643,873,874],{"class":716},")\n",[689,876,879],{"className":691,"code":877,"filename":255,"language":693,"meta":878,"style":695},"import { createEvlog } from 'evlog\u002Fnext'\n\nexport const { withEvlog, useLogger } = createEvlog({\n  service: 'my-app',\n  sampling: {\n    rates: {\n      info: 10,\n      warn: 50,\n      debug: 0,\n      error: 100,\n    },\n  },\n})\n","lib\u002Fevlog.ts",[697,880,881,907,913,942,958,967,976,987,998,1009,1020,1024,1028],{"__ignoreMap":695},[643,882,883,886,889,892,895,898,901,904],{"class":701,"line":702},[643,884,885],{"class":705},"import",[643,887,888],{"class":720}," {",[643,890,891],{"class":716}," createEvlog",[643,893,894],{"class":720}," }",[643,896,897],{"class":705}," from",[643,899,900],{"class":720}," '",[643,902,903],{"class":740},"evlog\u002Fnext",[643,905,906],{"class":720},"'\n",[643,908,909],{"class":701,"line":724},[643,910,912],{"emptyLinePlaceholder":911},true,"\n",[643,914,915,917,921,923,926,928,931,933,936,938,940],{"class":701,"line":752},[643,916,706],{"class":705},[643,918,920],{"class":919},"spNyl"," const",[643,922,888],{"class":720},[643,924,925],{"class":716}," withEvlog",[643,927,795],{"class":720},[643,929,930],{"class":716}," useLogger ",[643,932,871],{"class":720},[643,934,935],{"class":720}," =",[643,937,891],{"class":712},[643,939,717],{"class":716},[643,941,721],{"class":720},[643,943,944,947,949,951,954,956],{"class":701,"line":763},[643,945,946],{"class":727},"  service",[643,948,731],{"class":720},[643,950,900],{"class":720},[643,952,953],{"class":740},"my-app",[643,955,737],{"class":720},[643,957,749],{"class":720},[643,959,960,963,965],{"class":701,"line":773},[643,961,962],{"class":727},"  sampling",[643,964,731],{"class":720},[643,966,760],{"class":720},[643,968,969,972,974],{"class":701,"line":783},[643,970,971],{"class":727},"    rates",[643,973,731],{"class":720},[643,975,760],{"class":720},[643,977,978,981,983,985],{"class":701,"line":802},[643,979,980],{"class":727},"      info",[643,982,731],{"class":720},[643,984,792],{"class":791},[643,986,749],{"class":720},[643,988,989,992,994,996],{"class":701,"line":818},[643,990,991],{"class":727},"      warn",[643,993,731],{"class":720},[643,995,810],{"class":791},[643,997,749],{"class":720},[643,999,1000,1003,1005,1007],{"class":701,"line":834},[643,1001,1002],{"class":727},"      debug",[643,1004,731],{"class":720},[643,1006,826],{"class":791},[643,1008,749],{"class":720},[643,1010,1011,1014,1016,1018],{"class":701,"line":850},[643,1012,1013],{"class":727},"      error",[643,1015,731],{"class":720},[643,1017,842],{"class":791},[643,1019,749],{"class":720},[643,1021,1022],{"class":701,"line":856},[643,1023,859],{"class":720},[643,1025,1026],{"class":701,"line":862},[643,1027,865],{"class":720},[643,1029,1030,1032],{"class":701,"line":868},[643,1031,871],{"class":720},[643,1033,874],{"class":716},[689,1035,1038],{"className":691,"code":1036,"filename":310,"language":693,"meta":1037,"style":695},"import { initLogger } from 'evlog'\n\ninitLogger({\n  env: { service: 'my-app' },\n  sampling: {\n    rates: {\n      info: 10,\n      warn: 50,\n      debug: 0,\n      error: 100,\n    },\n  },\n})\n","src\u002Findex.ts",[697,1039,1040,1060,1064,1073,1096,1104,1112,1122,1132,1142,1152,1156,1160],{"__ignoreMap":695},[643,1041,1042,1044,1046,1049,1051,1053,1055,1058],{"class":701,"line":702},[643,1043,885],{"class":705},[643,1045,888],{"class":720},[643,1047,1048],{"class":716}," initLogger",[643,1050,894],{"class":720},[643,1052,897],{"class":705},[643,1054,900],{"class":720},[643,1056,1057],{"class":740},"evlog",[643,1059,906],{"class":720},[643,1061,1062],{"class":701,"line":724},[643,1063,912],{"emptyLinePlaceholder":911},[643,1065,1066,1069,1071],{"class":701,"line":752},[643,1067,1068],{"class":712},"initLogger",[643,1070,717],{"class":716},[643,1072,721],{"class":720},[643,1074,1075,1078,1080,1082,1085,1087,1089,1091,1093],{"class":701,"line":763},[643,1076,1077],{"class":727},"  env",[643,1079,731],{"class":720},[643,1081,888],{"class":720},[643,1083,1084],{"class":727}," service",[643,1086,731],{"class":720},[643,1088,900],{"class":720},[643,1090,953],{"class":740},[643,1092,737],{"class":720},[643,1094,1095],{"class":720}," },\n",[643,1097,1098,1100,1102],{"class":701,"line":773},[643,1099,962],{"class":727},[643,1101,731],{"class":720},[643,1103,760],{"class":720},[643,1105,1106,1108,1110],{"class":701,"line":783},[643,1107,971],{"class":727},[643,1109,731],{"class":720},[643,1111,760],{"class":720},[643,1113,1114,1116,1118,1120],{"class":701,"line":802},[643,1115,980],{"class":727},[643,1117,731],{"class":720},[643,1119,792],{"class":791},[643,1121,749],{"class":720},[643,1123,1124,1126,1128,1130],{"class":701,"line":818},[643,1125,991],{"class":727},[643,1127,731],{"class":720},[643,1129,810],{"class":791},[643,1131,749],{"class":720},[643,1133,1134,1136,1138,1140],{"class":701,"line":834},[643,1135,1002],{"class":727},[643,1137,731],{"class":720},[643,1139,826],{"class":791},[643,1141,749],{"class":720},[643,1143,1144,1146,1148,1150],{"class":701,"line":850},[643,1145,1013],{"class":727},[643,1147,731],{"class":720},[643,1149,842],{"class":791},[643,1151,749],{"class":720},[643,1153,1154],{"class":701,"line":856},[643,1155,859],{"class":720},[643,1157,1158],{"class":701,"line":862},[643,1159,865],{"class":720},[643,1161,1162,1164],{"class":701,"line":868},[643,1163,871],{"class":720},[643,1165,874],{"class":716},[618,1167,1168,1169,1172],{},"Each level is a percentage from 0 to 100. Levels you don't configure default to 100% (keep everything). Error defaults to 100% even when other levels are configured, so you have to explicitly set ",[697,1170,1171],{},"error: 0"," to drop errors.",[618,1174,1175,1176,1180],{},"The same rates apply to browser logs received through the ",[659,1177,1179],{"href":1178},"\u002Fintegrate\u002Fframeworks\u002Fnuxt#client-transport","client ingest endpoint",": a client event sampled out is dropped before enrichment and draining. Tail sampling does not apply to client events, since they carry no status or duration.",[1182,1183,1185,1186,1189],"callout",{"color":1184,"icon":13},"info","Head sampling is random. A ",[697,1187,1188],{},"10%"," rate means roughly 1 in 10 info logs are kept, not exactly 1 in 10.",[670,1191,1193],{"id":1192},"keep-an-event-once-you-know-its-outcome","Keep an event once you know its outcome",[618,1195,1196,1197,1200],{},"Head sampling is blind: it doesn't know if a request was slow, failed, or hit a critical path. Tail sampling fixes this by evaluating ",[678,1198,1199],{},"after"," the request completes and force-keeping logs that match specific conditions.",[689,1202,1204],{"className":691,"code":1203,"filename":694,"language":693,"meta":695,"style":695},"\u002F\u002F Sampling config, works the same across all frameworks\nevlog: {\n  sampling: {\n    rates: { info: 10 },\n    keep: [\n      { status: 400 },              \u002F\u002F HTTP status >= 400\n      { duration: 1000 },           \u002F\u002F Request took >= 1s\n      { path: '\u002Fapi\u002Fpayments\u002F**' }, \u002F\u002F Critical path (glob)\n    ],\n  },\n}\n",[697,1205,1206,1211,1220,1228,1245,1255,1274,1291,1312,1319,1323],{"__ignoreMap":695},[643,1207,1208],{"class":701,"line":702},[643,1209,1210],{"class":798},"\u002F\u002F Sampling config, works the same across all frameworks\n",[643,1212,1213,1216,1218],{"class":701,"line":724},[643,1214,1057],{"class":1215},"sBMFI",[643,1217,731],{"class":720},[643,1219,760],{"class":720},[643,1221,1222,1224,1226],{"class":701,"line":752},[643,1223,962],{"class":1215},[643,1225,731],{"class":720},[643,1227,760],{"class":720},[643,1229,1230,1232,1234,1236,1239,1241,1243],{"class":701,"line":763},[643,1231,971],{"class":1215},[643,1233,731],{"class":720},[643,1235,888],{"class":720},[643,1237,1238],{"class":1215}," info",[643,1240,731],{"class":720},[643,1242,792],{"class":791},[643,1244,1095],{"class":720},[643,1246,1247,1250,1252],{"class":701,"line":773},[643,1248,1249],{"class":1215},"    keep",[643,1251,731],{"class":720},[643,1253,1254],{"class":727}," [\n",[643,1256,1257,1260,1263,1265,1268,1271],{"class":701,"line":783},[643,1258,1259],{"class":720},"      {",[643,1261,1262],{"class":727}," status",[643,1264,731],{"class":720},[643,1266,1267],{"class":791}," 400",[643,1269,1270],{"class":720}," },",[643,1272,1273],{"class":798},"              \u002F\u002F HTTP status >= 400\n",[643,1275,1276,1278,1281,1283,1286,1288],{"class":701,"line":802},[643,1277,1259],{"class":720},[643,1279,1280],{"class":727}," duration",[643,1282,731],{"class":720},[643,1284,1285],{"class":791}," 1000",[643,1287,1270],{"class":720},[643,1289,1290],{"class":798},"           \u002F\u002F Request took >= 1s\n",[643,1292,1293,1295,1298,1300,1302,1305,1307,1309],{"class":701,"line":818},[643,1294,1259],{"class":720},[643,1296,1297],{"class":727}," path",[643,1299,731],{"class":720},[643,1301,900],{"class":720},[643,1303,1304],{"class":740},"\u002Fapi\u002Fpayments\u002F**",[643,1306,737],{"class":720},[643,1308,1270],{"class":720},[643,1310,1311],{"class":798}," \u002F\u002F Critical path (glob)\n",[643,1313,1314,1317],{"class":701,"line":834},[643,1315,1316],{"class":727},"    ]",[643,1318,749],{"class":720},[643,1320,1321],{"class":701,"line":850},[643,1322,865],{"class":720},[643,1324,1325],{"class":701,"line":856},[643,1326,1327],{"class":720},"}\n",[618,1329,1330,1331,1334,1335,1338,1339,1342,1343,1346,1347,1350],{},"Conditions use ",[678,1332,1333],{},">="," comparison for ",[697,1336,1337],{},"status"," and ",[697,1340,1341],{},"duration",", and glob matching for ",[697,1344,1345],{},"path",". If ",[678,1348,1349],{},"any"," condition matches, the log is kept regardless of head sampling (OR logic).",[1352,1353,1355],"h3",{"id":1354},"conditions-you-can-match-on","Conditions you can match on",[1357,1358,1359,1375],"table",{},[1360,1361,1362],"thead",{},[1363,1364,1365,1369,1372],"tr",{},[1366,1367,1368],"th",{},"Condition",[1366,1370,1371],{},"Type",[1366,1373,1374],{},"Description",[1376,1377,1378,1397,1410],"tbody",{},[1363,1379,1380,1385,1390],{},[1381,1382,1383],"td",{},[697,1384,1337],{},[1381,1386,1387],{},[697,1388,1389],{},"number",[1381,1391,1392,1393,1396],{},"Keep if HTTP status >= value (e.g., ",[697,1394,1395],{},"400"," catches all 4xx and 5xx)",[1363,1398,1399,1403,1407],{},[1381,1400,1401],{},[697,1402,1341],{},[1381,1404,1405],{},[697,1406,1389],{},[1381,1408,1409],{},"Keep if request duration >= value in milliseconds",[1363,1411,1412,1416,1421],{},[1381,1413,1414],{},[697,1415,1345],{},[1381,1417,1418],{},[697,1419,1420],{},"string",[1381,1422,1423,1424,1427],{},"Keep if request path matches glob pattern (e.g., ",[697,1425,1426],{},"'\u002Fapi\u002Fcritical\u002F**'",")",[670,1429,1431],{"id":1430},"combine-head-and-tail-sampling","Combine head and tail sampling",[618,1433,1434],{},"The two tiers complement each other:",[1436,1437,1438,1444,1454,1460],"ol",{},[633,1439,1440,1443],{},[678,1441,1442],{},"Request completes"," - evlog knows the status, duration, and path",[633,1445,1446,1449,1450,1453],{},[678,1447,1448],{},"Tail sampling evaluates"," - if any ",[697,1451,1452],{},"keep"," condition matches, the log is force-kept",[633,1455,1456,1459],{},[678,1457,1458],{},"Head sampling applies"," - only if tail sampling didn't force-keep, the random percentage check runs",[633,1461,1462,1465],{},[678,1463,1464],{},"Log emits or drops"," - kept logs go through enrichment and draining as normal",[618,1467,1468,1469,1472,1473,1475],{},"This means a request to ",[697,1470,1471],{},"\u002Fapi\u002Fpayments\u002Fcharge"," that returns a 500 in 2 seconds will always be logged, even if ",[697,1474,1184],{}," is set to 1%. The tail conditions rescue it.",[1477,1478],"tail-sample-decision",{},[1480,1481,1482,1558],"code-group",{},[689,1483,1485],{"className":691,"code":1484,"filename":557,"language":693,"meta":695,"style":695},"sampling: {\n  rates: { info: 10 },\n  keep: [\n    { status: 400 },\n    { duration: 1000 },\n  ],\n}\n",[697,1486,1487,1496,1513,1522,1535,1547,1554],{"__ignoreMap":695},[643,1488,1489,1492,1494],{"class":701,"line":702},[643,1490,1491],{"class":1215},"sampling",[643,1493,731],{"class":720},[643,1495,760],{"class":720},[643,1497,1498,1501,1503,1505,1507,1509,1511],{"class":701,"line":724},[643,1499,1500],{"class":1215},"  rates",[643,1502,731],{"class":720},[643,1504,888],{"class":720},[643,1506,1238],{"class":1215},[643,1508,731],{"class":720},[643,1510,792],{"class":791},[643,1512,1095],{"class":720},[643,1514,1515,1518,1520],{"class":701,"line":752},[643,1516,1517],{"class":1215},"  keep",[643,1519,731],{"class":720},[643,1521,1254],{"class":727},[643,1523,1524,1527,1529,1531,1533],{"class":701,"line":763},[643,1525,1526],{"class":720},"    {",[643,1528,1262],{"class":727},[643,1530,731],{"class":720},[643,1532,1267],{"class":791},[643,1534,1095],{"class":720},[643,1536,1537,1539,1541,1543,1545],{"class":701,"line":773},[643,1538,1526],{"class":720},[643,1540,1280],{"class":727},[643,1542,731],{"class":720},[643,1544,1285],{"class":791},[643,1546,1095],{"class":720},[643,1548,1549,1552],{"class":701,"line":783},[643,1550,1551],{"class":727},"  ]",[643,1553,749],{"class":720},[643,1555,1556],{"class":701,"line":802},[643,1557,1327],{"class":720},[689,1559,1564],{"className":1560,"code":1561,"filename":1562,"language":1563,"meta":695,"style":695},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","POST \u002Fapi\u002Fusers     200  45ms   → 10% chance (head sampling)\nPOST \u002Fapi\u002Fusers     500  45ms   → always kept (status >= 400)\nGET  \u002Fapi\u002Fproducts  200  2300ms → always kept (duration >= 1000)\nPOST \u002Fapi\u002Fcheckout  200  120ms  → 10% chance (head sampling)\n","What gets logged","bash",[697,1565,1566,1596,1628,1660],{"__ignoreMap":695},[643,1567,1568,1571,1574,1577,1580,1583,1586,1589,1592,1594],{"class":701,"line":702},[643,1569,1570],{"class":1215},"POST",[643,1572,1573],{"class":740}," \u002Fapi\u002Fusers",[643,1575,1576],{"class":791},"     200",[643,1578,1579],{"class":740},"  45ms",[643,1581,1582],{"class":740},"   →",[643,1584,1585],{"class":740}," 10%",[643,1587,1588],{"class":740}," chance",[643,1590,1591],{"class":716}," (head ",[643,1593,1491],{"class":740},[643,1595,874],{"class":716},[643,1597,1598,1600,1602,1605,1607,1609,1612,1615,1618,1621,1624,1626],{"class":701,"line":724},[643,1599,1570],{"class":1215},[643,1601,1573],{"class":740},[643,1603,1604],{"class":791},"     500",[643,1606,1579],{"class":740},[643,1608,1582],{"class":740},[643,1610,1611],{"class":740}," always",[643,1613,1614],{"class":740}," kept",[643,1616,1617],{"class":716}," (status ",[643,1619,1620],{"class":720},">",[643,1622,1623],{"class":740},"=",[643,1625,1267],{"class":791},[643,1627,874],{"class":716},[643,1629,1630,1633,1636,1639,1642,1645,1647,1649,1652,1654,1656,1658],{"class":701,"line":752},[643,1631,1632],{"class":1215},"GET",[643,1634,1635],{"class":740},"  \u002Fapi\u002Fproducts",[643,1637,1638],{"class":791},"  200",[643,1640,1641],{"class":740},"  2300ms",[643,1643,1644],{"class":740}," →",[643,1646,1611],{"class":740},[643,1648,1614],{"class":740},[643,1650,1651],{"class":716}," (duration ",[643,1653,1620],{"class":720},[643,1655,1623],{"class":740},[643,1657,1285],{"class":791},[643,1659,874],{"class":716},[643,1661,1662,1664,1667,1669,1672,1675,1677,1679,1681,1683],{"class":701,"line":763},[643,1663,1570],{"class":1215},[643,1665,1666],{"class":740}," \u002Fapi\u002Fcheckout",[643,1668,1638],{"class":791},[643,1670,1671],{"class":740},"  120ms",[643,1673,1674],{"class":740},"  →",[643,1676,1585],{"class":740},[643,1678,1588],{"class":740},[643,1680,1591],{"class":716},[643,1682,1491],{"class":740},[643,1684,874],{"class":716},[670,1686,1688],{"id":1687},"write-your-own-keep-rule","Write your own keep rule",[618,1690,1691,1692,1695,1696,1698],{},"For conditions beyond status, duration, and path, use the ",[697,1693,1694],{},"evlog:emit:keep"," hook in Nuxt\u002FNitro or the ",[697,1697,1452],{}," callback in other frameworks.",[686,1700,1701,1843,2030,2156,2298,2442,2559,2673,2791,2905,3019,3145],{},[689,1702,1705],{"className":691,"code":1703,"filename":250,"language":693,"meta":1704,"style":695},"export default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('evlog:emit:keep', (ctx) => {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  })\n})\n","server\u002Fplugins\u002Fsampling.ts",[697,1706,1707,1731,1769,1809,1825,1830,1837],{"__ignoreMap":695},[643,1708,1709,1711,1713,1716,1718,1720,1724,1726,1729],{"class":701,"line":702},[643,1710,706],{"class":705},[643,1712,709],{"class":705},[643,1714,1715],{"class":712}," defineNitroPlugin",[643,1717,717],{"class":716},[643,1719,717],{"class":720},[643,1721,1723],{"class":1722},"sHdIc","nitroApp",[643,1725,1427],{"class":720},[643,1727,1728],{"class":919}," =>",[643,1730,760],{"class":720},[643,1732,1733,1736,1739,1742,1744,1747,1749,1751,1753,1755,1757,1760,1763,1765,1767],{"class":701,"line":724},[643,1734,1735],{"class":716},"  nitroApp",[643,1737,1738],{"class":720},".",[643,1740,1741],{"class":716},"hooks",[643,1743,1738],{"class":720},[643,1745,1746],{"class":712},"hook",[643,1748,717],{"class":727},[643,1750,737],{"class":720},[643,1752,1694],{"class":740},[643,1754,737],{"class":720},[643,1756,795],{"class":720},[643,1758,1759],{"class":720}," (",[643,1761,1762],{"class":1722},"ctx",[643,1764,1427],{"class":720},[643,1766,1728],{"class":919},[643,1768,760],{"class":720},[643,1770,1771,1774,1776,1778,1780,1783,1785,1788,1791,1794,1797,1799,1802,1804,1807],{"class":701,"line":752},[643,1772,1773],{"class":705},"    if",[643,1775,1759],{"class":727},[643,1777,1762],{"class":716},[643,1779,1738],{"class":720},[643,1781,1782],{"class":716},"context",[643,1784,1738],{"class":720},[643,1786,1787],{"class":716},"user",[643,1789,1790],{"class":720},"?.",[643,1792,1793],{"class":716},"plan",[643,1795,1796],{"class":720}," ===",[643,1798,900],{"class":720},[643,1800,1801],{"class":740},"enterprise",[643,1803,737],{"class":720},[643,1805,1806],{"class":727},") ",[643,1808,721],{"class":720},[643,1810,1811,1814,1816,1819,1821],{"class":701,"line":763},[643,1812,1813],{"class":716},"      ctx",[643,1815,1738],{"class":720},[643,1817,1818],{"class":716},"shouldKeep",[643,1820,935],{"class":720},[643,1822,1824],{"class":1823},"sfNiH"," true\n",[643,1826,1827],{"class":701,"line":773},[643,1828,1829],{"class":720},"    }\n",[643,1831,1832,1835],{"class":701,"line":783},[643,1833,1834],{"class":720},"  }",[643,1836,874],{"class":727},[643,1838,1839,1841],{"class":701,"line":802},[643,1840,871],{"class":720},[643,1842,874],{"class":716},[689,1844,1846],{"className":691,"code":1845,"filename":255,"language":693,"meta":878,"style":695},"import { createEvlog } from 'evlog\u002Fnext'\n\nexport const { withEvlog, useLogger } = createEvlog({\n  service: 'my-app',\n  sampling: {\n    rates: { info: 10 },\n    keep: [{ status: 400 }],\n  },\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n",[697,1847,1848,1866,1870,1894,1908,1916,1932,1955,1959,1971,2003,2015,2019,2023],{"__ignoreMap":695},[643,1849,1850,1852,1854,1856,1858,1860,1862,1864],{"class":701,"line":702},[643,1851,885],{"class":705},[643,1853,888],{"class":720},[643,1855,891],{"class":716},[643,1857,894],{"class":720},[643,1859,897],{"class":705},[643,1861,900],{"class":720},[643,1863,903],{"class":740},[643,1865,906],{"class":720},[643,1867,1868],{"class":701,"line":724},[643,1869,912],{"emptyLinePlaceholder":911},[643,1871,1872,1874,1876,1878,1880,1882,1884,1886,1888,1890,1892],{"class":701,"line":752},[643,1873,706],{"class":705},[643,1875,920],{"class":919},[643,1877,888],{"class":720},[643,1879,925],{"class":716},[643,1881,795],{"class":720},[643,1883,930],{"class":716},[643,1885,871],{"class":720},[643,1887,935],{"class":720},[643,1889,891],{"class":712},[643,1891,717],{"class":716},[643,1893,721],{"class":720},[643,1895,1896,1898,1900,1902,1904,1906],{"class":701,"line":763},[643,1897,946],{"class":727},[643,1899,731],{"class":720},[643,1901,900],{"class":720},[643,1903,953],{"class":740},[643,1905,737],{"class":720},[643,1907,749],{"class":720},[643,1909,1910,1912,1914],{"class":701,"line":773},[643,1911,962],{"class":727},[643,1913,731],{"class":720},[643,1915,760],{"class":720},[643,1917,1918,1920,1922,1924,1926,1928,1930],{"class":701,"line":783},[643,1919,971],{"class":727},[643,1921,731],{"class":720},[643,1923,888],{"class":720},[643,1925,1238],{"class":727},[643,1927,731],{"class":720},[643,1929,792],{"class":791},[643,1931,1095],{"class":720},[643,1933,1934,1936,1938,1940,1943,1945,1947,1949,1951,1953],{"class":701,"line":802},[643,1935,1249],{"class":727},[643,1937,731],{"class":720},[643,1939,734],{"class":716},[643,1941,1942],{"class":720},"{",[643,1944,1262],{"class":727},[643,1946,731],{"class":720},[643,1948,1267],{"class":791},[643,1950,894],{"class":720},[643,1952,746],{"class":716},[643,1954,749],{"class":720},[643,1956,1957],{"class":701,"line":818},[643,1958,865],{"class":720},[643,1960,1961,1963,1965,1967,1969],{"class":701,"line":834},[643,1962,1517],{"class":727},[643,1964,717],{"class":720},[643,1966,1762],{"class":1722},[643,1968,1427],{"class":720},[643,1970,760],{"class":720},[643,1972,1973,1975,1977,1979,1981,1983,1985,1987,1989,1991,1993,1995,1997,1999,2001],{"class":701,"line":850},[643,1974,1773],{"class":705},[643,1976,1759],{"class":727},[643,1978,1762],{"class":716},[643,1980,1738],{"class":720},[643,1982,1782],{"class":716},[643,1984,1738],{"class":720},[643,1986,1787],{"class":716},[643,1988,1790],{"class":720},[643,1990,1793],{"class":716},[643,1992,1796],{"class":720},[643,1994,900],{"class":720},[643,1996,1801],{"class":740},[643,1998,737],{"class":720},[643,2000,1806],{"class":727},[643,2002,721],{"class":720},[643,2004,2005,2007,2009,2011,2013],{"class":701,"line":856},[643,2006,1813],{"class":716},[643,2008,1738],{"class":720},[643,2010,1818],{"class":716},[643,2012,935],{"class":720},[643,2014,1824],{"class":1823},[643,2016,2017],{"class":701,"line":862},[643,2018,1829],{"class":720},[643,2020,2021],{"class":701,"line":868},[643,2022,865],{"class":720},[643,2024,2026,2028],{"class":701,"line":2025},14,[643,2027,871],{"class":720},[643,2029,874],{"class":716},[689,2031,2034],{"className":691,"code":2032,"filename":260,"language":693,"meta":2033,"style":695},"import { createEvlogHooks } from 'evlog\u002Fsveltekit'\n\nexport const { handle, handleError } = createEvlogHooks({\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n","src\u002Fhooks.server.ts",[697,2035,2036,2056,2060,2086,2098,2130,2142,2146,2150],{"__ignoreMap":695},[643,2037,2038,2040,2042,2045,2047,2049,2051,2054],{"class":701,"line":702},[643,2039,885],{"class":705},[643,2041,888],{"class":720},[643,2043,2044],{"class":716}," createEvlogHooks",[643,2046,894],{"class":720},[643,2048,897],{"class":705},[643,2050,900],{"class":720},[643,2052,2053],{"class":740},"evlog\u002Fsveltekit",[643,2055,906],{"class":720},[643,2057,2058],{"class":701,"line":724},[643,2059,912],{"emptyLinePlaceholder":911},[643,2061,2062,2064,2066,2068,2071,2073,2076,2078,2080,2082,2084],{"class":701,"line":752},[643,2063,706],{"class":705},[643,2065,920],{"class":919},[643,2067,888],{"class":720},[643,2069,2070],{"class":716}," handle",[643,2072,795],{"class":720},[643,2074,2075],{"class":716}," handleError ",[643,2077,871],{"class":720},[643,2079,935],{"class":720},[643,2081,2044],{"class":712},[643,2083,717],{"class":716},[643,2085,721],{"class":720},[643,2087,2088,2090,2092,2094,2096],{"class":701,"line":763},[643,2089,1517],{"class":727},[643,2091,717],{"class":720},[643,2093,1762],{"class":1722},[643,2095,1427],{"class":720},[643,2097,760],{"class":720},[643,2099,2100,2102,2104,2106,2108,2110,2112,2114,2116,2118,2120,2122,2124,2126,2128],{"class":701,"line":773},[643,2101,1773],{"class":705},[643,2103,1759],{"class":727},[643,2105,1762],{"class":716},[643,2107,1738],{"class":720},[643,2109,1782],{"class":716},[643,2111,1738],{"class":720},[643,2113,1787],{"class":716},[643,2115,1790],{"class":720},[643,2117,1793],{"class":716},[643,2119,1796],{"class":720},[643,2121,900],{"class":720},[643,2123,1801],{"class":740},[643,2125,737],{"class":720},[643,2127,1806],{"class":727},[643,2129,721],{"class":720},[643,2131,2132,2134,2136,2138,2140],{"class":701,"line":783},[643,2133,1813],{"class":716},[643,2135,1738],{"class":720},[643,2137,1818],{"class":716},[643,2139,935],{"class":720},[643,2141,1824],{"class":1823},[643,2143,2144],{"class":701,"line":802},[643,2145,1829],{"class":720},[643,2147,2148],{"class":701,"line":818},[643,2149,865],{"class":720},[643,2151,2152,2154],{"class":701,"line":834},[643,2153,871],{"class":720},[643,2155,874],{"class":716},[689,2157,2160],{"className":691,"code":2158,"filename":270,"language":693,"meta":2159,"style":695},"import { definePlugin } from 'nitro'\n\nexport default definePlugin((nitroApp) => {\n  nitroApp.hooks.hook('evlog:emit:keep', (ctx) => {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  })\n})\n","server\u002Fplugins\u002Fevlog.ts",[697,2161,2162,2182,2186,2206,2238,2270,2282,2286,2292],{"__ignoreMap":695},[643,2163,2164,2166,2168,2171,2173,2175,2177,2180],{"class":701,"line":702},[643,2165,885],{"class":705},[643,2167,888],{"class":720},[643,2169,2170],{"class":716}," definePlugin",[643,2172,894],{"class":720},[643,2174,897],{"class":705},[643,2176,900],{"class":720},[643,2178,2179],{"class":740},"nitro",[643,2181,906],{"class":720},[643,2183,2184],{"class":701,"line":724},[643,2185,912],{"emptyLinePlaceholder":911},[643,2187,2188,2190,2192,2194,2196,2198,2200,2202,2204],{"class":701,"line":752},[643,2189,706],{"class":705},[643,2191,709],{"class":705},[643,2193,2170],{"class":712},[643,2195,717],{"class":716},[643,2197,717],{"class":720},[643,2199,1723],{"class":1722},[643,2201,1427],{"class":720},[643,2203,1728],{"class":919},[643,2205,760],{"class":720},[643,2207,2208,2210,2212,2214,2216,2218,2220,2222,2224,2226,2228,2230,2232,2234,2236],{"class":701,"line":763},[643,2209,1735],{"class":716},[643,2211,1738],{"class":720},[643,2213,1741],{"class":716},[643,2215,1738],{"class":720},[643,2217,1746],{"class":712},[643,2219,717],{"class":727},[643,2221,737],{"class":720},[643,2223,1694],{"class":740},[643,2225,737],{"class":720},[643,2227,795],{"class":720},[643,2229,1759],{"class":720},[643,2231,1762],{"class":1722},[643,2233,1427],{"class":720},[643,2235,1728],{"class":919},[643,2237,760],{"class":720},[643,2239,2240,2242,2244,2246,2248,2250,2252,2254,2256,2258,2260,2262,2264,2266,2268],{"class":701,"line":773},[643,2241,1773],{"class":705},[643,2243,1759],{"class":727},[643,2245,1762],{"class":716},[643,2247,1738],{"class":720},[643,2249,1782],{"class":716},[643,2251,1738],{"class":720},[643,2253,1787],{"class":716},[643,2255,1790],{"class":720},[643,2257,1793],{"class":716},[643,2259,1796],{"class":720},[643,2261,900],{"class":720},[643,2263,1801],{"class":740},[643,2265,737],{"class":720},[643,2267,1806],{"class":727},[643,2269,721],{"class":720},[643,2271,2272,2274,2276,2278,2280],{"class":701,"line":783},[643,2273,1813],{"class":716},[643,2275,1738],{"class":720},[643,2277,1818],{"class":716},[643,2279,935],{"class":720},[643,2281,1824],{"class":1823},[643,2283,2284],{"class":701,"line":802},[643,2285,1829],{"class":720},[643,2287,2288,2290],{"class":701,"line":818},[643,2289,1834],{"class":720},[643,2291,874],{"class":727},[643,2293,2294,2296],{"class":701,"line":834},[643,2295,871],{"class":720},[643,2297,874],{"class":716},[689,2299,2302],{"className":691,"code":2300,"filename":300,"language":693,"meta":2301,"style":695},"import { evlog } from 'evlog\u002Freact-router'\n\nexport const middleware: Route.MiddlewareFunction[] = [\n  evlog({\n    keep(ctx) {\n      if (ctx.context.user?.plan === 'enterprise') {\n        ctx.shouldKeep = true\n      }\n    },\n  }),\n]\n","app\u002Froot.tsx",[697,2303,2304,2324,2328,2354,2362,2374,2407,2420,2425,2429,2437],{"__ignoreMap":695},[643,2305,2306,2308,2310,2313,2315,2317,2319,2322],{"class":701,"line":702},[643,2307,885],{"class":705},[643,2309,888],{"class":720},[643,2311,2312],{"class":716}," evlog",[643,2314,894],{"class":720},[643,2316,897],{"class":705},[643,2318,900],{"class":720},[643,2320,2321],{"class":740},"evlog\u002Freact-router",[643,2323,906],{"class":720},[643,2325,2326],{"class":701,"line":724},[643,2327,912],{"emptyLinePlaceholder":911},[643,2329,2330,2332,2334,2337,2339,2342,2344,2347,2350,2352],{"class":701,"line":752},[643,2331,706],{"class":705},[643,2333,920],{"class":919},[643,2335,2336],{"class":716}," middleware",[643,2338,731],{"class":720},[643,2340,2341],{"class":1215}," Route",[643,2343,1738],{"class":720},[643,2345,2346],{"class":1215},"MiddlewareFunction",[643,2348,2349],{"class":716},"[] ",[643,2351,1623],{"class":720},[643,2353,1254],{"class":716},[643,2355,2356,2358,2360],{"class":701,"line":763},[643,2357,755],{"class":712},[643,2359,717],{"class":716},[643,2361,721],{"class":720},[643,2363,2364,2366,2368,2370,2372],{"class":701,"line":773},[643,2365,1249],{"class":727},[643,2367,717],{"class":720},[643,2369,1762],{"class":1722},[643,2371,1427],{"class":720},[643,2373,760],{"class":720},[643,2375,2376,2379,2381,2383,2385,2387,2389,2391,2393,2395,2397,2399,2401,2403,2405],{"class":701,"line":783},[643,2377,2378],{"class":705},"      if",[643,2380,1759],{"class":727},[643,2382,1762],{"class":716},[643,2384,1738],{"class":720},[643,2386,1782],{"class":716},[643,2388,1738],{"class":720},[643,2390,1787],{"class":716},[643,2392,1790],{"class":720},[643,2394,1793],{"class":716},[643,2396,1796],{"class":720},[643,2398,900],{"class":720},[643,2400,1801],{"class":740},[643,2402,737],{"class":720},[643,2404,1806],{"class":727},[643,2406,721],{"class":720},[643,2408,2409,2412,2414,2416,2418],{"class":701,"line":802},[643,2410,2411],{"class":716},"        ctx",[643,2413,1738],{"class":720},[643,2415,1818],{"class":716},[643,2417,935],{"class":720},[643,2419,1824],{"class":1823},[643,2421,2422],{"class":701,"line":818},[643,2423,2424],{"class":720},"      }\n",[643,2426,2427],{"class":701,"line":834},[643,2428,859],{"class":720},[643,2430,2431,2433,2435],{"class":701,"line":850},[643,2432,1834],{"class":720},[643,2434,1427],{"class":716},[643,2436,749],{"class":720},[643,2438,2439],{"class":701,"line":856},[643,2440,2441],{"class":716},"]\n",[689,2443,2445],{"className":691,"code":2444,"filename":310,"language":693,"meta":1037,"style":695},"import { evlog } from 'evlog\u002Fhono'\n\napp.use(evlog({\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n}))\n",[697,2446,2447,2466,2470,2488,2500,2532,2544,2548,2552],{"__ignoreMap":695},[643,2448,2449,2451,2453,2455,2457,2459,2461,2464],{"class":701,"line":702},[643,2450,885],{"class":705},[643,2452,888],{"class":720},[643,2454,2312],{"class":716},[643,2456,894],{"class":720},[643,2458,897],{"class":705},[643,2460,900],{"class":720},[643,2462,2463],{"class":740},"evlog\u002Fhono",[643,2465,906],{"class":720},[643,2467,2468],{"class":701,"line":724},[643,2469,912],{"emptyLinePlaceholder":911},[643,2471,2472,2475,2477,2480,2482,2484,2486],{"class":701,"line":752},[643,2473,2474],{"class":716},"app",[643,2476,1738],{"class":720},[643,2478,2479],{"class":712},"use",[643,2481,717],{"class":716},[643,2483,1057],{"class":712},[643,2485,717],{"class":716},[643,2487,721],{"class":720},[643,2489,2490,2492,2494,2496,2498],{"class":701,"line":763},[643,2491,1517],{"class":727},[643,2493,717],{"class":720},[643,2495,1762],{"class":1722},[643,2497,1427],{"class":720},[643,2499,760],{"class":720},[643,2501,2502,2504,2506,2508,2510,2512,2514,2516,2518,2520,2522,2524,2526,2528,2530],{"class":701,"line":773},[643,2503,1773],{"class":705},[643,2505,1759],{"class":727},[643,2507,1762],{"class":716},[643,2509,1738],{"class":720},[643,2511,1782],{"class":716},[643,2513,1738],{"class":720},[643,2515,1787],{"class":716},[643,2517,1790],{"class":720},[643,2519,1793],{"class":716},[643,2521,1796],{"class":720},[643,2523,900],{"class":720},[643,2525,1801],{"class":740},[643,2527,737],{"class":720},[643,2529,1806],{"class":727},[643,2531,721],{"class":720},[643,2533,2534,2536,2538,2540,2542],{"class":701,"line":783},[643,2535,1813],{"class":716},[643,2537,1738],{"class":720},[643,2539,1818],{"class":716},[643,2541,935],{"class":720},[643,2543,1824],{"class":1823},[643,2545,2546],{"class":701,"line":802},[643,2547,1829],{"class":720},[643,2549,2550],{"class":701,"line":818},[643,2551,865],{"class":720},[643,2553,2554,2556],{"class":701,"line":834},[643,2555,871],{"class":720},[643,2557,2558],{"class":716},"))\n",[689,2560,2562],{"className":691,"code":2561,"filename":280,"language":693,"meta":1037,"style":695},"import { evlog } from 'evlog\u002Fexpress'\n\napp.use(evlog({\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n}))\n",[697,2563,2564,2583,2587,2603,2615,2647,2659,2663,2667],{"__ignoreMap":695},[643,2565,2566,2568,2570,2572,2574,2576,2578,2581],{"class":701,"line":702},[643,2567,885],{"class":705},[643,2569,888],{"class":720},[643,2571,2312],{"class":716},[643,2573,894],{"class":720},[643,2575,897],{"class":705},[643,2577,900],{"class":720},[643,2579,2580],{"class":740},"evlog\u002Fexpress",[643,2582,906],{"class":720},[643,2584,2585],{"class":701,"line":724},[643,2586,912],{"emptyLinePlaceholder":911},[643,2588,2589,2591,2593,2595,2597,2599,2601],{"class":701,"line":752},[643,2590,2474],{"class":716},[643,2592,1738],{"class":720},[643,2594,2479],{"class":712},[643,2596,717],{"class":716},[643,2598,1057],{"class":712},[643,2600,717],{"class":716},[643,2602,721],{"class":720},[643,2604,2605,2607,2609,2611,2613],{"class":701,"line":763},[643,2606,1517],{"class":727},[643,2608,717],{"class":720},[643,2610,1762],{"class":1722},[643,2612,1427],{"class":720},[643,2614,760],{"class":720},[643,2616,2617,2619,2621,2623,2625,2627,2629,2631,2633,2635,2637,2639,2641,2643,2645],{"class":701,"line":773},[643,2618,1773],{"class":705},[643,2620,1759],{"class":727},[643,2622,1762],{"class":716},[643,2624,1738],{"class":720},[643,2626,1782],{"class":716},[643,2628,1738],{"class":720},[643,2630,1787],{"class":716},[643,2632,1790],{"class":720},[643,2634,1793],{"class":716},[643,2636,1796],{"class":720},[643,2638,900],{"class":720},[643,2640,1801],{"class":740},[643,2642,737],{"class":720},[643,2644,1806],{"class":727},[643,2646,721],{"class":720},[643,2648,2649,2651,2653,2655,2657],{"class":701,"line":783},[643,2650,1813],{"class":716},[643,2652,1738],{"class":720},[643,2654,1818],{"class":716},[643,2656,935],{"class":720},[643,2658,1824],{"class":1823},[643,2660,2661],{"class":701,"line":802},[643,2662,1829],{"class":720},[643,2664,2665],{"class":701,"line":818},[643,2666,865],{"class":720},[643,2668,2669,2671],{"class":701,"line":834},[643,2670,871],{"class":720},[643,2672,2558],{"class":716},[689,2674,2676],{"className":691,"code":2675,"filename":290,"language":693,"meta":1037,"style":695},"import { evlog } from 'evlog\u002Ffastify'\n\nawait app.register(evlog, {\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n",[697,2677,2678,2697,2701,2721,2733,2765,2777,2781,2785],{"__ignoreMap":695},[643,2679,2680,2682,2684,2686,2688,2690,2692,2695],{"class":701,"line":702},[643,2681,885],{"class":705},[643,2683,888],{"class":720},[643,2685,2312],{"class":716},[643,2687,894],{"class":720},[643,2689,897],{"class":705},[643,2691,900],{"class":720},[643,2693,2694],{"class":740},"evlog\u002Ffastify",[643,2696,906],{"class":720},[643,2698,2699],{"class":701,"line":724},[643,2700,912],{"emptyLinePlaceholder":911},[643,2702,2703,2706,2709,2711,2714,2717,2719],{"class":701,"line":752},[643,2704,2705],{"class":705},"await",[643,2707,2708],{"class":716}," app",[643,2710,1738],{"class":720},[643,2712,2713],{"class":712},"register",[643,2715,2716],{"class":716},"(evlog",[643,2718,795],{"class":720},[643,2720,760],{"class":720},[643,2722,2723,2725,2727,2729,2731],{"class":701,"line":763},[643,2724,1517],{"class":727},[643,2726,717],{"class":720},[643,2728,1762],{"class":1722},[643,2730,1427],{"class":720},[643,2732,760],{"class":720},[643,2734,2735,2737,2739,2741,2743,2745,2747,2749,2751,2753,2755,2757,2759,2761,2763],{"class":701,"line":773},[643,2736,1773],{"class":705},[643,2738,1759],{"class":727},[643,2740,1762],{"class":716},[643,2742,1738],{"class":720},[643,2744,1782],{"class":716},[643,2746,1738],{"class":720},[643,2748,1787],{"class":716},[643,2750,1790],{"class":720},[643,2752,1793],{"class":716},[643,2754,1796],{"class":720},[643,2756,900],{"class":720},[643,2758,1801],{"class":740},[643,2760,737],{"class":720},[643,2762,1806],{"class":727},[643,2764,721],{"class":720},[643,2766,2767,2769,2771,2773,2775],{"class":701,"line":783},[643,2768,1813],{"class":716},[643,2770,1738],{"class":720},[643,2772,1818],{"class":716},[643,2774,935],{"class":720},[643,2776,1824],{"class":1823},[643,2778,2779],{"class":701,"line":802},[643,2780,1829],{"class":720},[643,2782,2783],{"class":701,"line":818},[643,2784,865],{"class":720},[643,2786,2787,2789],{"class":701,"line":834},[643,2788,871],{"class":720},[643,2790,874],{"class":716},[689,2792,2794],{"className":691,"code":2793,"filename":295,"language":693,"meta":1037,"style":695},"import { evlog } from 'evlog\u002Felysia'\n\napp.use(evlog({\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n}))\n",[697,2795,2796,2815,2819,2835,2847,2879,2891,2895,2899],{"__ignoreMap":695},[643,2797,2798,2800,2802,2804,2806,2808,2810,2813],{"class":701,"line":702},[643,2799,885],{"class":705},[643,2801,888],{"class":720},[643,2803,2312],{"class":716},[643,2805,894],{"class":720},[643,2807,897],{"class":705},[643,2809,900],{"class":720},[643,2811,2812],{"class":740},"evlog\u002Felysia",[643,2814,906],{"class":720},[643,2816,2817],{"class":701,"line":724},[643,2818,912],{"emptyLinePlaceholder":911},[643,2820,2821,2823,2825,2827,2829,2831,2833],{"class":701,"line":752},[643,2822,2474],{"class":716},[643,2824,1738],{"class":720},[643,2826,2479],{"class":712},[643,2828,717],{"class":716},[643,2830,1057],{"class":712},[643,2832,717],{"class":716},[643,2834,721],{"class":720},[643,2836,2837,2839,2841,2843,2845],{"class":701,"line":763},[643,2838,1517],{"class":727},[643,2840,717],{"class":720},[643,2842,1762],{"class":1722},[643,2844,1427],{"class":720},[643,2846,760],{"class":720},[643,2848,2849,2851,2853,2855,2857,2859,2861,2863,2865,2867,2869,2871,2873,2875,2877],{"class":701,"line":773},[643,2850,1773],{"class":705},[643,2852,1759],{"class":727},[643,2854,1762],{"class":716},[643,2856,1738],{"class":720},[643,2858,1782],{"class":716},[643,2860,1738],{"class":720},[643,2862,1787],{"class":716},[643,2864,1790],{"class":720},[643,2866,1793],{"class":716},[643,2868,1796],{"class":720},[643,2870,900],{"class":720},[643,2872,1801],{"class":740},[643,2874,737],{"class":720},[643,2876,1806],{"class":727},[643,2878,721],{"class":720},[643,2880,2881,2883,2885,2887,2889],{"class":701,"line":783},[643,2882,1813],{"class":716},[643,2884,1738],{"class":720},[643,2886,1818],{"class":716},[643,2888,935],{"class":720},[643,2890,1824],{"class":1823},[643,2892,2893],{"class":701,"line":802},[643,2894,1829],{"class":720},[643,2896,2897],{"class":701,"line":818},[643,2898,865],{"class":720},[643,2900,2901,2903],{"class":701,"line":834},[643,2902,871],{"class":720},[643,2904,2558],{"class":716},[689,2906,2909],{"className":691,"code":2907,"filename":275,"language":693,"meta":2908,"style":695},"import { EvlogModule } from 'evlog\u002Fnestjs'\n\nEvlogModule.forRoot({\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n","src\u002Fapp.module.ts",[697,2910,2911,2931,2935,2949,2961,2993,3005,3009,3013],{"__ignoreMap":695},[643,2912,2913,2915,2917,2920,2922,2924,2926,2929],{"class":701,"line":702},[643,2914,885],{"class":705},[643,2916,888],{"class":720},[643,2918,2919],{"class":716}," EvlogModule",[643,2921,894],{"class":720},[643,2923,897],{"class":705},[643,2925,900],{"class":720},[643,2927,2928],{"class":740},"evlog\u002Fnestjs",[643,2930,906],{"class":720},[643,2932,2933],{"class":701,"line":724},[643,2934,912],{"emptyLinePlaceholder":911},[643,2936,2937,2940,2942,2945,2947],{"class":701,"line":752},[643,2938,2939],{"class":716},"EvlogModule",[643,2941,1738],{"class":720},[643,2943,2944],{"class":712},"forRoot",[643,2946,717],{"class":716},[643,2948,721],{"class":720},[643,2950,2951,2953,2955,2957,2959],{"class":701,"line":763},[643,2952,1517],{"class":727},[643,2954,717],{"class":720},[643,2956,1762],{"class":1722},[643,2958,1427],{"class":720},[643,2960,760],{"class":720},[643,2962,2963,2965,2967,2969,2971,2973,2975,2977,2979,2981,2983,2985,2987,2989,2991],{"class":701,"line":773},[643,2964,1773],{"class":705},[643,2966,1759],{"class":727},[643,2968,1762],{"class":716},[643,2970,1738],{"class":720},[643,2972,1782],{"class":716},[643,2974,1738],{"class":720},[643,2976,1787],{"class":716},[643,2978,1790],{"class":720},[643,2980,1793],{"class":716},[643,2982,1796],{"class":720},[643,2984,900],{"class":720},[643,2986,1801],{"class":740},[643,2988,737],{"class":720},[643,2990,1806],{"class":727},[643,2992,721],{"class":720},[643,2994,2995,2997,2999,3001,3003],{"class":701,"line":783},[643,2996,1813],{"class":716},[643,2998,1738],{"class":720},[643,3000,1818],{"class":716},[643,3002,935],{"class":720},[643,3004,1824],{"class":1823},[643,3006,3007],{"class":701,"line":802},[643,3008,1829],{"class":720},[643,3010,3011],{"class":701,"line":818},[643,3012,865],{"class":720},[643,3014,3015,3017],{"class":701,"line":834},[643,3016,871],{"class":720},[643,3018,874],{"class":716},[689,3020,3023],{"className":691,"code":3021,"filename":319,"language":693,"meta":3022,"style":695},"import { withEvlog } from 'evlog\u002Forpc'\n\nconst handler = withEvlog(new RPCHandler(router), {\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n","server\u002Forpc.ts",[697,3024,3025,3044,3048,3075,3087,3119,3131,3135,3139],{"__ignoreMap":695},[643,3026,3027,3029,3031,3033,3035,3037,3039,3042],{"class":701,"line":702},[643,3028,885],{"class":705},[643,3030,888],{"class":720},[643,3032,925],{"class":716},[643,3034,894],{"class":720},[643,3036,897],{"class":705},[643,3038,900],{"class":720},[643,3040,3041],{"class":740},"evlog\u002Forpc",[643,3043,906],{"class":720},[643,3045,3046],{"class":701,"line":724},[643,3047,912],{"emptyLinePlaceholder":911},[643,3049,3050,3053,3056,3058,3060,3062,3065,3068,3071,3073],{"class":701,"line":752},[643,3051,3052],{"class":919},"const",[643,3054,3055],{"class":716}," handler ",[643,3057,1623],{"class":720},[643,3059,925],{"class":712},[643,3061,717],{"class":716},[643,3063,3064],{"class":720},"new",[643,3066,3067],{"class":712}," RPCHandler",[643,3069,3070],{"class":716},"(router)",[643,3072,795],{"class":720},[643,3074,760],{"class":720},[643,3076,3077,3079,3081,3083,3085],{"class":701,"line":763},[643,3078,1517],{"class":727},[643,3080,717],{"class":720},[643,3082,1762],{"class":1722},[643,3084,1427],{"class":720},[643,3086,760],{"class":720},[643,3088,3089,3091,3093,3095,3097,3099,3101,3103,3105,3107,3109,3111,3113,3115,3117],{"class":701,"line":773},[643,3090,1773],{"class":705},[643,3092,1759],{"class":727},[643,3094,1762],{"class":716},[643,3096,1738],{"class":720},[643,3098,1782],{"class":716},[643,3100,1738],{"class":720},[643,3102,1787],{"class":716},[643,3104,1790],{"class":720},[643,3106,1793],{"class":716},[643,3108,1796],{"class":720},[643,3110,900],{"class":720},[643,3112,1801],{"class":740},[643,3114,737],{"class":720},[643,3116,1806],{"class":727},[643,3118,721],{"class":720},[643,3120,3121,3123,3125,3127,3129],{"class":701,"line":783},[643,3122,1813],{"class":716},[643,3124,1738],{"class":720},[643,3126,1818],{"class":716},[643,3128,935],{"class":720},[643,3130,1824],{"class":1823},[643,3132,3133],{"class":701,"line":802},[643,3134,1829],{"class":720},[643,3136,3137],{"class":701,"line":818},[643,3138,865],{"class":720},[643,3140,3141,3143],{"class":701,"line":834},[643,3142,871],{"class":720},[643,3144,874],{"class":716},[689,3146,3149],{"className":691,"code":3147,"filename":305,"language":693,"meta":3148,"style":695},"import { withEvlog } from 'evlog\u002Fworkers'\n\nexport default withEvlog(handler, {\n  keep(ctx) {\n    if (ctx.context.user?.plan === 'enterprise') {\n      ctx.shouldKeep = true\n    }\n  },\n})\n","src\u002Fworker.ts",[697,3150,3151,3170,3174,3189,3201,3233,3245,3249,3253],{"__ignoreMap":695},[643,3152,3153,3155,3157,3159,3161,3163,3165,3168],{"class":701,"line":702},[643,3154,885],{"class":705},[643,3156,888],{"class":720},[643,3158,925],{"class":716},[643,3160,894],{"class":720},[643,3162,897],{"class":705},[643,3164,900],{"class":720},[643,3166,3167],{"class":740},"evlog\u002Fworkers",[643,3169,906],{"class":720},[643,3171,3172],{"class":701,"line":724},[643,3173,912],{"emptyLinePlaceholder":911},[643,3175,3176,3178,3180,3182,3185,3187],{"class":701,"line":752},[643,3177,706],{"class":705},[643,3179,709],{"class":705},[643,3181,925],{"class":712},[643,3183,3184],{"class":716},"(handler",[643,3186,795],{"class":720},[643,3188,760],{"class":720},[643,3190,3191,3193,3195,3197,3199],{"class":701,"line":763},[643,3192,1517],{"class":727},[643,3194,717],{"class":720},[643,3196,1762],{"class":1722},[643,3198,1427],{"class":720},[643,3200,760],{"class":720},[643,3202,3203,3205,3207,3209,3211,3213,3215,3217,3219,3221,3223,3225,3227,3229,3231],{"class":701,"line":773},[643,3204,1773],{"class":705},[643,3206,1759],{"class":727},[643,3208,1762],{"class":716},[643,3210,1738],{"class":720},[643,3212,1782],{"class":716},[643,3214,1738],{"class":720},[643,3216,1787],{"class":716},[643,3218,1790],{"class":720},[643,3220,1793],{"class":716},[643,3222,1796],{"class":720},[643,3224,900],{"class":720},[643,3226,1801],{"class":740},[643,3228,737],{"class":720},[643,3230,1806],{"class":727},[643,3232,721],{"class":720},[643,3234,3235,3237,3239,3241,3243],{"class":701,"line":783},[643,3236,1813],{"class":716},[643,3238,1738],{"class":720},[643,3240,1818],{"class":716},[643,3242,935],{"class":720},[643,3244,1824],{"class":1823},[643,3246,3247],{"class":701,"line":802},[643,3248,1829],{"class":720},[643,3250,3251],{"class":701,"line":818},[643,3252,865],{"class":720},[643,3254,3255,3257],{"class":701,"line":834},[643,3256,871],{"class":720},[643,3258,874],{"class":716},[618,3260,3261,3262,3264],{},"The ",[697,3263,1762],{}," object contains:",[1357,3266,3267,3278],{},[1360,3268,3269],{},[1363,3270,3271,3274,3276],{},[1366,3272,3273],{},"Field",[1366,3275,1371],{},[1366,3277,1374],{},[1376,3279,3280,3294,3307,3321,3335,3352],{},[1363,3281,3282,3286,3291],{},[1381,3283,3284],{},[697,3285,1337],{},[1381,3287,3288],{},[697,3289,3290],{},"number | undefined",[1381,3292,3293],{},"HTTP response status",[1363,3295,3296,3300,3304],{},[1381,3297,3298],{},[697,3299,1341],{},[1381,3301,3302],{},[697,3303,3290],{},[1381,3305,3306],{},"Request duration in ms",[1363,3308,3309,3313,3318],{},[1381,3310,3311],{},[697,3312,1345],{},[1381,3314,3315],{},[697,3316,3317],{},"string | undefined",[1381,3319,3320],{},"Request path",[1363,3322,3323,3328,3332],{},[1381,3324,3325],{},[697,3326,3327],{},"method",[1381,3329,3330],{},[697,3331,3317],{},[1381,3333,3334],{},"HTTP method",[1363,3336,3337,3341,3346],{},[1381,3338,3339],{},[697,3340,1782],{},[1381,3342,3343],{},[697,3344,3345],{},"Record\u003Cstring, unknown>",[1381,3347,3348,3349],{},"All fields set via ",[697,3350,3351],{},"log.set()",[1363,3353,3354,3358,3363],{},[1381,3355,3356],{},[697,3357,1818],{},[1381,3359,3360],{},[697,3361,3362],{},"boolean",[1381,3364,3365,3366,3369],{},"Set to ",[697,3367,3368],{},"true"," to force-keep",[670,3371,3373],{"id":3372},"a-configuration-that-ships","A configuration that ships",[618,3375,3376],{},"A typical production configuration that balances cost and visibility:",[686,3378,3379,3634,3839],{},[689,3380,3382],{"className":691,"code":3381,"filename":250,"language":693,"meta":694,"style":695},"export default defineNuxtConfig({\n  modules: ['evlog\u002Fnuxt'],\n  evlog: {\n    env: { service: 'my-app' },\n  },\n  $production: {\n    evlog: {\n      sampling: {\n        rates: {\n          info: 10,\n          warn: 50,\n          debug: 0,\n          error: 100,\n        },\n        keep: [\n          { status: 400 },\n          { duration: 1000 },\n          { path: '\u002Fapi\u002Fpayments\u002F**' },\n          { path: '\u002Fapi\u002Fauth\u002F**' },\n        ],\n      },\n    },\n  },\n})\n",[697,3383,3384,3396,3414,3422,3443,3447,3456,3465,3474,3483,3494,3505,3516,3527,3532,3542,3556,3569,3586,3604,3612,3617,3622,3627],{"__ignoreMap":695},[643,3385,3386,3388,3390,3392,3394],{"class":701,"line":702},[643,3387,706],{"class":705},[643,3389,709],{"class":705},[643,3391,713],{"class":712},[643,3393,717],{"class":716},[643,3395,721],{"class":720},[643,3397,3398,3400,3402,3404,3406,3408,3410,3412],{"class":701,"line":724},[643,3399,728],{"class":727},[643,3401,731],{"class":720},[643,3403,734],{"class":716},[643,3405,737],{"class":720},[643,3407,741],{"class":740},[643,3409,737],{"class":720},[643,3411,746],{"class":716},[643,3413,749],{"class":720},[643,3415,3416,3418,3420],{"class":701,"line":752},[643,3417,755],{"class":727},[643,3419,731],{"class":720},[643,3421,760],{"class":720},[643,3423,3424,3427,3429,3431,3433,3435,3437,3439,3441],{"class":701,"line":763},[643,3425,3426],{"class":727},"    env",[643,3428,731],{"class":720},[643,3430,888],{"class":720},[643,3432,1084],{"class":727},[643,3434,731],{"class":720},[643,3436,900],{"class":720},[643,3438,953],{"class":740},[643,3440,737],{"class":720},[643,3442,1095],{"class":720},[643,3444,3445],{"class":701,"line":773},[643,3446,865],{"class":720},[643,3448,3449,3452,3454],{"class":701,"line":783},[643,3450,3451],{"class":727},"  $production",[643,3453,731],{"class":720},[643,3455,760],{"class":720},[643,3457,3458,3461,3463],{"class":701,"line":802},[643,3459,3460],{"class":727},"    evlog",[643,3462,731],{"class":720},[643,3464,760],{"class":720},[643,3466,3467,3470,3472],{"class":701,"line":818},[643,3468,3469],{"class":727},"      sampling",[643,3471,731],{"class":720},[643,3473,760],{"class":720},[643,3475,3476,3479,3481],{"class":701,"line":834},[643,3477,3478],{"class":727},"        rates",[643,3480,731],{"class":720},[643,3482,760],{"class":720},[643,3484,3485,3488,3490,3492],{"class":701,"line":850},[643,3486,3487],{"class":727},"          info",[643,3489,731],{"class":720},[643,3491,792],{"class":791},[643,3493,749],{"class":720},[643,3495,3496,3499,3501,3503],{"class":701,"line":856},[643,3497,3498],{"class":727},"          warn",[643,3500,731],{"class":720},[643,3502,810],{"class":791},[643,3504,749],{"class":720},[643,3506,3507,3510,3512,3514],{"class":701,"line":862},[643,3508,3509],{"class":727},"          debug",[643,3511,731],{"class":720},[643,3513,826],{"class":791},[643,3515,749],{"class":720},[643,3517,3518,3521,3523,3525],{"class":701,"line":868},[643,3519,3520],{"class":727},"          error",[643,3522,731],{"class":720},[643,3524,842],{"class":791},[643,3526,749],{"class":720},[643,3528,3529],{"class":701,"line":2025},[643,3530,3531],{"class":720},"        },\n",[643,3533,3535,3538,3540],{"class":701,"line":3534},15,[643,3536,3537],{"class":727},"        keep",[643,3539,731],{"class":720},[643,3541,1254],{"class":716},[643,3543,3545,3548,3550,3552,3554],{"class":701,"line":3544},16,[643,3546,3547],{"class":720},"          {",[643,3549,1262],{"class":727},[643,3551,731],{"class":720},[643,3553,1267],{"class":791},[643,3555,1095],{"class":720},[643,3557,3559,3561,3563,3565,3567],{"class":701,"line":3558},17,[643,3560,3547],{"class":720},[643,3562,1280],{"class":727},[643,3564,731],{"class":720},[643,3566,1285],{"class":791},[643,3568,1095],{"class":720},[643,3570,3572,3574,3576,3578,3580,3582,3584],{"class":701,"line":3571},18,[643,3573,3547],{"class":720},[643,3575,1297],{"class":727},[643,3577,731],{"class":720},[643,3579,900],{"class":720},[643,3581,1304],{"class":740},[643,3583,737],{"class":720},[643,3585,1095],{"class":720},[643,3587,3589,3591,3593,3595,3597,3600,3602],{"class":701,"line":3588},19,[643,3590,3547],{"class":720},[643,3592,1297],{"class":727},[643,3594,731],{"class":720},[643,3596,900],{"class":720},[643,3598,3599],{"class":740},"\u002Fapi\u002Fauth\u002F**",[643,3601,737],{"class":720},[643,3603,1095],{"class":720},[643,3605,3607,3610],{"class":701,"line":3606},20,[643,3608,3609],{"class":716},"        ]",[643,3611,749],{"class":720},[643,3613,3615],{"class":701,"line":3614},21,[643,3616,853],{"class":720},[643,3618,3620],{"class":701,"line":3619},22,[643,3621,859],{"class":720},[643,3623,3625],{"class":701,"line":3624},23,[643,3626,865],{"class":720},[643,3628,3630,3632],{"class":701,"line":3629},24,[643,3631,871],{"class":720},[643,3633,874],{"class":716},[689,3635,3637],{"className":691,"code":3636,"filename":255,"language":693,"meta":878,"style":695},"import { createEvlog } from 'evlog\u002Fnext'\n\nexport const { withEvlog, useLogger } = createEvlog({\n  service: 'my-app',\n  sampling: {\n    rates: {\n      info: 10,\n      warn: 50,\n      debug: 0,\n      error: 100,\n    },\n    keep: [\n      { status: 400 },\n      { duration: 1000 },\n      { path: '\u002Fapi\u002Fpayments\u002F**' },\n      { path: '\u002Fapi\u002Fauth\u002F**' },\n    ],\n  },\n})\n",[697,3638,3639,3657,3661,3685,3699,3707,3715,3725,3735,3745,3755,3759,3767,3779,3791,3807,3823,3829,3833],{"__ignoreMap":695},[643,3640,3641,3643,3645,3647,3649,3651,3653,3655],{"class":701,"line":702},[643,3642,885],{"class":705},[643,3644,888],{"class":720},[643,3646,891],{"class":716},[643,3648,894],{"class":720},[643,3650,897],{"class":705},[643,3652,900],{"class":720},[643,3654,903],{"class":740},[643,3656,906],{"class":720},[643,3658,3659],{"class":701,"line":724},[643,3660,912],{"emptyLinePlaceholder":911},[643,3662,3663,3665,3667,3669,3671,3673,3675,3677,3679,3681,3683],{"class":701,"line":752},[643,3664,706],{"class":705},[643,3666,920],{"class":919},[643,3668,888],{"class":720},[643,3670,925],{"class":716},[643,3672,795],{"class":720},[643,3674,930],{"class":716},[643,3676,871],{"class":720},[643,3678,935],{"class":720},[643,3680,891],{"class":712},[643,3682,717],{"class":716},[643,3684,721],{"class":720},[643,3686,3687,3689,3691,3693,3695,3697],{"class":701,"line":763},[643,3688,946],{"class":727},[643,3690,731],{"class":720},[643,3692,900],{"class":720},[643,3694,953],{"class":740},[643,3696,737],{"class":720},[643,3698,749],{"class":720},[643,3700,3701,3703,3705],{"class":701,"line":773},[643,3702,962],{"class":727},[643,3704,731],{"class":720},[643,3706,760],{"class":720},[643,3708,3709,3711,3713],{"class":701,"line":783},[643,3710,971],{"class":727},[643,3712,731],{"class":720},[643,3714,760],{"class":720},[643,3716,3717,3719,3721,3723],{"class":701,"line":802},[643,3718,980],{"class":727},[643,3720,731],{"class":720},[643,3722,792],{"class":791},[643,3724,749],{"class":720},[643,3726,3727,3729,3731,3733],{"class":701,"line":818},[643,3728,991],{"class":727},[643,3730,731],{"class":720},[643,3732,810],{"class":791},[643,3734,749],{"class":720},[643,3736,3737,3739,3741,3743],{"class":701,"line":834},[643,3738,1002],{"class":727},[643,3740,731],{"class":720},[643,3742,826],{"class":791},[643,3744,749],{"class":720},[643,3746,3747,3749,3751,3753],{"class":701,"line":850},[643,3748,1013],{"class":727},[643,3750,731],{"class":720},[643,3752,842],{"class":791},[643,3754,749],{"class":720},[643,3756,3757],{"class":701,"line":856},[643,3758,859],{"class":720},[643,3760,3761,3763,3765],{"class":701,"line":862},[643,3762,1249],{"class":727},[643,3764,731],{"class":720},[643,3766,1254],{"class":716},[643,3768,3769,3771,3773,3775,3777],{"class":701,"line":868},[643,3770,1259],{"class":720},[643,3772,1262],{"class":727},[643,3774,731],{"class":720},[643,3776,1267],{"class":791},[643,3778,1095],{"class":720},[643,3780,3781,3783,3785,3787,3789],{"class":701,"line":2025},[643,3782,1259],{"class":720},[643,3784,1280],{"class":727},[643,3786,731],{"class":720},[643,3788,1285],{"class":791},[643,3790,1095],{"class":720},[643,3792,3793,3795,3797,3799,3801,3803,3805],{"class":701,"line":3534},[643,3794,1259],{"class":720},[643,3796,1297],{"class":727},[643,3798,731],{"class":720},[643,3800,900],{"class":720},[643,3802,1304],{"class":740},[643,3804,737],{"class":720},[643,3806,1095],{"class":720},[643,3808,3809,3811,3813,3815,3817,3819,3821],{"class":701,"line":3544},[643,3810,1259],{"class":720},[643,3812,1297],{"class":727},[643,3814,731],{"class":720},[643,3816,900],{"class":720},[643,3818,3599],{"class":740},[643,3820,737],{"class":720},[643,3822,1095],{"class":720},[643,3824,3825,3827],{"class":701,"line":3558},[643,3826,1316],{"class":716},[643,3828,749],{"class":720},[643,3830,3831],{"class":701,"line":3571},[643,3832,865],{"class":720},[643,3834,3835,3837],{"class":701,"line":3588},[643,3836,871],{"class":720},[643,3838,874],{"class":716},[689,3840,3842],{"className":691,"code":3841,"filename":310,"language":693,"meta":1037,"style":695},"import { initLogger } from 'evlog'\n\ninitLogger({\n  env: { service: 'my-app' },\n  sampling: {\n    rates: {\n      info: 10,\n      warn: 50,\n      debug: 0,\n      error: 100,\n    },\n    keep: [\n      { status: 400 },\n      { duration: 1000 },\n      { path: '\u002Fapi\u002Fpayments\u002F**' },\n      { path: '\u002Fapi\u002Fauth\u002F**' },\n    ],\n  },\n})\n",[697,3843,3844,3862,3866,3874,3894,3902,3910,3920,3930,3940,3950,3954,3962,3974,3986,4002,4018,4024,4028],{"__ignoreMap":695},[643,3845,3846,3848,3850,3852,3854,3856,3858,3860],{"class":701,"line":702},[643,3847,885],{"class":705},[643,3849,888],{"class":720},[643,3851,1048],{"class":716},[643,3853,894],{"class":720},[643,3855,897],{"class":705},[643,3857,900],{"class":720},[643,3859,1057],{"class":740},[643,3861,906],{"class":720},[643,3863,3864],{"class":701,"line":724},[643,3865,912],{"emptyLinePlaceholder":911},[643,3867,3868,3870,3872],{"class":701,"line":752},[643,3869,1068],{"class":712},[643,3871,717],{"class":716},[643,3873,721],{"class":720},[643,3875,3876,3878,3880,3882,3884,3886,3888,3890,3892],{"class":701,"line":763},[643,3877,1077],{"class":727},[643,3879,731],{"class":720},[643,3881,888],{"class":720},[643,3883,1084],{"class":727},[643,3885,731],{"class":720},[643,3887,900],{"class":720},[643,3889,953],{"class":740},[643,3891,737],{"class":720},[643,3893,1095],{"class":720},[643,3895,3896,3898,3900],{"class":701,"line":773},[643,3897,962],{"class":727},[643,3899,731],{"class":720},[643,3901,760],{"class":720},[643,3903,3904,3906,3908],{"class":701,"line":783},[643,3905,971],{"class":727},[643,3907,731],{"class":720},[643,3909,760],{"class":720},[643,3911,3912,3914,3916,3918],{"class":701,"line":802},[643,3913,980],{"class":727},[643,3915,731],{"class":720},[643,3917,792],{"class":791},[643,3919,749],{"class":720},[643,3921,3922,3924,3926,3928],{"class":701,"line":818},[643,3923,991],{"class":727},[643,3925,731],{"class":720},[643,3927,810],{"class":791},[643,3929,749],{"class":720},[643,3931,3932,3934,3936,3938],{"class":701,"line":834},[643,3933,1002],{"class":727},[643,3935,731],{"class":720},[643,3937,826],{"class":791},[643,3939,749],{"class":720},[643,3941,3942,3944,3946,3948],{"class":701,"line":850},[643,3943,1013],{"class":727},[643,3945,731],{"class":720},[643,3947,842],{"class":791},[643,3949,749],{"class":720},[643,3951,3952],{"class":701,"line":856},[643,3953,859],{"class":720},[643,3955,3956,3958,3960],{"class":701,"line":862},[643,3957,1249],{"class":727},[643,3959,731],{"class":720},[643,3961,1254],{"class":716},[643,3963,3964,3966,3968,3970,3972],{"class":701,"line":868},[643,3965,1259],{"class":720},[643,3967,1262],{"class":727},[643,3969,731],{"class":720},[643,3971,1267],{"class":791},[643,3973,1095],{"class":720},[643,3975,3976,3978,3980,3982,3984],{"class":701,"line":2025},[643,3977,1259],{"class":720},[643,3979,1280],{"class":727},[643,3981,731],{"class":720},[643,3983,1285],{"class":791},[643,3985,1095],{"class":720},[643,3987,3988,3990,3992,3994,3996,3998,4000],{"class":701,"line":3534},[643,3989,1259],{"class":720},[643,3991,1297],{"class":727},[643,3993,731],{"class":720},[643,3995,900],{"class":720},[643,3997,1304],{"class":740},[643,3999,737],{"class":720},[643,4001,1095],{"class":720},[643,4003,4004,4006,4008,4010,4012,4014,4016],{"class":701,"line":3544},[643,4005,1259],{"class":720},[643,4007,1297],{"class":727},[643,4009,731],{"class":720},[643,4011,900],{"class":720},[643,4013,3599],{"class":740},[643,4015,737],{"class":720},[643,4017,1095],{"class":720},[643,4019,4020,4022],{"class":701,"line":3558},[643,4021,1316],{"class":716},[643,4023,749],{"class":720},[643,4025,4026],{"class":701,"line":3571},[643,4027,865],{"class":720},[643,4029,4030,4032],{"class":701,"line":3588},[643,4031,871],{"class":720},[643,4033,874],{"class":716},[1182,4035,4037,4038,4041],{"color":4036,"icon":488},"warning","In Nuxt, use the ",[697,4039,4040],{},"$production"," override to keep full logging in development while sampling in production. In other frameworks, use your own environment check or config system.",[670,4043,4045],{"id":4044},"next-steps","Next Steps",[630,4047,4048,4053],{},[633,4049,4050,4052],{},[659,4051,570],{"href":571}," - Security and production checklist",[633,4054,4055,4057],{},[659,4056,51],{"href":52}," - Design effective wide events",[4059,4060,4061],"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 .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":695,"searchDepth":724,"depth":724,"links":4063},[4064,4065,4068,4069,4070,4071],{"id":672,"depth":724,"text":673},{"id":1192,"depth":724,"text":1193,"children":4066},[4067],{"id":1354,"depth":752,"text":1355},{"id":1430,"depth":724,"text":1431},{"id":1687,"depth":724,"text":1688},{"id":3372,"depth":724,"text":3373},{"id":4044,"depth":724,"text":4045},"Two-tier sampling: head sampling drops noise by level, and tail sampling keeps an event once its outcome is known.","md",[4075,4078],{"label":570,"icon":398,"to":571,"color":4076,"variant":4077},"neutral","subtle",{"label":51,"icon":54,"to":52,"color":4076,"variant":4077},{},{"icon":69},{"title":66,"description":4072},"2vkeWZkAh05qlEIrtRxKi0o7XZGg9uZzItdg_rWTvfA",[4084,4086],{"title":61,"path":62,"stem":63,"description":4085,"icon":64,"children":-1},"An evlog event from creation to drain, across all three modes, through sampling, enrichment, and delivery.",{"title":71,"path":72,"stem":73,"description":4087,"icon":74,"children":-1},"Automatically scrub PII from wide events before console output and drains. Built-in smart masking for credit cards, emails, IPs, phone numbers, JWTs, and more.",1791657872252]