[{"data":1,"prerenderedAt":4669},["ShallowReactive",2],{"navigation_docs":3,"-use-cases-eve":612,"-use-cases-eve-surround":4664},[4,35,85,138,318,453,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],{"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},"map","\u002Fcli\u002Fmap","3.cli\u002F2.map","i-lucide-radar",{"title":104,"path":105,"stem":106,"icon":107},"Rules","\u002Fcli\u002Frules","3.cli\u002F3.rules","i-lucide-list-checks",{"title":109,"path":110,"stem":111,"icon":112},"Scoring","\u002Fcli\u002Fscoring","3.cli\u002F4.scoring","i-lucide-gauge",{"title":114,"path":115,"stem":116,"icon":117},"CI","\u002Fcli\u002Fci","3.cli\u002F5.ci","i-lucide-git-pull-request",{"title":119,"path":120,"stem":121,"icon":122},"doctor","\u002Fcli\u002Fdoctor","3.cli\u002F6.doctor","i-lucide-stethoscope",{"title":124,"path":125,"stem":126,"icon":127},"telemetry","\u002Fcli\u002Ftelemetry","3.cli\u002F7.telemetry","i-lucide-bar-chart-3",{"title":129,"path":130,"stem":131,"icon":132},"agents","\u002Fcli\u002Fagents","3.cli\u002F8.agents","i-lucide-bot",{"title":134,"path":135,"stem":136,"icon":137},"Observability Score","\u002Fcli\u002Fobservability-score","3.cli\u002F9.observability-score","i-lucide-activity",{"title":139,"path":140,"stem":141,"children":142,"page":34},"Integrate","\u002Fintegrate","4.integrate",[143,147,230],{"title":41,"path":144,"stem":145,"icon":146},"\u002Fintegrate\u002Foverview","4.integrate\u002F0.overview","i-lucide-plug",{"title":148,"path":149,"stem":150,"children":151,"page":34},"Adapters","\u002Fintegrate\u002Fadapters","4.integrate\u002Fadapters",[152,155,185,210],{"title":41,"path":153,"stem":154,"icon":44},"\u002Fintegrate\u002Fadapters\u002Foverview","4.integrate\u002Fadapters\u002F01.overview",{"title":156,"path":157,"stem":158,"children":159,"page":34},"Cloud","\u002Fintegrate\u002Fadapters\u002Fcloud","4.integrate\u002Fadapters\u002Fcloud",[160,165,170,175,180],{"title":161,"path":162,"stem":163,"icon":164},"Axiom","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Faxiom","4.integrate\u002Fadapters\u002Fcloud\u002F01.axiom","i-custom-axiom",{"title":166,"path":167,"stem":168,"icon":169},"PostHog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog","4.integrate\u002Fadapters\u002Fcloud\u002F02.posthog","i-simple-icons-posthog",{"title":171,"path":172,"stem":173,"icon":174},"Sentry","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fsentry","4.integrate\u002Fadapters\u002Fcloud\u002F03.sentry","i-simple-icons-sentry",{"title":176,"path":177,"stem":178,"icon":179},"Better Stack","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fbetter-stack","4.integrate\u002Fadapters\u002Fcloud\u002F04.better-stack","i-simple-icons-betterstack",{"title":181,"path":182,"stem":183,"icon":184},"Datadog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fdatadog","4.integrate\u002Fadapters\u002Fcloud\u002F05.datadog","i-simple-icons-datadog",{"title":186,"path":187,"stem":188,"children":189,"page":34},"Cloud or Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fhybrid","4.integrate\u002Fadapters\u002Fhybrid",[190,195,200,205],{"title":191,"path":192,"stem":193,"icon":194},"Grafana Loki","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Floki","4.integrate\u002Fadapters\u002Fhybrid\u002F01.loki","i-simple-icons-grafana",{"title":196,"path":197,"stem":198,"icon":199},"ClickHouse","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fclickhouse","4.integrate\u002Fadapters\u002Fhybrid\u002F02.clickhouse","i-simple-icons-clickhouse",{"title":201,"path":202,"stem":203,"icon":204},"OTLP","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fotlp","4.integrate\u002Fadapters\u002Fhybrid\u002F03.otlp","i-simple-icons-opentelemetry",{"title":206,"path":207,"stem":208,"icon":209},"HyperDX","\u002Fintegrate\u002Fadapters\u002Fhybrid\u002Fhyperdx","4.integrate\u002Fadapters\u002Fhybrid\u002F04.hyperdx","i-custom-hyperdx",{"title":211,"path":212,"stem":213,"children":214,"page":34},"Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fself-hosted","4.integrate\u002Fadapters\u002Fself-hosted",[215,220,225],{"title":216,"path":217,"stem":218,"icon":219},"File System","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Ffs","4.integrate\u002Fadapters\u002Fself-hosted\u002F01.fs","i-lucide-hard-drive",{"title":221,"path":222,"stem":223,"icon":224},"NuxtHub","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fnuxthub","4.integrate\u002Fadapters\u002Fself-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":226,"path":227,"stem":228,"icon":229},"Memory","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fmemory","4.integrate\u002Fadapters\u002Fself-hosted\u002F03.memory","i-lucide-cpu",{"title":231,"path":232,"stem":233,"children":234,"page":34},"Frameworks","\u002Fintegrate\u002Fframeworks","4.integrate\u002Fframeworks",[235,239,244,249,254,259,264,269,274,279,284,289,294,299,303,308,313],{"title":41,"path":236,"stem":237,"icon":238},"\u002Fintegrate\u002Fframeworks\u002Foverview","4.integrate\u002Fframeworks\u002F00.overview","i-lucide-layout-grid",{"title":240,"path":241,"stem":242,"icon":243},"Nuxt","\u002Fintegrate\u002Fframeworks\u002Fnuxt","4.integrate\u002Fframeworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":245,"path":246,"stem":247,"icon":248},"Next.js","\u002Fintegrate\u002Fframeworks\u002Fnextjs","4.integrate\u002Fframeworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":250,"path":251,"stem":252,"icon":253},"SvelteKit","\u002Fintegrate\u002Fframeworks\u002Fsveltekit","4.integrate\u002Fframeworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":255,"path":256,"stem":257,"icon":258},"Nitro","\u002Fintegrate\u002Fframeworks\u002Fnitro","4.integrate\u002Fframeworks\u002F04.nitro","i-custom-nitro",{"title":260,"path":261,"stem":262,"icon":263},"TanStack Start","\u002Fintegrate\u002Fframeworks\u002Ftanstack-start","4.integrate\u002Fframeworks\u002F05.tanstack-start","i-custom-tanstack",{"title":265,"path":266,"stem":267,"icon":268},"NestJS","\u002Fintegrate\u002Fframeworks\u002Fnestjs","4.integrate\u002Fframeworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":270,"path":271,"stem":272,"icon":273},"Express","\u002Fintegrate\u002Fframeworks\u002Fexpress","4.integrate\u002Fframeworks\u002F07.express","i-simple-icons-express",{"title":275,"path":276,"stem":277,"icon":278},"Hono","\u002Fintegrate\u002Fframeworks\u002Fhono","4.integrate\u002Fframeworks\u002F08.hono","i-simple-icons-hono",{"title":280,"path":281,"stem":282,"icon":283},"Fastify","\u002Fintegrate\u002Fframeworks\u002Ffastify","4.integrate\u002Fframeworks\u002F09.fastify","i-simple-icons-fastify",{"title":285,"path":286,"stem":287,"icon":288},"Elysia","\u002Fintegrate\u002Fframeworks\u002Felysia","4.integrate\u002Fframeworks\u002F10.elysia","i-custom-elysia",{"title":290,"path":291,"stem":292,"icon":293},"React Router","\u002Fintegrate\u002Fframeworks\u002Freact-router","4.integrate\u002Fframeworks\u002F11.react-router","i-custom-reactrouter",{"title":295,"path":296,"stem":297,"icon":298},"Cloudflare Workers","\u002Fintegrate\u002Fframeworks\u002Fcloudflare-workers","4.integrate\u002Fframeworks\u002F12.cloudflare-workers","i-simple-icons-cloudflare",{"title":300,"path":301,"stem":302,"icon":79},"Standalone","\u002Fintegrate\u002Fframeworks\u002Fstandalone","4.integrate\u002Fframeworks\u002F13.standalone",{"title":304,"path":305,"stem":306,"icon":307},"Astro","\u002Fintegrate\u002Fframeworks\u002Fastro","4.integrate\u002Fframeworks\u002F14.astro","i-simple-icons-astro",{"title":309,"path":310,"stem":311,"icon":312},"oRPC","\u002Fintegrate\u002Fframeworks\u002Forpc","4.integrate\u002Fframeworks\u002F15.orpc","i-lucide-network",{"title":314,"path":315,"stem":316,"icon":317},"AWS Lambda","\u002Fintegrate\u002Fframeworks\u002Faws-lambda","4.integrate\u002Fframeworks\u002F16.aws-lambda","i-custom-lambda",{"title":319,"path":320,"stem":321,"children":322,"page":34},"Use Cases","\u002Fuse-cases","5.use-cases",[323,326,331,359,386,418,439,444,449],{"title":41,"path":324,"stem":325,"icon":107},"\u002Fuse-cases\u002Foverview","5.use-cases\u002F0.overview",{"title":327,"path":328,"stem":329,"icon":330},"Client Logging","\u002Fuse-cases\u002Fclient-logging","5.use-cases\u002F1.client-logging","i-lucide-monitor",{"title":332,"icon":333,"path":334,"stem":335,"children":336,"page":34},"AI SDK","i-simple-icons-vercel","\u002Fuse-cases\u002Fai-sdk","5.use-cases\u002F2.ai-sdk",[337,340,345,350,355],{"title":41,"path":338,"stem":339,"icon":44},"\u002Fuse-cases\u002Fai-sdk\u002Foverview","5.use-cases\u002F2.ai-sdk\u002F01.overview",{"title":341,"path":342,"stem":343,"icon":344},"Usage","\u002Fuse-cases\u002Fai-sdk\u002Fusage","5.use-cases\u002F2.ai-sdk\u002F02.usage","i-lucide-code",{"title":346,"path":347,"stem":348,"icon":349},"Options","\u002Fuse-cases\u002Fai-sdk\u002Foptions","5.use-cases\u002F2.ai-sdk\u002F03.options","i-lucide-sliders",{"title":351,"path":352,"stem":353,"icon":354},"Metadata","\u002Fuse-cases\u002Fai-sdk\u002Fmetadata","5.use-cases\u002F2.ai-sdk\u002F04.metadata","i-lucide-database",{"title":356,"path":357,"stem":358,"icon":137},"Telemetry","\u002Fuse-cases\u002Fai-sdk\u002Ftelemetry","5.use-cases\u002F2.ai-sdk\u002F05.telemetry",{"title":360,"icon":361,"path":362,"stem":363,"children":364,"page":34},"Better Auth","i-simple-icons-betterauth","\u002Fuse-cases\u002Fbetter-auth","5.use-cases\u002F3.better-auth",[365,368,373,378,382],{"title":41,"path":366,"stem":367,"icon":44},"\u002Fuse-cases\u002Fbetter-auth\u002Foverview","5.use-cases\u002F3.better-auth\u002F01.overview",{"title":369,"path":370,"stem":371,"icon":372},"Identify User","\u002Fuse-cases\u002Fbetter-auth\u002Fidentify-user","5.use-cases\u002F3.better-auth\u002F02.identify-user","i-lucide-user-check",{"title":374,"path":375,"stem":376,"icon":377},"Middleware","\u002Fuse-cases\u002Fbetter-auth\u002Fmiddleware","5.use-cases\u002F3.better-auth\u002F03.middleware","i-lucide-shield",{"title":379,"path":380,"stem":381,"icon":330},"Client Sync","\u002Fuse-cases\u002Fbetter-auth\u002Fclient-sync","5.use-cases\u002F3.better-auth\u002F04.client-sync",{"title":383,"path":384,"stem":385,"icon":112},"Performance","\u002Fuse-cases\u002Fbetter-auth\u002Fperformance","5.use-cases\u002F3.better-auth\u002F05.performance",{"title":387,"icon":388,"path":389,"stem":390,"children":391,"page":34},"Audit Logs","i-lucide-shield-check","\u002Fuse-cases\u002Faudit","5.use-cases\u002F4.audit",[392,395,400,405,410,414],{"title":41,"path":393,"stem":394,"icon":44},"\u002Fuse-cases\u002Faudit\u002Foverview","5.use-cases\u002F4.audit\u002F01.overview",{"title":396,"path":397,"stem":398,"icon":399},"Schema","\u002Fuse-cases\u002Faudit\u002Fschema","5.use-cases\u002F4.audit\u002F02.schema","i-lucide-file-text",{"title":401,"path":402,"stem":403,"icon":404},"Recording","\u002Fuse-cases\u002Faudit\u002Frecording","5.use-cases\u002F4.audit\u002F03.recording","i-lucide-pen-line",{"title":406,"path":407,"stem":408,"icon":409},"Drains","\u002Fuse-cases\u002Faudit\u002Fpipeline","5.use-cases\u002F4.audit\u002F04.pipeline","i-lucide-link",{"title":411,"path":412,"stem":413,"icon":388},"Compliance","\u002Fuse-cases\u002Faudit\u002Fcompliance","5.use-cases\u002F4.audit\u002F05.compliance",{"title":415,"path":416,"stem":417,"icon":84},"Recipes","\u002Fuse-cases\u002Faudit\u002Frecipes","5.use-cases\u002F4.audit\u002F06.recipes",{"title":356,"icon":112,"path":419,"stem":420,"children":421,"page":34},"\u002Fuse-cases\u002Ftelemetry","5.use-cases\u002F4.telemetry",[422,425,430,435],{"title":41,"path":423,"stem":424,"icon":44},"\u002Fuse-cases\u002Ftelemetry\u002Foverview","5.use-cases\u002F4.telemetry\u002F01.overview",{"title":426,"path":427,"stem":428,"icon":429},"Setup","\u002Fuse-cases\u002Ftelemetry\u002Fsetup","5.use-cases\u002F4.telemetry\u002F02.setup","i-lucide-wrench",{"title":431,"path":432,"stem":433,"icon":434},"Ingest","\u002Fuse-cases\u002Ftelemetry\u002Fingest","5.use-cases\u002F4.telemetry\u002F03.ingest","i-lucide-server",{"title":436,"path":437,"stem":438,"icon":84},"Reference","\u002Fuse-cases\u002Ftelemetry\u002Freference","5.use-cases\u002F4.telemetry\u002F04.reference",{"title":440,"path":441,"stem":442,"icon":443},"Enrichers","\u002Fuse-cases\u002Fenrichers","5.use-cases\u002F5.enrichers","i-lucide-sparkles",{"title":445,"path":446,"stem":447,"icon":448},"eve","\u002Fuse-cases\u002Feve","5.use-cases\u002F5.eve","i-custom-eve",{"title":450,"path":451,"stem":452,"icon":434},"Node.js request logging","\u002Fuse-cases\u002Fstructured-logging-nodejs","5.use-cases\u002F6.structured-logging-nodejs",{"title":454,"path":455,"stem":456,"children":457,"page":34},"Libraries","\u002Flibraries","6.libraries",[458,462,467,470,474,479,484],{"title":41,"path":459,"stem":460,"icon":461},"\u002Flibraries\u002Foverview","6.libraries\u002F0.overview","i-lucide-package",{"title":463,"path":464,"stem":465,"icon":466},"Emitting Events","\u002Flibraries\u002Femitting","6.libraries\u002F1.emitting","i-lucide-radio",{"title":56,"path":468,"stem":469,"icon":59},"\u002Flibraries\u002Ferrors","6.libraries\u002F2.errors",{"title":471,"path":472,"stem":473,"icon":132},"Errors Agents Can Act On","\u002Flibraries\u002Fagents","6.libraries\u002F3.agents",{"title":475,"path":476,"stem":477,"icon":478},"Exporting the Catalog","\u002Flibraries\u002Fexporting","6.libraries\u002F4.exporting","i-lucide-file-output",{"title":480,"path":481,"stem":482,"icon":483},"Migrating","\u002Flibraries\u002Fmigrating","6.libraries\u002F5.migrating","i-lucide-route",{"title":485,"path":486,"stem":487,"icon":488},"Testing","\u002Flibraries\u002Ftesting","6.libraries\u002F6.testing","i-lucide-flask-conical",{"title":490,"path":491,"stem":492,"children":493,"page":34},"Extend","\u002Fextend","7.extend",[494,498,503,508,512,517,521,525,529,533,538,543],{"title":41,"path":495,"stem":496,"icon":497},"\u002Fextend\u002Foverview","7.extend\u002F0.overview","i-lucide-blocks",{"title":499,"path":500,"stem":501,"icon":502},"Stream","\u002Fextend\u002Fstream","7.extend\u002F1.stream","i-lucide-radio-tower",{"title":504,"path":505,"stem":506,"icon":507},"Custom framework","\u002Fextend\u002Fcustom-framework","7.extend\u002F10.custom-framework","i-lucide-puzzle",{"title":509,"path":510,"stem":511,"icon":502},"Diagnostics channel","\u002Fextend\u002Fdiagnostics-channel","7.extend\u002F11.diagnostics-channel",{"title":513,"path":514,"stem":515,"icon":516},"FS reader","\u002Fextend\u002Ffs-reader","7.extend\u002F2.fs-reader","i-lucide-folder-search",{"title":415,"path":518,"stem":519,"icon":520},"\u002Fextend\u002Fconsumer-recipes","7.extend\u002F3.consumer-recipes","i-lucide-chef-hat",{"title":522,"path":523,"stem":524,"icon":497},"Plugins","\u002Fextend\u002Fplugins","7.extend\u002F4.plugins",{"title":526,"path":527,"stem":528,"icon":443},"Custom enrichers","\u002Fextend\u002Fcustom-enrichers","7.extend\u002F5.custom-enrichers",{"title":530,"path":531,"stem":532,"icon":69},"Tail sampling","\u002Fextend\u002Ftail-sampling","7.extend\u002F6.tail-sampling",{"title":534,"path":535,"stem":536,"icon":537},"Identity headers","\u002Fextend\u002Fidentity-headers","7.extend\u002F7.identity-headers","i-lucide-fingerprint",{"title":539,"path":540,"stem":541,"icon":542},"Custom drains","\u002Fextend\u002Fcustom-drains","7.extend\u002F8.custom-drains","i-lucide-share-2",{"title":544,"path":545,"stem":546,"icon":547},"Drain pipeline","\u002Fextend\u002Fdrain-pipeline","7.extend\u002F9.drain-pipeline","i-lucide-workflow",{"title":436,"path":549,"stem":550,"children":551,"page":34},"\u002Freference","8.reference",[552,556,561,564,569,573,578,582],{"title":41,"path":553,"stem":554,"icon":555},"\u002Freference\u002Foverview","8.reference\u002F0.overview","i-lucide-book-marked",{"title":557,"path":558,"stem":559,"icon":560},"Configuration","\u002Freference\u002Fconfiguration","8.reference\u002F1.configuration","i-lucide-settings",{"title":383,"path":562,"stem":563,"icon":112},"\u002Freference\u002Fperformance","8.reference\u002F2.performance",{"title":565,"path":566,"stem":567,"icon":568},"Vite Plugin","\u002Freference\u002Fvite-plugin","8.reference\u002F3.vite-plugin","i-custom-vite",{"title":570,"path":571,"stem":572,"icon":388},"Best Practices","\u002Freference\u002Fbest-practices","8.reference\u002F4.best-practices",{"title":574,"path":575,"stem":576,"icon":577},"vs Other Loggers","\u002Freference\u002Fvs-other-loggers","8.reference\u002F5.vs-other-loggers","i-lucide-scale",{"title":579,"path":580,"stem":581,"icon":443},"Agent Skills","\u002Freference\u002Fagent-skills","8.reference\u002F6.agent-skills",{"title":583,"path":584,"stem":585,"icon":586},"Cost","\u002Freference\u002Fcost","8.reference\u002F7.cost","i-lucide-receipt",{"title":588,"path":589,"stem":590,"children":591,"page":34},"Compare","\u002Fcompare","9.compare",[592,596,600,604,608],{"title":593,"path":594,"stem":595,"icon":577},"evlog vs Pino","\u002Fcompare\u002Fpino","9.compare\u002F1.pino",{"title":597,"path":598,"stem":599,"icon":204},"evlog vs OpenTelemetry","\u002Fcompare\u002Fopentelemetry","9.compare\u002F2.opentelemetry",{"title":601,"path":602,"stem":603,"icon":577},"evlog vs LogTape","\u002Fcompare\u002Flogtape","9.compare\u002F3.logtape",{"title":605,"path":606,"stem":607,"icon":577},"evlog vs Winston: formats and request events","\u002Fcompare\u002Fwinston","9.compare\u002F4.winston",{"title":609,"path":610,"stem":611,"icon":577},"evlog vs Consola: reporters and request context","\u002Fcompare\u002Fconsola","9.compare\u002F5.consola",{"id":613,"title":445,"body":614,"description":4653,"extension":4654,"links":4655,"meta":4660,"navigation":4661,"path":446,"seo":4662,"stem":447,"__hash__":4663},"docs\u002F5.use-cases\u002F5.eve.md",{"type":615,"value":616,"toc":4632},"minimark",[617,649,667,712,717,788,791,796,876,880,887,1093,1104,1108,1134,1143,1424,1447,1451,1488,1492,1495,2178,2181,2564,2607,2611,2614,2844,2848,2854,2892,2908,2919,3021,3039,3043,3059,3069,3594,3607,3617,3650,3657,3660,3755,3762,3766,3769,4023,4089,4092,4237,4240,4246,4501,4505,4528,4532,4572,4594,4598,4628],[618,619,620,626,627,631,632,635,636,640,641,644,645,648],"p",{},[621,622,445],"a",{"href":623,"rel":624},"https:\u002F\u002Feve.dev\u002Fdocs\u002Fintroduction",[625],"nofollow"," ships built-in observability: ",[628,629,630],"strong",{},"Agent Runs"," on Vercel and optional ",[628,633,634],{},"OpenTelemetry"," spans via ",[637,638,639],"code",{},"agent\u002Finstrumentation.ts",". ",[637,642,643],{},"evlog\u002Feve"," adds a third layer: ",[628,646,647],{},"exportable wide events"," per turn with your full evlog pipeline (drains, enrichers, tail sampling, audit).",[650,651,653,655,656,659,660,662,663,666],"callout",{"color":652,"icon":13},"info",[637,654,643],{}," requires ",[628,657,658],{},"eve 0.30 or later",". eve is still in beta and stream event shapes may change before GA, so pin ",[637,661,445],{}," and ",[637,664,665],{},"evlog"," versions in production agents.",[668,669,672,675,700],"prompt",{":actions":670,"description":671,"icon":448},"[\"copy\",\"cursor\",\"claude\"]","Add evlog wide events to my eve agent",[618,673,674],{},"Add evlog wide events to my eve agent.",[676,677,678,682,685,688,691,694,697],"ul",{},[679,680,681],"li",{},"Install evlog: pnpm add evlog",[679,683,684],{},"Create agent\u002Fhooks\u002Fevlog.ts with defineEvlogHook from 'evlog\u002Feve'",[679,686,687],{},"Pass drain, enrich, and keep options (same as HTTP middleware integrations)",[679,689,690],{},"In tools, import useLogger from 'evlog\u002Feve' and call useLogger() inside execute(). The turn logger is bound via AsyncLocalStorage when defineEvlogHook() is registered; pass ctx only if ALS is unavailable in your runtime",[679,692,693],{},"User message content is omitted by default (message: 'omit'); use 'preview' or 'full' only after reviewing PII policy",[679,695,696],{},"Optionally add agent\u002Finstrumentation.ts with defineEvlogInstrumentation from 'evlog\u002Feve' to join OTel spans to the wide events",[679,698,699],{},"Keep eve Agent Runs. evlog\u002Feve is additive",[618,701,702,703,707,708],{},"Docs: ",[621,704,705],{"href":705,"rel":706},"https:\u002F\u002Fwww.evlog.dev\u002Fuse-cases\u002Feve",[625],"\nAdapters: ",[621,709,710],{"href":710,"rel":711},"https:\u002F\u002Fwww.evlog.dev\u002Fintegrate\u002Fadapters\u002Foverview",[625],[713,714,716],"h2",{"id":715},"when-to-use-what","When to use what",[718,719,720,733],"table",{},[721,722,723],"thead",{},[724,725,726,730],"tr",{},[727,728,729],"th",{},"Need",[727,731,732],{},"Use",[734,735,736,748,760,771],"tbody",{},[724,737,738,742],{},[739,740,741],"td",{},"Debug a session in Vercel",[739,743,744,745,747],{},"eve ",[628,746,630],{}," (automatic)",[724,749,750,753],{},[739,751,752],{},"Span-level traces in Datadog \u002F Honeycomb",[739,754,744,755,759],{},[628,756,757],{},[637,758,639],{}," + OTel exporter",[724,761,762,765],{},[739,763,764],{},"Wide events to Axiom \u002F Better Stack \u002F FS, billing, audit, tail sampling",[739,766,767],{},[628,768,769],{},[637,770,643],{},[724,772,773,776],{},[739,774,775],{},"Jumping from a span to its wide event, and back",[739,777,778,783,784],{},[628,779,780],{},[637,781,782],{},"defineEvlogInstrumentation()"," — ",[621,785,787],{"href":786},"#correlate-traces-with-wide-events","below",[713,789,25],{"id":790},"quick-start",[792,793,795],"h3",{"id":794},"_1-install","1. Install",[797,798,799,827,843,859],"code-group",{},[800,801,807],"pre",{"className":802,"code":803,"filename":804,"language":805,"meta":806,"style":806},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm add evlog eve\n","pnpm","bash","",[637,808,809],{"__ignoreMap":806},[810,811,814,817,821,824],"span",{"class":812,"line":813},"line",1,[810,815,804],{"class":816},"sBMFI",[810,818,820],{"class":819},"sfazB"," add",[810,822,823],{"class":819}," evlog",[810,825,826],{"class":819}," eve\n",[800,828,831],{"className":802,"code":829,"filename":830,"language":805,"meta":806,"style":806},"bun add evlog eve\n","bun",[637,832,833],{"__ignoreMap":806},[810,834,835,837,839,841],{"class":812,"line":813},[810,836,830],{"class":816},[810,838,820],{"class":819},[810,840,823],{"class":819},[810,842,826],{"class":819},[800,844,847],{"className":802,"code":845,"filename":846,"language":805,"meta":806,"style":806},"yarn add evlog eve\n","yarn",[637,848,849],{"__ignoreMap":806},[810,850,851,853,855,857],{"class":812,"line":813},[810,852,846],{"class":816},[810,854,820],{"class":819},[810,856,823],{"class":819},[810,858,826],{"class":819},[800,860,863],{"className":802,"code":861,"filename":862,"language":805,"meta":806,"style":806},"npm install evlog eve\n","npm",[637,864,865],{"__ignoreMap":806},[810,866,867,869,872,874],{"class":812,"line":813},[810,868,862],{"class":816},[810,870,871],{"class":819}," install",[810,873,823],{"class":819},[810,875,826],{"class":819},[792,877,879],{"id":878},"_2-add-the-hook","2. Add the hook",[618,881,882,883,886],{},"Create ",[637,884,885],{},"agent\u002Fhooks\u002Fevlog.ts",":",[800,888,892],{"className":889,"code":890,"filename":885,"language":891,"meta":806,"style":806},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { defineEvlogHook } from 'evlog\u002Feve'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nexport default defineEvlogHook({\n  init: { env: { service: 'my-agent' } },\n  drain: createAxiomDrain(),\n  enrich: (ctx) => {\n    ctx.event.region = process.env.VERCEL_REGION\n  },\n})\n","typescript",[637,893,894,922,943,950,968,1004,1020,1045,1078,1084],{"__ignoreMap":806},[810,895,896,900,904,908,911,914,917,919],{"class":812,"line":813},[810,897,899],{"class":898},"s7zQu","import",[810,901,903],{"class":902},"sMK4o"," {",[810,905,907],{"class":906},"sTEyZ"," defineEvlogHook",[810,909,910],{"class":902}," }",[810,912,913],{"class":898}," from",[810,915,916],{"class":902}," '",[810,918,643],{"class":819},[810,920,921],{"class":902},"'\n",[810,923,925,927,929,932,934,936,938,941],{"class":812,"line":924},2,[810,926,899],{"class":898},[810,928,903],{"class":902},[810,930,931],{"class":906}," createAxiomDrain",[810,933,910],{"class":902},[810,935,913],{"class":898},[810,937,916],{"class":902},[810,939,940],{"class":819},"evlog\u002Faxiom",[810,942,921],{"class":902},[810,944,946],{"class":812,"line":945},3,[810,947,949],{"emptyLinePlaceholder":948},true,"\n",[810,951,953,956,959,962,965],{"class":812,"line":952},4,[810,954,955],{"class":898},"export",[810,957,958],{"class":898}," default",[810,960,907],{"class":961},"s2Zo4",[810,963,964],{"class":906},"(",[810,966,967],{"class":902},"{\n",[810,969,971,975,977,979,982,984,986,989,991,993,996,999,1001],{"class":812,"line":970},5,[810,972,974],{"class":973},"swJcz","  init",[810,976,886],{"class":902},[810,978,903],{"class":902},[810,980,981],{"class":973}," env",[810,983,886],{"class":902},[810,985,903],{"class":902},[810,987,988],{"class":973}," service",[810,990,886],{"class":902},[810,992,916],{"class":902},[810,994,995],{"class":819},"my-agent",[810,997,998],{"class":902},"'",[810,1000,910],{"class":902},[810,1002,1003],{"class":902}," },\n",[810,1005,1007,1010,1012,1014,1017],{"class":812,"line":1006},6,[810,1008,1009],{"class":973},"  drain",[810,1011,886],{"class":902},[810,1013,931],{"class":961},[810,1015,1016],{"class":906},"()",[810,1018,1019],{"class":902},",\n",[810,1021,1023,1026,1028,1031,1035,1038,1042],{"class":812,"line":1022},7,[810,1024,1025],{"class":961},"  enrich",[810,1027,886],{"class":902},[810,1029,1030],{"class":902}," (",[810,1032,1034],{"class":1033},"sHdIc","ctx",[810,1036,1037],{"class":902},")",[810,1039,1041],{"class":1040},"spNyl"," =>",[810,1043,1044],{"class":902}," {\n",[810,1046,1048,1051,1054,1057,1059,1062,1065,1068,1070,1073,1075],{"class":812,"line":1047},8,[810,1049,1050],{"class":906},"    ctx",[810,1052,1053],{"class":902},".",[810,1055,1056],{"class":906},"event",[810,1058,1053],{"class":902},[810,1060,1061],{"class":906},"region",[810,1063,1064],{"class":902}," =",[810,1066,1067],{"class":906}," process",[810,1069,1053],{"class":902},[810,1071,1072],{"class":906},"env",[810,1074,1053],{"class":902},[810,1076,1077],{"class":906},"VERCEL_REGION\n",[810,1079,1081],{"class":812,"line":1080},9,[810,1082,1083],{"class":902},"  },\n",[810,1085,1087,1090],{"class":812,"line":1086},10,[810,1088,1089],{"class":902},"}",[810,1091,1092],{"class":906},")\n",[618,1094,1095,1096,1099,1100,1103],{},"eve auto-discovers hook files under ",[637,1097,1098],{},"agent\u002Fhooks\u002F",". No HTTP middleware, because the unit of work is an agent ",[628,1101,1102],{},"turn",", not a request.",[792,1105,1107],{"id":1106},"_3-log-business-context-from-tools","3. Log business context from tools",[618,1109,1110,1113,1114,1117,1118,1121,1122,1125,1126,1129,1130,1133],{},[637,1111,1112],{},"defineEvlogHook()"," binds the turn logger via ",[628,1115,1116],{},"AsyncLocalStorage"," on ",[637,1119,1120],{},"turn.started",". Inside tool ",[637,1123,1124],{},"execute()"," handlers, call ",[637,1127,1128],{},"useLogger()"," with no arguments, the same ergonomics as ",[637,1131,1132],{},"useLogger(event)"," in Nuxt or Hono.",[618,1135,1136,1137,1142],{},"In the ",[621,1138,1141],{"href":1139,"rel":1140},"https:\u002F\u002Fgithub.com\u002Fevloghq\u002Fevlog\u002Ftree\u002Fmain\u002Fexamples\u002Feve",[625],"example agent",", support tools attach customer and order context as the agent works a refund:",[800,1144,1147],{"className":889,"code":1145,"filename":1146,"language":891,"meta":806,"style":806},"import { defineTool } from 'eve\u002Ftools'\nimport { useLogger } from 'evlog\u002Feve'\nimport { z } from 'zod'\n\nexport default defineTool({\n  description: 'Look up an order by id.',\n  inputSchema: z.object({ orderId: z.string() }),\n  async execute({ orderId }) {\n    const order = await fetchOrder(orderId)\n    const log = useLogger()\n    log.set({ order: { id: order.id, amount: order.amount, status: order.status } })\n    return order\n  },\n})\n","agent\u002Ftools\u002Flookup_order.ts",[637,1148,1149,1169,1188,1208,1212,1224,1240,1280,1298,1321,1335,1403,1412,1417],{"__ignoreMap":806},[810,1150,1151,1153,1155,1158,1160,1162,1164,1167],{"class":812,"line":813},[810,1152,899],{"class":898},[810,1154,903],{"class":902},[810,1156,1157],{"class":906}," defineTool",[810,1159,910],{"class":902},[810,1161,913],{"class":898},[810,1163,916],{"class":902},[810,1165,1166],{"class":819},"eve\u002Ftools",[810,1168,921],{"class":902},[810,1170,1171,1173,1175,1178,1180,1182,1184,1186],{"class":812,"line":924},[810,1172,899],{"class":898},[810,1174,903],{"class":902},[810,1176,1177],{"class":906}," useLogger",[810,1179,910],{"class":902},[810,1181,913],{"class":898},[810,1183,916],{"class":902},[810,1185,643],{"class":819},[810,1187,921],{"class":902},[810,1189,1190,1192,1194,1197,1199,1201,1203,1206],{"class":812,"line":945},[810,1191,899],{"class":898},[810,1193,903],{"class":902},[810,1195,1196],{"class":906}," z",[810,1198,910],{"class":902},[810,1200,913],{"class":898},[810,1202,916],{"class":902},[810,1204,1205],{"class":819},"zod",[810,1207,921],{"class":902},[810,1209,1210],{"class":812,"line":952},[810,1211,949],{"emptyLinePlaceholder":948},[810,1213,1214,1216,1218,1220,1222],{"class":812,"line":970},[810,1215,955],{"class":898},[810,1217,958],{"class":898},[810,1219,1157],{"class":961},[810,1221,964],{"class":906},[810,1223,967],{"class":902},[810,1225,1226,1229,1231,1233,1236,1238],{"class":812,"line":1006},[810,1227,1228],{"class":973},"  description",[810,1230,886],{"class":902},[810,1232,916],{"class":902},[810,1234,1235],{"class":819},"Look up an order by id.",[810,1237,998],{"class":902},[810,1239,1019],{"class":902},[810,1241,1242,1245,1247,1249,1251,1254,1256,1259,1262,1264,1266,1268,1271,1274,1276,1278],{"class":812,"line":1022},[810,1243,1244],{"class":973},"  inputSchema",[810,1246,886],{"class":902},[810,1248,1196],{"class":906},[810,1250,1053],{"class":902},[810,1252,1253],{"class":961},"object",[810,1255,964],{"class":906},[810,1257,1258],{"class":902},"{",[810,1260,1261],{"class":973}," orderId",[810,1263,886],{"class":902},[810,1265,1196],{"class":906},[810,1267,1053],{"class":902},[810,1269,1270],{"class":961},"string",[810,1272,1273],{"class":906},"() ",[810,1275,1089],{"class":902},[810,1277,1037],{"class":906},[810,1279,1019],{"class":902},[810,1281,1282,1285,1288,1291,1293,1296],{"class":812,"line":1047},[810,1283,1284],{"class":1040},"  async",[810,1286,1287],{"class":973}," execute",[810,1289,1290],{"class":902},"({",[810,1292,1261],{"class":1033},[810,1294,1295],{"class":902}," })",[810,1297,1044],{"class":902},[810,1299,1300,1303,1306,1308,1311,1314,1316,1319],{"class":812,"line":1080},[810,1301,1302],{"class":1040},"    const",[810,1304,1305],{"class":906}," order",[810,1307,1064],{"class":902},[810,1309,1310],{"class":898}," await",[810,1312,1313],{"class":961}," fetchOrder",[810,1315,964],{"class":973},[810,1317,1318],{"class":906},"orderId",[810,1320,1092],{"class":973},[810,1322,1323,1325,1328,1330,1332],{"class":812,"line":1086},[810,1324,1302],{"class":1040},[810,1326,1327],{"class":906}," log",[810,1329,1064],{"class":902},[810,1331,1177],{"class":961},[810,1333,1334],{"class":973},"()\n",[810,1336,1338,1341,1343,1346,1348,1350,1352,1354,1356,1359,1361,1363,1365,1368,1371,1374,1376,1378,1380,1383,1385,1388,1390,1392,1394,1397,1399,1401],{"class":812,"line":1337},11,[810,1339,1340],{"class":906},"    log",[810,1342,1053],{"class":902},[810,1344,1345],{"class":961},"set",[810,1347,964],{"class":973},[810,1349,1258],{"class":902},[810,1351,1305],{"class":973},[810,1353,886],{"class":902},[810,1355,903],{"class":902},[810,1357,1358],{"class":973}," id",[810,1360,886],{"class":902},[810,1362,1305],{"class":906},[810,1364,1053],{"class":902},[810,1366,1367],{"class":906},"id",[810,1369,1370],{"class":902},",",[810,1372,1373],{"class":973}," amount",[810,1375,886],{"class":902},[810,1377,1305],{"class":906},[810,1379,1053],{"class":902},[810,1381,1382],{"class":906},"amount",[810,1384,1370],{"class":902},[810,1386,1387],{"class":973}," status",[810,1389,886],{"class":902},[810,1391,1305],{"class":906},[810,1393,1053],{"class":902},[810,1395,1396],{"class":906},"status",[810,1398,910],{"class":902},[810,1400,910],{"class":902},[810,1402,1092],{"class":973},[810,1404,1406,1409],{"class":812,"line":1405},12,[810,1407,1408],{"class":898},"    return",[810,1410,1411],{"class":906}," order\n",[810,1413,1415],{"class":812,"line":1414},13,[810,1416,1083],{"class":902},[810,1418,1420,1422],{"class":812,"line":1419},14,[810,1421,1089],{"class":902},[810,1423,1092],{"class":906},[650,1425,1427,1442],{"color":1426,"icon":146},"neutral",[618,1428,1429,1432,1433,783,1435,1438,1439,1441],{},[628,1430,1431],{},"Resolution:"," pass the eve tool ",[637,1434,1034],{},[637,1436,1437],{},"useLogger(ctx)"," — when AsyncLocalStorage does not propagate, such as separate hook and tool bundles. With a standard eve agent layout and ",[637,1440,885],{}," registered, you should not need it.",[618,1443,1444,1446],{},[637,1445,1128],{}," never throws: when it cannot reach the turn's logger it warns once and returns a logger that accepts every call and emits nothing. A turn resumed in another process after a step boundary is the common case, and losing enrichment must never fail the tool that was being enriched. The turn keeps running; only its extra fields are dropped.",[792,1448,1450],{"id":1449},"_4-nextjs-web-chat-optional","4. Next.js web chat (optional)",[618,1452,1453,1454,1457,1458,1461,1462,1465,1466,1461,1469,1472,1473,1476,1477,1480,1481,1484,1485,1053],{},"Wrap ",[637,1455,1456],{},"next.config.ts"," with ",[637,1459,1460],{},"withEve()"," from ",[637,1463,1464],{},"eve\u002Fnext"," and use ",[637,1467,1468],{},"useEveAgent()",[637,1470,1471],{},"eve\u002Freact"," in your app. eve starts alongside ",[637,1474,1475],{},"next dev"," and proxies ",[637,1478,1479],{},"\u002Feve\u002Fv1\u002F*"," on the same origin, so tool calls, approvals, and ",[637,1482,1483],{},"ask_question"," work out of the box. See the ",[621,1486,1141],{"href":1139,"rel":1487},[625],[713,1489,1491],{"id":1490},"wide-event-shape","Wide event shape",[618,1493,1494],{},"Each completed turn emits one event:",[800,1496,1501],{"className":1497,"code":1498,"filename":1499,"language":1500,"meta":806,"style":806},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"method\": \"EVE\",\n  \"path\": \"\u002Fsessions\u002Fsess_abc\u002Fturns\u002Fturn_0\",\n  \"status\": 200,\n  \"duration\": \"7.9s\",\n  \"durationMs\": 7903,\n  \"service\": \"clearbill-support-agent\",\n  \"eve\": {\n    \"sessionId\": \"sess_abc\",\n    \"turnId\": \"turn_0\",\n    \"turnSequence\": 0,\n    \"phase\": \"awaiting-approval\",\n    \"sessionTurns\": 1\n  },\n  \"customer\": { \"slug\": \"acme-corp\", \"plan\": \"enterprise\" },\n  \"order\": { \"id\": \"4821\", \"amount\": 890, \"currency\": \"USD\" },\n  \"approval\": { \"status\": \"pending\", \"tool\": \"issue_refund\" },\n  \"ai\": {\n    \"model\": \"deepseek\u002Fdeepseek-v4-flash\",\n    \"provider\": \"deepseek\",\n    \"calls\": 2,\n    \"steps\": 2,\n    \"inputTokens\": 11724,\n    \"outputTokens\": 282,\n    \"finishReason\": \"tool-calls\",\n    \"tools\": [\n      { \"name\": \"lookup_customer\", \"durationMs\": 26, \"success\": true, \"inputTokens\": 8900 },\n      { \"name\": \"lookup_order\", \"durationMs\": 13, \"success\": true }\n    ]\n  }\n}\n","Wide Event — turn awaiting approval","json",[637,1502,1503,1507,1530,1550,1566,1586,1602,1622,1634,1655,1675,1691,1711,1725,1729,1779,1841,1890,1904,1925,1946,1963,1979,1996,2013,2034,2049,2111,2160,2166,2172],{"__ignoreMap":806},[810,1504,1505],{"class":812,"line":813},[810,1506,967],{"class":902},[810,1508,1509,1512,1515,1518,1520,1523,1526,1528],{"class":812,"line":924},[810,1510,1511],{"class":902},"  \"",[810,1513,1514],{"class":1040},"method",[810,1516,1517],{"class":902},"\"",[810,1519,886],{"class":902},[810,1521,1522],{"class":902}," \"",[810,1524,1525],{"class":819},"EVE",[810,1527,1517],{"class":902},[810,1529,1019],{"class":902},[810,1531,1532,1534,1537,1539,1541,1543,1546,1548],{"class":812,"line":945},[810,1533,1511],{"class":902},[810,1535,1536],{"class":1040},"path",[810,1538,1517],{"class":902},[810,1540,886],{"class":902},[810,1542,1522],{"class":902},[810,1544,1545],{"class":819},"\u002Fsessions\u002Fsess_abc\u002Fturns\u002Fturn_0",[810,1547,1517],{"class":902},[810,1549,1019],{"class":902},[810,1551,1552,1554,1556,1558,1560,1564],{"class":812,"line":952},[810,1553,1511],{"class":902},[810,1555,1396],{"class":1040},[810,1557,1517],{"class":902},[810,1559,886],{"class":902},[810,1561,1563],{"class":1562},"sbssI"," 200",[810,1565,1019],{"class":902},[810,1567,1568,1570,1573,1575,1577,1579,1582,1584],{"class":812,"line":970},[810,1569,1511],{"class":902},[810,1571,1572],{"class":1040},"duration",[810,1574,1517],{"class":902},[810,1576,886],{"class":902},[810,1578,1522],{"class":902},[810,1580,1581],{"class":819},"7.9s",[810,1583,1517],{"class":902},[810,1585,1019],{"class":902},[810,1587,1588,1590,1593,1595,1597,1600],{"class":812,"line":1006},[810,1589,1511],{"class":902},[810,1591,1592],{"class":1040},"durationMs",[810,1594,1517],{"class":902},[810,1596,886],{"class":902},[810,1598,1599],{"class":1562}," 7903",[810,1601,1019],{"class":902},[810,1603,1604,1606,1609,1611,1613,1615,1618,1620],{"class":812,"line":1022},[810,1605,1511],{"class":902},[810,1607,1608],{"class":1040},"service",[810,1610,1517],{"class":902},[810,1612,886],{"class":902},[810,1614,1522],{"class":902},[810,1616,1617],{"class":819},"clearbill-support-agent",[810,1619,1517],{"class":902},[810,1621,1019],{"class":902},[810,1623,1624,1626,1628,1630,1632],{"class":812,"line":1047},[810,1625,1511],{"class":902},[810,1627,445],{"class":1040},[810,1629,1517],{"class":902},[810,1631,886],{"class":902},[810,1633,1044],{"class":902},[810,1635,1636,1639,1642,1644,1646,1648,1651,1653],{"class":812,"line":1080},[810,1637,1638],{"class":902},"    \"",[810,1640,1641],{"class":816},"sessionId",[810,1643,1517],{"class":902},[810,1645,886],{"class":902},[810,1647,1522],{"class":902},[810,1649,1650],{"class":819},"sess_abc",[810,1652,1517],{"class":902},[810,1654,1019],{"class":902},[810,1656,1657,1659,1662,1664,1666,1668,1671,1673],{"class":812,"line":1086},[810,1658,1638],{"class":902},[810,1660,1661],{"class":816},"turnId",[810,1663,1517],{"class":902},[810,1665,886],{"class":902},[810,1667,1522],{"class":902},[810,1669,1670],{"class":819},"turn_0",[810,1672,1517],{"class":902},[810,1674,1019],{"class":902},[810,1676,1677,1679,1682,1684,1686,1689],{"class":812,"line":1337},[810,1678,1638],{"class":902},[810,1680,1681],{"class":816},"turnSequence",[810,1683,1517],{"class":902},[810,1685,886],{"class":902},[810,1687,1688],{"class":1562}," 0",[810,1690,1019],{"class":902},[810,1692,1693,1695,1698,1700,1702,1704,1707,1709],{"class":812,"line":1405},[810,1694,1638],{"class":902},[810,1696,1697],{"class":816},"phase",[810,1699,1517],{"class":902},[810,1701,886],{"class":902},[810,1703,1522],{"class":902},[810,1705,1706],{"class":819},"awaiting-approval",[810,1708,1517],{"class":902},[810,1710,1019],{"class":902},[810,1712,1713,1715,1718,1720,1722],{"class":812,"line":1414},[810,1714,1638],{"class":902},[810,1716,1717],{"class":816},"sessionTurns",[810,1719,1517],{"class":902},[810,1721,886],{"class":902},[810,1723,1724],{"class":1562}," 1\n",[810,1726,1727],{"class":812,"line":1419},[810,1728,1083],{"class":902},[810,1730,1732,1734,1737,1739,1741,1743,1745,1748,1750,1752,1754,1757,1759,1761,1763,1766,1768,1770,1772,1775,1777],{"class":812,"line":1731},15,[810,1733,1511],{"class":902},[810,1735,1736],{"class":1040},"customer",[810,1738,1517],{"class":902},[810,1740,886],{"class":902},[810,1742,903],{"class":902},[810,1744,1522],{"class":902},[810,1746,1747],{"class":816},"slug",[810,1749,1517],{"class":902},[810,1751,886],{"class":902},[810,1753,1522],{"class":902},[810,1755,1756],{"class":819},"acme-corp",[810,1758,1517],{"class":902},[810,1760,1370],{"class":902},[810,1762,1522],{"class":902},[810,1764,1765],{"class":816},"plan",[810,1767,1517],{"class":902},[810,1769,886],{"class":902},[810,1771,1522],{"class":902},[810,1773,1774],{"class":819},"enterprise",[810,1776,1517],{"class":902},[810,1778,1003],{"class":902},[810,1780,1782,1784,1787,1789,1791,1793,1795,1797,1799,1801,1803,1806,1808,1810,1812,1814,1816,1818,1821,1823,1825,1828,1830,1832,1834,1837,1839],{"class":812,"line":1781},16,[810,1783,1511],{"class":902},[810,1785,1786],{"class":1040},"order",[810,1788,1517],{"class":902},[810,1790,886],{"class":902},[810,1792,903],{"class":902},[810,1794,1522],{"class":902},[810,1796,1367],{"class":816},[810,1798,1517],{"class":902},[810,1800,886],{"class":902},[810,1802,1522],{"class":902},[810,1804,1805],{"class":819},"4821",[810,1807,1517],{"class":902},[810,1809,1370],{"class":902},[810,1811,1522],{"class":902},[810,1813,1382],{"class":816},[810,1815,1517],{"class":902},[810,1817,886],{"class":902},[810,1819,1820],{"class":1562}," 890",[810,1822,1370],{"class":902},[810,1824,1522],{"class":902},[810,1826,1827],{"class":816},"currency",[810,1829,1517],{"class":902},[810,1831,886],{"class":902},[810,1833,1522],{"class":902},[810,1835,1836],{"class":819},"USD",[810,1838,1517],{"class":902},[810,1840,1003],{"class":902},[810,1842,1844,1846,1849,1851,1853,1855,1857,1859,1861,1863,1865,1868,1870,1872,1874,1877,1879,1881,1883,1886,1888],{"class":812,"line":1843},17,[810,1845,1511],{"class":902},[810,1847,1848],{"class":1040},"approval",[810,1850,1517],{"class":902},[810,1852,886],{"class":902},[810,1854,903],{"class":902},[810,1856,1522],{"class":902},[810,1858,1396],{"class":816},[810,1860,1517],{"class":902},[810,1862,886],{"class":902},[810,1864,1522],{"class":902},[810,1866,1867],{"class":819},"pending",[810,1869,1517],{"class":902},[810,1871,1370],{"class":902},[810,1873,1522],{"class":902},[810,1875,1876],{"class":816},"tool",[810,1878,1517],{"class":902},[810,1880,886],{"class":902},[810,1882,1522],{"class":902},[810,1884,1885],{"class":819},"issue_refund",[810,1887,1517],{"class":902},[810,1889,1003],{"class":902},[810,1891,1893,1895,1898,1900,1902],{"class":812,"line":1892},18,[810,1894,1511],{"class":902},[810,1896,1897],{"class":1040},"ai",[810,1899,1517],{"class":902},[810,1901,886],{"class":902},[810,1903,1044],{"class":902},[810,1905,1907,1909,1912,1914,1916,1918,1921,1923],{"class":812,"line":1906},19,[810,1908,1638],{"class":902},[810,1910,1911],{"class":816},"model",[810,1913,1517],{"class":902},[810,1915,886],{"class":902},[810,1917,1522],{"class":902},[810,1919,1920],{"class":819},"deepseek\u002Fdeepseek-v4-flash",[810,1922,1517],{"class":902},[810,1924,1019],{"class":902},[810,1926,1928,1930,1933,1935,1937,1939,1942,1944],{"class":812,"line":1927},20,[810,1929,1638],{"class":902},[810,1931,1932],{"class":816},"provider",[810,1934,1517],{"class":902},[810,1936,886],{"class":902},[810,1938,1522],{"class":902},[810,1940,1941],{"class":819},"deepseek",[810,1943,1517],{"class":902},[810,1945,1019],{"class":902},[810,1947,1949,1951,1954,1956,1958,1961],{"class":812,"line":1948},21,[810,1950,1638],{"class":902},[810,1952,1953],{"class":816},"calls",[810,1955,1517],{"class":902},[810,1957,886],{"class":902},[810,1959,1960],{"class":1562}," 2",[810,1962,1019],{"class":902},[810,1964,1966,1968,1971,1973,1975,1977],{"class":812,"line":1965},22,[810,1967,1638],{"class":902},[810,1969,1970],{"class":816},"steps",[810,1972,1517],{"class":902},[810,1974,886],{"class":902},[810,1976,1960],{"class":1562},[810,1978,1019],{"class":902},[810,1980,1982,1984,1987,1989,1991,1994],{"class":812,"line":1981},23,[810,1983,1638],{"class":902},[810,1985,1986],{"class":816},"inputTokens",[810,1988,1517],{"class":902},[810,1990,886],{"class":902},[810,1992,1993],{"class":1562}," 11724",[810,1995,1019],{"class":902},[810,1997,1999,2001,2004,2006,2008,2011],{"class":812,"line":1998},24,[810,2000,1638],{"class":902},[810,2002,2003],{"class":816},"outputTokens",[810,2005,1517],{"class":902},[810,2007,886],{"class":902},[810,2009,2010],{"class":1562}," 282",[810,2012,1019],{"class":902},[810,2014,2016,2018,2021,2023,2025,2027,2030,2032],{"class":812,"line":2015},25,[810,2017,1638],{"class":902},[810,2019,2020],{"class":816},"finishReason",[810,2022,1517],{"class":902},[810,2024,886],{"class":902},[810,2026,1522],{"class":902},[810,2028,2029],{"class":819},"tool-calls",[810,2031,1517],{"class":902},[810,2033,1019],{"class":902},[810,2035,2037,2039,2042,2044,2046],{"class":812,"line":2036},26,[810,2038,1638],{"class":902},[810,2040,2041],{"class":816},"tools",[810,2043,1517],{"class":902},[810,2045,886],{"class":902},[810,2047,2048],{"class":902}," [\n",[810,2050,2052,2055,2057,2060,2062,2064,2066,2069,2071,2073,2075,2077,2079,2081,2084,2086,2088,2091,2093,2095,2098,2100,2102,2104,2106,2109],{"class":812,"line":2051},27,[810,2053,2054],{"class":902},"      {",[810,2056,1522],{"class":902},[810,2058,2059],{"class":1562},"name",[810,2061,1517],{"class":902},[810,2063,886],{"class":902},[810,2065,1522],{"class":902},[810,2067,2068],{"class":819},"lookup_customer",[810,2070,1517],{"class":902},[810,2072,1370],{"class":902},[810,2074,1522],{"class":902},[810,2076,1592],{"class":1562},[810,2078,1517],{"class":902},[810,2080,886],{"class":902},[810,2082,2083],{"class":1562}," 26",[810,2085,1370],{"class":902},[810,2087,1522],{"class":902},[810,2089,2090],{"class":1562},"success",[810,2092,1517],{"class":902},[810,2094,886],{"class":902},[810,2096,2097],{"class":902}," true,",[810,2099,1522],{"class":902},[810,2101,1986],{"class":1562},[810,2103,1517],{"class":902},[810,2105,886],{"class":902},[810,2107,2108],{"class":1562}," 8900",[810,2110,1003],{"class":902},[810,2112,2114,2116,2118,2120,2122,2124,2126,2129,2131,2133,2135,2137,2139,2141,2144,2146,2148,2150,2152,2154,2157],{"class":812,"line":2113},28,[810,2115,2054],{"class":902},[810,2117,1522],{"class":902},[810,2119,2059],{"class":1562},[810,2121,1517],{"class":902},[810,2123,886],{"class":902},[810,2125,1522],{"class":902},[810,2127,2128],{"class":819},"lookup_order",[810,2130,1517],{"class":902},[810,2132,1370],{"class":902},[810,2134,1522],{"class":902},[810,2136,1592],{"class":1562},[810,2138,1517],{"class":902},[810,2140,886],{"class":902},[810,2142,2143],{"class":1562}," 13",[810,2145,1370],{"class":902},[810,2147,1522],{"class":902},[810,2149,2090],{"class":1562},[810,2151,1517],{"class":902},[810,2153,886],{"class":902},[810,2155,2156],{"class":902}," true",[810,2158,2159],{"class":902}," }\n",[810,2161,2163],{"class":812,"line":2162},29,[810,2164,2165],{"class":902},"    ]\n",[810,2167,2169],{"class":812,"line":2168},30,[810,2170,2171],{"class":902},"  }\n",[810,2173,2175],{"class":812,"line":2174},31,[810,2176,2177],{"class":902},"}\n",[618,2179,2180],{},"After approval, the next turn carries the outcome:",[800,2182,2185],{"className":1497,"code":2183,"filename":2184,"language":1500,"meta":806,"style":806},"{\n  \"path\": \"\u002Fsessions\u002Fsess_abc\u002Fturns\u002Fturn_1\",\n  \"eve\": {\n    \"sessionId\": \"sess_abc\",\n    \"turnId\": \"turn_1\",\n    \"turnSequence\": 1,\n    \"sessionTurns\": 2\n  },\n  \"refund\": { \"orderId\": \"4821\", \"amount\": 890, \"status\": \"refunded\" },\n  \"audit\": { \"action\": \"refund.issued\", \"target\": { \"type\": \"order\", \"id\": \"4821\" } },\n  \"approval\": { \"status\": \"approved\", \"tool\": \"issue_refund\" },\n  \"ai\": {\n    \"tools\": [{ \"name\": \"issue_refund\", \"durationMs\": 993, \"success\": true }],\n    \"finishReason\": \"stop\"\n  }\n}\n","Wide Event — refund completed",[637,2186,2187,2191,2210,2222,2240,2259,2274,2287,2291,2349,2426,2471,2483,2538,2556,2560],{"__ignoreMap":806},[810,2188,2189],{"class":812,"line":813},[810,2190,967],{"class":902},[810,2192,2193,2195,2197,2199,2201,2203,2206,2208],{"class":812,"line":924},[810,2194,1511],{"class":902},[810,2196,1536],{"class":1040},[810,2198,1517],{"class":902},[810,2200,886],{"class":902},[810,2202,1522],{"class":902},[810,2204,2205],{"class":819},"\u002Fsessions\u002Fsess_abc\u002Fturns\u002Fturn_1",[810,2207,1517],{"class":902},[810,2209,1019],{"class":902},[810,2211,2212,2214,2216,2218,2220],{"class":812,"line":945},[810,2213,1511],{"class":902},[810,2215,445],{"class":1040},[810,2217,1517],{"class":902},[810,2219,886],{"class":902},[810,2221,1044],{"class":902},[810,2223,2224,2226,2228,2230,2232,2234,2236,2238],{"class":812,"line":952},[810,2225,1638],{"class":902},[810,2227,1641],{"class":816},[810,2229,1517],{"class":902},[810,2231,886],{"class":902},[810,2233,1522],{"class":902},[810,2235,1650],{"class":819},[810,2237,1517],{"class":902},[810,2239,1019],{"class":902},[810,2241,2242,2244,2246,2248,2250,2252,2255,2257],{"class":812,"line":970},[810,2243,1638],{"class":902},[810,2245,1661],{"class":816},[810,2247,1517],{"class":902},[810,2249,886],{"class":902},[810,2251,1522],{"class":902},[810,2253,2254],{"class":819},"turn_1",[810,2256,1517],{"class":902},[810,2258,1019],{"class":902},[810,2260,2261,2263,2265,2267,2269,2272],{"class":812,"line":1006},[810,2262,1638],{"class":902},[810,2264,1681],{"class":816},[810,2266,1517],{"class":902},[810,2268,886],{"class":902},[810,2270,2271],{"class":1562}," 1",[810,2273,1019],{"class":902},[810,2275,2276,2278,2280,2282,2284],{"class":812,"line":1022},[810,2277,1638],{"class":902},[810,2279,1717],{"class":816},[810,2281,1517],{"class":902},[810,2283,886],{"class":902},[810,2285,2286],{"class":1562}," 2\n",[810,2288,2289],{"class":812,"line":1047},[810,2290,1083],{"class":902},[810,2292,2293,2295,2298,2300,2302,2304,2306,2308,2310,2312,2314,2316,2318,2320,2322,2324,2326,2328,2330,2332,2334,2336,2338,2340,2342,2345,2347],{"class":812,"line":1080},[810,2294,1511],{"class":902},[810,2296,2297],{"class":1040},"refund",[810,2299,1517],{"class":902},[810,2301,886],{"class":902},[810,2303,903],{"class":902},[810,2305,1522],{"class":902},[810,2307,1318],{"class":816},[810,2309,1517],{"class":902},[810,2311,886],{"class":902},[810,2313,1522],{"class":902},[810,2315,1805],{"class":819},[810,2317,1517],{"class":902},[810,2319,1370],{"class":902},[810,2321,1522],{"class":902},[810,2323,1382],{"class":816},[810,2325,1517],{"class":902},[810,2327,886],{"class":902},[810,2329,1820],{"class":1562},[810,2331,1370],{"class":902},[810,2333,1522],{"class":902},[810,2335,1396],{"class":816},[810,2337,1517],{"class":902},[810,2339,886],{"class":902},[810,2341,1522],{"class":902},[810,2343,2344],{"class":819},"refunded",[810,2346,1517],{"class":902},[810,2348,1003],{"class":902},[810,2350,2351,2353,2356,2358,2360,2362,2364,2367,2369,2371,2373,2376,2378,2380,2382,2385,2387,2389,2391,2393,2396,2398,2400,2402,2404,2406,2408,2410,2412,2414,2416,2418,2420,2422,2424],{"class":812,"line":1086},[810,2352,1511],{"class":902},[810,2354,2355],{"class":1040},"audit",[810,2357,1517],{"class":902},[810,2359,886],{"class":902},[810,2361,903],{"class":902},[810,2363,1522],{"class":902},[810,2365,2366],{"class":816},"action",[810,2368,1517],{"class":902},[810,2370,886],{"class":902},[810,2372,1522],{"class":902},[810,2374,2375],{"class":819},"refund.issued",[810,2377,1517],{"class":902},[810,2379,1370],{"class":902},[810,2381,1522],{"class":902},[810,2383,2384],{"class":816},"target",[810,2386,1517],{"class":902},[810,2388,886],{"class":902},[810,2390,903],{"class":902},[810,2392,1522],{"class":902},[810,2394,2395],{"class":1562},"type",[810,2397,1517],{"class":902},[810,2399,886],{"class":902},[810,2401,1522],{"class":902},[810,2403,1786],{"class":819},[810,2405,1517],{"class":902},[810,2407,1370],{"class":902},[810,2409,1522],{"class":902},[810,2411,1367],{"class":1562},[810,2413,1517],{"class":902},[810,2415,886],{"class":902},[810,2417,1522],{"class":902},[810,2419,1805],{"class":819},[810,2421,1517],{"class":902},[810,2423,910],{"class":902},[810,2425,1003],{"class":902},[810,2427,2428,2430,2432,2434,2436,2438,2440,2442,2444,2446,2448,2451,2453,2455,2457,2459,2461,2463,2465,2467,2469],{"class":812,"line":1337},[810,2429,1511],{"class":902},[810,2431,1848],{"class":1040},[810,2433,1517],{"class":902},[810,2435,886],{"class":902},[810,2437,903],{"class":902},[810,2439,1522],{"class":902},[810,2441,1396],{"class":816},[810,2443,1517],{"class":902},[810,2445,886],{"class":902},[810,2447,1522],{"class":902},[810,2449,2450],{"class":819},"approved",[810,2452,1517],{"class":902},[810,2454,1370],{"class":902},[810,2456,1522],{"class":902},[810,2458,1876],{"class":816},[810,2460,1517],{"class":902},[810,2462,886],{"class":902},[810,2464,1522],{"class":902},[810,2466,1885],{"class":819},[810,2468,1517],{"class":902},[810,2470,1003],{"class":902},[810,2472,2473,2475,2477,2479,2481],{"class":812,"line":1405},[810,2474,1511],{"class":902},[810,2476,1897],{"class":1040},[810,2478,1517],{"class":902},[810,2480,886],{"class":902},[810,2482,1044],{"class":902},[810,2484,2485,2487,2489,2491,2493,2496,2498,2500,2502,2504,2506,2508,2510,2512,2514,2516,2518,2520,2523,2525,2527,2529,2531,2533,2535],{"class":812,"line":1414},[810,2486,1638],{"class":902},[810,2488,2041],{"class":816},[810,2490,1517],{"class":902},[810,2492,886],{"class":902},[810,2494,2495],{"class":902}," [{",[810,2497,1522],{"class":902},[810,2499,2059],{"class":1562},[810,2501,1517],{"class":902},[810,2503,886],{"class":902},[810,2505,1522],{"class":902},[810,2507,1885],{"class":819},[810,2509,1517],{"class":902},[810,2511,1370],{"class":902},[810,2513,1522],{"class":902},[810,2515,1592],{"class":1562},[810,2517,1517],{"class":902},[810,2519,886],{"class":902},[810,2521,2522],{"class":1562}," 993",[810,2524,1370],{"class":902},[810,2526,1522],{"class":902},[810,2528,2090],{"class":1562},[810,2530,1517],{"class":902},[810,2532,886],{"class":902},[810,2534,2156],{"class":902},[810,2536,2537],{"class":902}," }],\n",[810,2539,2540,2542,2544,2546,2548,2550,2553],{"class":812,"line":1419},[810,2541,1638],{"class":902},[810,2543,2020],{"class":816},[810,2545,1517],{"class":902},[810,2547,886],{"class":902},[810,2549,1522],{"class":902},[810,2551,2552],{"class":819},"stop",[810,2554,2555],{"class":902},"\"\n",[810,2557,2558],{"class":812,"line":1731},[810,2559,2171],{"class":902},[810,2561,2562],{"class":812,"line":1781},[810,2563,2177],{"class":902},[618,2565,2566,2567,2570,2571,2570,2574,2577,2578,2580,2581,2584,2585,2588,2589,2592,2593,2570,2595,2570,2598,2570,2601,2570,2604,1053],{},"Token usage and tool executions are accumulated from eve stream events (",[637,2568,2569],{},"step.completed",", ",[637,2572,2573],{},"actions.requested",[637,2575,2576],{},"action.result","). Business fields set via ",[637,2579,1128],{}," carry across turns in the same session. Link turns in analytics with ",[637,2582,2583],{},"eve.sessionId"," + ",[637,2586,2587],{},"eve.turnSequence",", and each event stays self-contained. ",[637,2590,2591],{},"eve.phase"," is only set for non-routine endings: ",[637,2594,1706],{},[637,2596,2597],{},"awaiting-authorization",[637,2599,2600],{},"rejected",[637,2602,2603],{},"cancelled",[637,2605,2606],{},"failed",[792,2608,2610],{"id":2609},"everything-the-turn-can-report","Everything the turn can report",[618,2612,2613],{},"Beyond the identifiers above, a turn records what eve reports about it. Every field is optional and appears only when the turn produced it.",[718,2615,2616,2626],{},[721,2617,2618],{},[724,2619,2620,2623],{},[727,2621,2622],{},"Field",[727,2624,2625],{},"What it tells you",[734,2627,2628,2648,2675,2688,2705,2719,2732,2742,2758,2768,2778,2792,2809,2834],{},[724,2629,2630,2635],{},[739,2631,2632],{},[637,2633,2634],{},"eve.runtime",[739,2636,2637,2638,2641,2642,2641,2645],{},"eve version, agent id, model, and the deployed ",[637,2639,2640],{},"gitSha"," \u002F ",[637,2643,2644],{},"gitBranch",[637,2646,2647],{},"deployedAt",[724,2649,2650,2655],{},[739,2651,2652],{},[637,2653,2654],{},"eve.caller",[739,2656,2657,2658,2570,2661,662,2664,2667,2668,662,2671,2674],{},"Who triggered the turn: ",[637,2659,2660],{},"principalId",[637,2662,2663],{},"principalType",[637,2665,2666],{},"authenticator",". On a multi-user channel this is what you group cost and volume by. ",[637,2669,2670],{},"subject",[637,2672,2673],{},"attributes"," are never recorded — a channel may put a name or an email in them",[724,2676,2677,2682],{},[739,2678,2679],{},[637,2680,2681],{},"eve.parent",[739,2683,2684,2685],{},"Parent and root session ids for a subagent run — rebuild the delegation tree with ",[637,2686,2687],{},"rootSessionId",[724,2689,2690,2695],{},[739,2691,2692],{},[637,2693,2694],{},"eve.authorizations",[739,2696,2697,2698,2570,2701,2704],{},"Connection sign-ins with their ",[637,2699,2700],{},"outcome",[637,2702,2703],{},"reason"," and duration",[724,2706,2707,2712],{},[739,2708,2709],{},[637,2710,2711],{},"eve.compaction",[739,2713,2714,2715,2718],{},"How many compactions ran, on which model, and ",[637,2716,2717],{},"inputTokensAtTrigger"," — how full the context was when the first one fired",[724,2720,2721,2729],{},[739,2722,2723,2641,2726],{},[637,2724,2725],{},"eve.stepFailures",[637,2727,2728],{},"eve.failedSteps",[739,2730,2731],{},"Model calls that failed, including on a turn that then succeeded on retry",[724,2733,2734,2739],{},[739,2735,2736],{},[637,2737,2738],{},"eve.subagents",[739,2740,2741],{},"Delegations with their status and duration",[724,2743,2744,2749],{},[739,2745,2746],{},[637,2747,2748],{},"eve.reasoning",[739,2750,2751,662,2754,2757],{},[637,2752,2753],{},"blocks",[637,2755,2756],{},"chars"," — the size of the model's thinking, never its content",[724,2759,2760,2765],{},[739,2761,2762],{},[637,2763,2764],{},"eve.result",[739,2766,2767],{},"The structured result, for an agent with an output schema",[724,2769,2770,2775],{},[739,2771,2772],{},[637,2773,2774],{},"eve.contextCleared",[739,2776,2777],{},"The durable history was wiped during this turn",[724,2779,2780,2785],{},[739,2781,2782],{},[637,2783,2784],{},"message.responseChars",[739,2786,2787,2788,2791],{},"Length of the agent's response, recorded whatever the ",[637,2789,2790],{},"message"," mode",[724,2793,2794,2799],{},[739,2795,2796],{},[637,2797,2798],{},"ai.costUsd",[739,2800,2801,2802,2805,2806],{},"Cost as reported by eve. ",[637,2803,2804],{},"ai.estimatedCost"," is the fallback computed from ",[637,2807,2808],{},"cost",[724,2810,2811,2819],{},[739,2812,2813,2641,2816],{},[637,2814,2815],{},"ai.model",[637,2817,2818],{},"ai.provider",[739,2820,2821,2822,2824,2825,2827,2828,2830,2831],{},"The gateway slug (",[637,2823,1920],{},") and the resolved provider (",[637,2826,1941],{},") that served the turn. ",[637,2829,2818],{}," is split from the model id eve reports on ",[637,2832,2833],{},"session.started",[724,2835,2836,2841],{},[739,2837,2838],{},[637,2839,2840],{},"ai.tools[].inputTokens",[739,2842,2843],{},"The input tokens a tool result added to the next model call: the delta between the step that called the tool and the step that consumed its result. Parallel results in one step share the delta evenly; left unset when the turn ended before the result was consumed, or when a compaction reset the context",[713,2845,2847],{"id":2846},"correlate-traces-with-wide-events","Correlate traces with wide events",[618,2849,2850,2851,2853],{},"A wide event and an Agent Runs span describe the same turn, but nothing joins them on its own. ",[637,2852,782],{}," stamps evlog's turn identity onto eve's AI SDK spans:",[800,2855,2857],{"className":889,"code":2856,"filename":639,"language":891,"meta":806,"style":806},"import { defineEvlogInstrumentation } from 'evlog\u002Feve'\n\nexport default defineEvlogInstrumentation()\n",[637,2858,2859,2878,2882],{"__ignoreMap":806},[810,2860,2861,2863,2865,2868,2870,2872,2874,2876],{"class":812,"line":813},[810,2862,899],{"class":898},[810,2864,903],{"class":902},[810,2866,2867],{"class":906}," defineEvlogInstrumentation",[810,2869,910],{"class":902},[810,2871,913],{"class":898},[810,2873,916],{"class":902},[810,2875,643],{"class":819},[810,2877,921],{"class":902},[810,2879,2880],{"class":812,"line":924},[810,2881,949],{"emptyLinePlaceholder":948},[810,2883,2884,2886,2888,2890],{"class":812,"line":945},[810,2885,955],{"class":898},[810,2887,958],{"class":898},[810,2889,2867],{"class":961},[810,2891,1334],{"class":906},[618,2893,2894,2895,662,2898,2901,2902,662,2905,2907],{},"Every model-call span, and its children, then carries ",[637,2896,2897],{},"evlog.request_id",[637,2899,2900],{},"evlog.session_id",", the same values the wide event reports as ",[637,2903,2904],{},"requestId",[637,2906,2583],{},". Jump from a trace in Braintrust, Datadog or Agent Runs straight to the event in your drain, and back.",[618,2909,2910,2911,2914,2915,2918],{},"Without ",[637,2912,2913],{},"setup",", OpenTelemetry export is untouched: eve keeps writing its local traces, readable with ",[637,2916,2917],{},"eve traces",". Pass one to export elsewhere:",[800,2920,2922],{"className":889,"code":2921,"filename":639,"language":891,"meta":806,"style":806},"import { defineEvlogInstrumentation } from 'evlog\u002Feve'\nimport { registerOTel } from '@vercel\u002Fotel'\n\nexport default defineEvlogInstrumentation({\n  setup: ({ agentName }) => registerOTel({ serviceName: agentName }),\n})\n",[637,2923,2924,2942,2962,2966,2978,3015],{"__ignoreMap":806},[810,2925,2926,2928,2930,2932,2934,2936,2938,2940],{"class":812,"line":813},[810,2927,899],{"class":898},[810,2929,903],{"class":902},[810,2931,2867],{"class":906},[810,2933,910],{"class":902},[810,2935,913],{"class":898},[810,2937,916],{"class":902},[810,2939,643],{"class":819},[810,2941,921],{"class":902},[810,2943,2944,2946,2948,2951,2953,2955,2957,2960],{"class":812,"line":924},[810,2945,899],{"class":898},[810,2947,903],{"class":902},[810,2949,2950],{"class":906}," registerOTel",[810,2952,910],{"class":902},[810,2954,913],{"class":898},[810,2956,916],{"class":902},[810,2958,2959],{"class":819},"@vercel\u002Fotel",[810,2961,921],{"class":902},[810,2963,2964],{"class":812,"line":945},[810,2965,949],{"emptyLinePlaceholder":948},[810,2967,2968,2970,2972,2974,2976],{"class":812,"line":952},[810,2969,955],{"class":898},[810,2971,958],{"class":898},[810,2973,2867],{"class":961},[810,2975,964],{"class":906},[810,2977,967],{"class":902},[810,2979,2980,2983,2985,2988,2991,2993,2995,2997,2999,3001,3004,3006,3009,3011,3013],{"class":812,"line":970},[810,2981,2982],{"class":961},"  setup",[810,2984,886],{"class":902},[810,2986,2987],{"class":902}," ({",[810,2989,2990],{"class":1033}," agentName",[810,2992,1295],{"class":902},[810,2994,1041],{"class":1040},[810,2996,2950],{"class":961},[810,2998,964],{"class":906},[810,3000,1258],{"class":902},[810,3002,3003],{"class":973}," serviceName",[810,3005,886],{"class":902},[810,3007,3008],{"class":906}," agentName ",[810,3010,1089],{"class":902},[810,3012,1037],{"class":906},[810,3014,1019],{"class":902},[810,3016,3017,3019],{"class":812,"line":1006},[810,3018,1089],{"class":902},[810,3020,1092],{"class":906},[618,3022,3023,2570,3026,2570,3029,662,3032,3035,3036,1053],{},[637,3024,3025],{},"functionId",[637,3027,3028],{},"recordInputs",[637,3030,3031],{},"recordOutputs",[637,3033,3034],{},"traceChannelRequests"," pass straight through to eve's ",[637,3037,3038],{},"defineInstrumentation",[792,3040,3042],{"id":3041},"alongside-another-observability-backend","Alongside another observability backend",[618,3044,3045,3047,3048,3050,3051,3054,3055,3058],{},[637,3046,782],{}," is the shortcut for an agent whose instrumentation is evlog's alone. It owns the file, and an agent has exactly one ",[637,3049,639],{},", so every observability item in eve's registry writes that same path, which is why ",[637,3052,3053],{},"eve add instrumentation\u002Fsentry"," after ",[637,3056,3057],{},"eve add instrumentation\u002Fposthog"," refuses rather than clobbering the first.",[618,3060,3061,3062,3064,3065,3068],{},"Once another backend is in play, write the file yourself with eve's own ",[637,3063,3038],{}," and spread ",[637,3066,3067],{},"evlogRuntimeContext"," into your runtime context. evlog contributes attributes to your instrumentation instead of wrapping it:",[800,3070,3072],{"className":889,"code":3071,"filename":639,"language":891,"meta":806,"style":806},"import { BatchSpanProcessor, SimpleSpanProcessor } from '@opentelemetry\u002Fsdk-trace-base'\nimport { PostHogTraceExporter } from '@posthog\u002Fai\u002Fotel'\nimport { OTLPHttpProtoTraceExporter, registerOTel } from '@vercel\u002Fotel'\nimport { defineInstrumentation } from 'eve\u002Finstrumentation'\nimport { evlogRuntimeContext } from 'evlog\u002Feve'\n\nexport default defineInstrumentation({\n  \u002F\u002F One provider, one span processor per backend. Items that generate\n  \u002F\u002F `traceExporter` (Sentry, Datadog, Arize, Jaeger, Braintrust, Honeycomb)\n  \u002F\u002F become an entry in this array. Call registerOTel once, not once per backend.\n  setup: ({ agentName }) => registerOTel({\n    serviceName: agentName,\n    spanProcessors: [\n      new SimpleSpanProcessor(new PostHogTraceExporter({\n        projectToken: process.env.POSTHOG_PROJECT_TOKEN!,\n      })),\n      new BatchSpanProcessor(new OTLPHttpProtoTraceExporter({\n        url: process.env.SENTRY_OTLP_TRACES_ENDPOINT!,\n        headers: { 'x-sentry-auth': `sentry sentry_key=${process.env.SENTRY_PUBLIC_KEY}` },\n      })),\n    ],\n  }),\n  events: {\n    'step.started': (input) => {\n      const principalId = input.session.auth.initiator?.principalId\n        ?? input.session.auth.current?.principalId\n      return {\n        runtimeContext: {\n          ...evlogRuntimeContext(input),\n          \u002F\u002F Omitted rather than blank: an empty attribute reads as an empty id.\n          ...(principalId ? { posthog_distinct_id: principalId } : {}),\n        },\n      }\n    },\n  },\n})\n",[637,3073,3074,3099,3119,3142,3162,3181,3185,3197,3203,3208,3213,3233,3244,3253,3271,3292,3302,3318,3338,3382,3390,3397,3406,3415,3438,3472,3496,3503,3512,3527,3532,3564,3570,3576,3582,3587],{"__ignoreMap":806},[810,3075,3076,3078,3080,3083,3085,3088,3090,3092,3094,3097],{"class":812,"line":813},[810,3077,899],{"class":898},[810,3079,903],{"class":902},[810,3081,3082],{"class":906}," BatchSpanProcessor",[810,3084,1370],{"class":902},[810,3086,3087],{"class":906}," SimpleSpanProcessor",[810,3089,910],{"class":902},[810,3091,913],{"class":898},[810,3093,916],{"class":902},[810,3095,3096],{"class":819},"@opentelemetry\u002Fsdk-trace-base",[810,3098,921],{"class":902},[810,3100,3101,3103,3105,3108,3110,3112,3114,3117],{"class":812,"line":924},[810,3102,899],{"class":898},[810,3104,903],{"class":902},[810,3106,3107],{"class":906}," PostHogTraceExporter",[810,3109,910],{"class":902},[810,3111,913],{"class":898},[810,3113,916],{"class":902},[810,3115,3116],{"class":819},"@posthog\u002Fai\u002Fotel",[810,3118,921],{"class":902},[810,3120,3121,3123,3125,3128,3130,3132,3134,3136,3138,3140],{"class":812,"line":945},[810,3122,899],{"class":898},[810,3124,903],{"class":902},[810,3126,3127],{"class":906}," OTLPHttpProtoTraceExporter",[810,3129,1370],{"class":902},[810,3131,2950],{"class":906},[810,3133,910],{"class":902},[810,3135,913],{"class":898},[810,3137,916],{"class":902},[810,3139,2959],{"class":819},[810,3141,921],{"class":902},[810,3143,3144,3146,3148,3151,3153,3155,3157,3160],{"class":812,"line":952},[810,3145,899],{"class":898},[810,3147,903],{"class":902},[810,3149,3150],{"class":906}," defineInstrumentation",[810,3152,910],{"class":902},[810,3154,913],{"class":898},[810,3156,916],{"class":902},[810,3158,3159],{"class":819},"eve\u002Finstrumentation",[810,3161,921],{"class":902},[810,3163,3164,3166,3168,3171,3173,3175,3177,3179],{"class":812,"line":970},[810,3165,899],{"class":898},[810,3167,903],{"class":902},[810,3169,3170],{"class":906}," evlogRuntimeContext",[810,3172,910],{"class":902},[810,3174,913],{"class":898},[810,3176,916],{"class":902},[810,3178,643],{"class":819},[810,3180,921],{"class":902},[810,3182,3183],{"class":812,"line":1006},[810,3184,949],{"emptyLinePlaceholder":948},[810,3186,3187,3189,3191,3193,3195],{"class":812,"line":1022},[810,3188,955],{"class":898},[810,3190,958],{"class":898},[810,3192,3150],{"class":961},[810,3194,964],{"class":906},[810,3196,967],{"class":902},[810,3198,3199],{"class":812,"line":1047},[810,3200,3202],{"class":3201},"sHwdD","  \u002F\u002F One provider, one span processor per backend. Items that generate\n",[810,3204,3205],{"class":812,"line":1080},[810,3206,3207],{"class":3201},"  \u002F\u002F `traceExporter` (Sentry, Datadog, Arize, Jaeger, Braintrust, Honeycomb)\n",[810,3209,3210],{"class":812,"line":1086},[810,3211,3212],{"class":3201},"  \u002F\u002F become an entry in this array. Call registerOTel once, not once per backend.\n",[810,3214,3215,3217,3219,3221,3223,3225,3227,3229,3231],{"class":812,"line":1337},[810,3216,2982],{"class":961},[810,3218,886],{"class":902},[810,3220,2987],{"class":902},[810,3222,2990],{"class":1033},[810,3224,1295],{"class":902},[810,3226,1041],{"class":1040},[810,3228,2950],{"class":961},[810,3230,964],{"class":906},[810,3232,967],{"class":902},[810,3234,3235,3238,3240,3242],{"class":812,"line":1405},[810,3236,3237],{"class":973},"    serviceName",[810,3239,886],{"class":902},[810,3241,2990],{"class":906},[810,3243,1019],{"class":902},[810,3245,3246,3249,3251],{"class":812,"line":1414},[810,3247,3248],{"class":973},"    spanProcessors",[810,3250,886],{"class":902},[810,3252,2048],{"class":906},[810,3254,3255,3258,3260,3262,3265,3267,3269],{"class":812,"line":1419},[810,3256,3257],{"class":902},"      new",[810,3259,3087],{"class":961},[810,3261,964],{"class":906},[810,3263,3264],{"class":902},"new",[810,3266,3107],{"class":961},[810,3268,964],{"class":906},[810,3270,967],{"class":902},[810,3272,3273,3276,3278,3280,3282,3284,3286,3289],{"class":812,"line":1731},[810,3274,3275],{"class":973},"        projectToken",[810,3277,886],{"class":902},[810,3279,1067],{"class":906},[810,3281,1053],{"class":902},[810,3283,1072],{"class":906},[810,3285,1053],{"class":902},[810,3287,3288],{"class":906},"POSTHOG_PROJECT_TOKEN",[810,3290,3291],{"class":902},"!,\n",[810,3293,3294,3297,3300],{"class":812,"line":1781},[810,3295,3296],{"class":902},"      }",[810,3298,3299],{"class":906},"))",[810,3301,1019],{"class":902},[810,3303,3304,3306,3308,3310,3312,3314,3316],{"class":812,"line":1843},[810,3305,3257],{"class":902},[810,3307,3082],{"class":961},[810,3309,964],{"class":906},[810,3311,3264],{"class":902},[810,3313,3127],{"class":961},[810,3315,964],{"class":906},[810,3317,967],{"class":902},[810,3319,3320,3323,3325,3327,3329,3331,3333,3336],{"class":812,"line":1892},[810,3321,3322],{"class":973},"        url",[810,3324,886],{"class":902},[810,3326,1067],{"class":906},[810,3328,1053],{"class":902},[810,3330,1072],{"class":906},[810,3332,1053],{"class":902},[810,3334,3335],{"class":906},"SENTRY_OTLP_TRACES_ENDPOINT",[810,3337,3291],{"class":902},[810,3339,3340,3343,3345,3347,3349,3352,3354,3356,3359,3362,3365,3368,3370,3372,3374,3377,3380],{"class":812,"line":1906},[810,3341,3342],{"class":973},"        headers",[810,3344,886],{"class":902},[810,3346,903],{"class":902},[810,3348,916],{"class":902},[810,3350,3351],{"class":973},"x-sentry-auth",[810,3353,998],{"class":902},[810,3355,886],{"class":902},[810,3357,3358],{"class":902}," `",[810,3360,3361],{"class":819},"sentry sentry_key=",[810,3363,3364],{"class":902},"${",[810,3366,3367],{"class":906},"process",[810,3369,1053],{"class":902},[810,3371,1072],{"class":906},[810,3373,1053],{"class":902},[810,3375,3376],{"class":906},"SENTRY_PUBLIC_KEY",[810,3378,3379],{"class":902},"}`",[810,3381,1003],{"class":902},[810,3383,3384,3386,3388],{"class":812,"line":1927},[810,3385,3296],{"class":902},[810,3387,3299],{"class":906},[810,3389,1019],{"class":902},[810,3391,3392,3395],{"class":812,"line":1948},[810,3393,3394],{"class":906},"    ]",[810,3396,1019],{"class":902},[810,3398,3399,3402,3404],{"class":812,"line":1965},[810,3400,3401],{"class":902},"  }",[810,3403,1037],{"class":906},[810,3405,1019],{"class":902},[810,3407,3408,3411,3413],{"class":812,"line":1981},[810,3409,3410],{"class":973},"  events",[810,3412,886],{"class":902},[810,3414,1044],{"class":902},[810,3416,3417,3420,3423,3425,3427,3429,3432,3434,3436],{"class":812,"line":1998},[810,3418,3419],{"class":902},"    '",[810,3421,3422],{"class":973},"step.started",[810,3424,998],{"class":902},[810,3426,886],{"class":902},[810,3428,1030],{"class":902},[810,3430,3431],{"class":1033},"input",[810,3433,1037],{"class":902},[810,3435,1041],{"class":1040},[810,3437,1044],{"class":902},[810,3439,3440,3443,3446,3448,3451,3453,3456,3458,3461,3463,3466,3469],{"class":812,"line":2015},[810,3441,3442],{"class":1040},"      const",[810,3444,3445],{"class":906}," principalId",[810,3447,1064],{"class":902},[810,3449,3450],{"class":906}," input",[810,3452,1053],{"class":902},[810,3454,3455],{"class":906},"session",[810,3457,1053],{"class":902},[810,3459,3460],{"class":906},"auth",[810,3462,1053],{"class":902},[810,3464,3465],{"class":906},"initiator",[810,3467,3468],{"class":902},"?.",[810,3470,3471],{"class":906},"principalId\n",[810,3473,3474,3477,3479,3481,3483,3485,3487,3489,3492,3494],{"class":812,"line":2036},[810,3475,3476],{"class":902},"        ??",[810,3478,3450],{"class":906},[810,3480,1053],{"class":902},[810,3482,3455],{"class":906},[810,3484,1053],{"class":902},[810,3486,3460],{"class":906},[810,3488,1053],{"class":902},[810,3490,3491],{"class":906},"current",[810,3493,3468],{"class":902},[810,3495,3471],{"class":906},[810,3497,3498,3501],{"class":812,"line":2051},[810,3499,3500],{"class":898},"      return",[810,3502,1044],{"class":902},[810,3504,3505,3508,3510],{"class":812,"line":2113},[810,3506,3507],{"class":973},"        runtimeContext",[810,3509,886],{"class":902},[810,3511,1044],{"class":902},[810,3513,3514,3517,3519,3521,3523,3525],{"class":812,"line":2162},[810,3515,3516],{"class":902},"          ...",[810,3518,3067],{"class":961},[810,3520,964],{"class":973},[810,3522,3431],{"class":906},[810,3524,1037],{"class":973},[810,3526,1019],{"class":902},[810,3528,3529],{"class":812,"line":2168},[810,3530,3531],{"class":3201},"          \u002F\u002F Omitted rather than blank: an empty attribute reads as an empty id.\n",[810,3533,3534,3536,3538,3540,3543,3545,3548,3550,3552,3554,3557,3560,3562],{"class":812,"line":2174},[810,3535,3516],{"class":902},[810,3537,964],{"class":973},[810,3539,2660],{"class":906},[810,3541,3542],{"class":902}," ?",[810,3544,903],{"class":902},[810,3546,3547],{"class":973}," posthog_distinct_id",[810,3549,886],{"class":902},[810,3551,3445],{"class":906},[810,3553,910],{"class":902},[810,3555,3556],{"class":902}," :",[810,3558,3559],{"class":902}," {}",[810,3561,1037],{"class":973},[810,3563,1019],{"class":902},[810,3565,3567],{"class":812,"line":3566},32,[810,3568,3569],{"class":902},"        },\n",[810,3571,3573],{"class":812,"line":3572},33,[810,3574,3575],{"class":902},"      }\n",[810,3577,3579],{"class":812,"line":3578},34,[810,3580,3581],{"class":902},"    },\n",[810,3583,3585],{"class":812,"line":3584},35,[810,3586,1083],{"class":902},[810,3588,3590,3592],{"class":812,"line":3589},36,[810,3591,1089],{"class":902},[810,3593,1092],{"class":906},[618,3595,3596,3598,3599,3602,3603,3606],{},[637,3597,3067],{}," returns ",[637,3600,3601],{},"undefined"," outside a tracked turn, and spreading that adds nothing. PostHog is the only registry item that also uses ",[637,3604,3605],{},"events","; the rest only need their span processor. Keep each generated file open while you merge: the env vars and exporter options are the parts worth copying exactly.",[618,3608,3609,3610,3613,3614,3616],{},"Spans and wide events stay joined by attribute, not by trace id: an agent turn has no inbound ",[637,3611,3612],{},"traceparent"," to inherit, so ",[637,3615,2897],{}," is what carries across.",[650,3618,3621,3627,3628,2641,3631,3634,3635,3638,3639,3642,3643,3646,3647,3649],{"color":3619,"icon":3620},"warning","i-lucide-triangle-alert",[628,3622,3623,3624,1053],{},"PostHog drops ",[637,3625,3626],{},"evlog.*"," Its exporter forwards the whole span, but the server-side conversion into ",[637,3629,3630],{},"$ai_generation",[637,3632,3633],{},"$ai_span"," events keeps only attributes prefixed ",[637,3636,3637],{},"posthog_",", and strips that prefix. To join on PostHog, repeat the ids under names that survive, since ",[637,3640,3641],{},"posthog_evlog_request_id"," arrives as ",[637,3644,3645],{},"evlog_request_id",". Other OTLP backends receive ",[637,3648,3626],{}," unchanged.",[618,3651,3652,3653,3656],{},"eve applies the runtime context to the step span only, so the generation spans beneath it inherit nothing. On PostHog that means cost lands on events with no identity and no environment. A span processor that copies the turn's ",[637,3654,3655],{},"posthog_*"," attributes onto every child span is what closes the gap.",[618,3658,3659],{},"To close the loop the other way, send the agent's own wide events to PostHog Logs and point the drain at the same principal:",[800,3661,3663],{"className":889,"code":3662,"filename":885,"language":891,"meta":806,"style":806},"import { createPostHogDrain } from 'evlog\u002Fposthog'\nimport { defineEvlogHook } from 'evlog\u002Feve'\n\nexport default defineEvlogHook({\n  drain: createPostHogDrain({ distinctIdField: 'eve.caller.principalId' }),\n})\n",[637,3664,3665,3685,3703,3707,3719,3749],{"__ignoreMap":806},[810,3666,3667,3669,3671,3674,3676,3678,3680,3683],{"class":812,"line":813},[810,3668,899],{"class":898},[810,3670,903],{"class":902},[810,3672,3673],{"class":906}," createPostHogDrain",[810,3675,910],{"class":902},[810,3677,913],{"class":898},[810,3679,916],{"class":902},[810,3681,3682],{"class":819},"evlog\u002Fposthog",[810,3684,921],{"class":902},[810,3686,3687,3689,3691,3693,3695,3697,3699,3701],{"class":812,"line":924},[810,3688,899],{"class":898},[810,3690,903],{"class":902},[810,3692,907],{"class":906},[810,3694,910],{"class":902},[810,3696,913],{"class":898},[810,3698,916],{"class":902},[810,3700,643],{"class":819},[810,3702,921],{"class":902},[810,3704,3705],{"class":812,"line":945},[810,3706,949],{"emptyLinePlaceholder":948},[810,3708,3709,3711,3713,3715,3717],{"class":812,"line":952},[810,3710,955],{"class":898},[810,3712,958],{"class":898},[810,3714,907],{"class":961},[810,3716,964],{"class":906},[810,3718,967],{"class":902},[810,3720,3721,3723,3725,3727,3729,3731,3734,3736,3738,3741,3743,3745,3747],{"class":812,"line":970},[810,3722,1009],{"class":973},[810,3724,886],{"class":902},[810,3726,3673],{"class":961},[810,3728,964],{"class":906},[810,3730,1258],{"class":902},[810,3732,3733],{"class":973}," distinctIdField",[810,3735,886],{"class":902},[810,3737,916],{"class":902},[810,3739,3740],{"class":819},"eve.caller.principalId",[810,3742,998],{"class":902},[810,3744,910],{"class":902},[810,3746,1037],{"class":906},[810,3748,1019],{"class":902},[810,3750,3751,3753],{"class":812,"line":1006},[810,3752,1089],{"class":902},[810,3754,1092],{"class":906},[618,3756,3757,3758,1053],{},"Turns then land on the same PostHog person as the LLM traces they produced. See the ",[621,3759,3761],{"href":3760},"\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog#link-a-log-to-a-person-and-a-session-replay","PostHog adapter",[713,3763,3765],{"id":3764},"production","Production",[618,3767,3768],{},"Long-running eve agents should disable terminal pretty-printing and use a non-blocking drain:",[800,3770,3772],{"className":889,"code":3771,"filename":885,"language":891,"meta":806,"style":806},"import { defineEvlogHook } from 'evlog\u002Feve'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\nimport { createDrainPipeline } from 'evlog\u002Fpipeline'\n\nconst drain = createDrainPipeline({ batch: { size: 50, intervalMs: 5000 } })(\n  createAxiomDrain(),\n)\n\nexport default defineEvlogHook({\n  init: {\n    env: { service: 'my-agent', environment: 'production' },\n    pretty: false,\n    sampling: { rates: { info: 10 } },\n  },\n  drain,\n  maxSessions: 256,\n})\n",[637,3773,3774,3792,3810,3830,3834,3883,3892,3896,3900,3912,3920,3954,3967,3995,3999,4005,4017],{"__ignoreMap":806},[810,3775,3776,3778,3780,3782,3784,3786,3788,3790],{"class":812,"line":813},[810,3777,899],{"class":898},[810,3779,903],{"class":902},[810,3781,907],{"class":906},[810,3783,910],{"class":902},[810,3785,913],{"class":898},[810,3787,916],{"class":902},[810,3789,643],{"class":819},[810,3791,921],{"class":902},[810,3793,3794,3796,3798,3800,3802,3804,3806,3808],{"class":812,"line":924},[810,3795,899],{"class":898},[810,3797,903],{"class":902},[810,3799,931],{"class":906},[810,3801,910],{"class":902},[810,3803,913],{"class":898},[810,3805,916],{"class":902},[810,3807,940],{"class":819},[810,3809,921],{"class":902},[810,3811,3812,3814,3816,3819,3821,3823,3825,3828],{"class":812,"line":945},[810,3813,899],{"class":898},[810,3815,903],{"class":902},[810,3817,3818],{"class":906}," createDrainPipeline",[810,3820,910],{"class":902},[810,3822,913],{"class":898},[810,3824,916],{"class":902},[810,3826,3827],{"class":819},"evlog\u002Fpipeline",[810,3829,921],{"class":902},[810,3831,3832],{"class":812,"line":952},[810,3833,949],{"emptyLinePlaceholder":948},[810,3835,3836,3839,3842,3845,3847,3849,3851,3854,3856,3858,3861,3863,3866,3868,3871,3873,3876,3878,3880],{"class":812,"line":970},[810,3837,3838],{"class":1040},"const",[810,3840,3841],{"class":906}," drain ",[810,3843,3844],{"class":902},"=",[810,3846,3818],{"class":961},[810,3848,964],{"class":906},[810,3850,1258],{"class":902},[810,3852,3853],{"class":973}," batch",[810,3855,886],{"class":902},[810,3857,903],{"class":902},[810,3859,3860],{"class":973}," size",[810,3862,886],{"class":902},[810,3864,3865],{"class":1562}," 50",[810,3867,1370],{"class":902},[810,3869,3870],{"class":973}," intervalMs",[810,3872,886],{"class":902},[810,3874,3875],{"class":1562}," 5000",[810,3877,910],{"class":902},[810,3879,910],{"class":902},[810,3881,3882],{"class":906},")(\n",[810,3884,3885,3888,3890],{"class":812,"line":1006},[810,3886,3887],{"class":961},"  createAxiomDrain",[810,3889,1016],{"class":906},[810,3891,1019],{"class":902},[810,3893,3894],{"class":812,"line":1022},[810,3895,1092],{"class":906},[810,3897,3898],{"class":812,"line":1047},[810,3899,949],{"emptyLinePlaceholder":948},[810,3901,3902,3904,3906,3908,3910],{"class":812,"line":1080},[810,3903,955],{"class":898},[810,3905,958],{"class":898},[810,3907,907],{"class":961},[810,3909,964],{"class":906},[810,3911,967],{"class":902},[810,3913,3914,3916,3918],{"class":812,"line":1086},[810,3915,974],{"class":973},[810,3917,886],{"class":902},[810,3919,1044],{"class":902},[810,3921,3922,3925,3927,3929,3931,3933,3935,3937,3939,3941,3944,3946,3948,3950,3952],{"class":812,"line":1337},[810,3923,3924],{"class":973},"    env",[810,3926,886],{"class":902},[810,3928,903],{"class":902},[810,3930,988],{"class":973},[810,3932,886],{"class":902},[810,3934,916],{"class":902},[810,3936,995],{"class":819},[810,3938,998],{"class":902},[810,3940,1370],{"class":902},[810,3942,3943],{"class":973}," environment",[810,3945,886],{"class":902},[810,3947,916],{"class":902},[810,3949,3764],{"class":819},[810,3951,998],{"class":902},[810,3953,1003],{"class":902},[810,3955,3956,3959,3961,3965],{"class":812,"line":1405},[810,3957,3958],{"class":973},"    pretty",[810,3960,886],{"class":902},[810,3962,3964],{"class":3963},"sfNiH"," false",[810,3966,1019],{"class":902},[810,3968,3969,3972,3974,3976,3979,3981,3983,3986,3988,3991,3993],{"class":812,"line":1414},[810,3970,3971],{"class":973},"    sampling",[810,3973,886],{"class":902},[810,3975,903],{"class":902},[810,3977,3978],{"class":973}," rates",[810,3980,886],{"class":902},[810,3982,903],{"class":902},[810,3984,3985],{"class":973}," info",[810,3987,886],{"class":902},[810,3989,3990],{"class":1562}," 10",[810,3992,910],{"class":902},[810,3994,1003],{"class":902},[810,3996,3997],{"class":812,"line":1419},[810,3998,1083],{"class":902},[810,4000,4001,4003],{"class":812,"line":1731},[810,4002,1009],{"class":906},[810,4004,1019],{"class":902},[810,4006,4007,4010,4012,4015],{"class":812,"line":1781},[810,4008,4009],{"class":973},"  maxSessions",[810,4011,886],{"class":902},[810,4013,4014],{"class":1562}," 256",[810,4016,1019],{"class":902},[810,4018,4019,4021],{"class":812,"line":1843},[810,4020,1089],{"class":902},[810,4022,1092],{"class":906},[718,4024,4025,4035],{},[721,4026,4027],{},[724,4028,4029,4032],{},[727,4030,4031],{},"Concern",[727,4033,4034],{},"Recommendation",[734,4036,4037,4048,4056,4067,4081],{},[724,4038,4039,4042],{},[739,4040,4041],{},"Terminal output",[739,4043,4044,4047],{},[637,4045,4046],{},"init.pretty: false"," — pretty-print is for local dev only",[724,4049,4050,4053],{},[739,4051,4052],{},"Drain latency",[739,4054,4055],{},"Batch or async HTTP drains; never block the turn on I\u002FO",[724,4057,4058,4061],{},[739,4059,4060],{},"Head sampling",[739,4062,4063,4066],{},[637,4064,4065],{},"init.sampling.rates"," — eve emits one event per turn, not per token",[724,4068,4069,4071],{},[739,4070,226],{},[739,4072,4073,4076,4077,4080],{},[637,4074,4075],{},"maxSessions"," (default ",[637,4078,4079],{},"256",") evicts oldest idle session state",[724,4082,4083,4086],{},[739,4084,4085],{},"Load",[739,4087,4088],{},"Hook handlers are O(1) per stream event; cost is dominated by your drain",[713,4090,346],{"id":4091},"options",[718,4093,4094,4104],{},[721,4095,4096],{},[724,4097,4098,4101],{},[727,4099,4100],{},"Option",[727,4102,4103],{},"Description",[734,4105,4106,4119,4140,4160,4176,4189,4210,4221],{},[724,4107,4108,4112],{},[739,4109,4110],{},[637,4111,94],{},[739,4113,4114,4115,4118],{},"Passed to ",[637,4116,4117],{},"initLogger()"," on first hook invocation",[724,4120,4121,4135],{},[739,4122,4123,2641,4126,2641,4129,2641,4132],{},[637,4124,4125],{},"drain",[637,4127,4128],{},"enrich",[637,4130,4131],{},"keep",[637,4133,4134],{},"plugins",[739,4136,4137,4138,1037],{},"Same as HTTP integrations (",[621,4139,4134],{"href":523},[724,4141,4142,4146],{},[739,4143,4144],{},[637,4145,2790],{},[739,4147,4148,4151,4152,4155,4156,4159],{},[637,4149,4150],{},"'omit'"," (default), ",[637,4153,4154],{},"'preview'"," or ",[637,4157,4158],{},"'full'"," — how much of the user message and the agent response to record",[724,4161,4162,4167],{},[739,4163,4164],{},[637,4165,4166],{},"messagePreviewLength",[739,4168,4169,4170,4172,4173,1037],{},"Characters kept in ",[637,4171,4154],{}," mode (default ",[637,4174,4175],{},"500",[724,4177,4178,4183],{},[739,4179,4180],{},[637,4181,4182],{},"sessionEvent",[739,4184,4185,4188],{},[637,4186,4187],{},"true"," emits one extra event per session, rolling up its turns",[724,4190,4191,4197],{},[739,4192,4193,2641,4195],{},[637,4194,2808],{},[637,4196,1911],{},[739,4198,4199,4200,1461,4203,4206,4207,4209],{},"Fallback token pricing (",[637,4201,4202],{},"ModelCost",[637,4204,4205],{},"evlog\u002Fai",") → ",[637,4208,2804],{},", used only when eve reports no cost",[724,4211,4212,4216],{},[739,4213,4214],{},[637,4215,4075],{},[739,4217,4218,4219,1037],{},"In-memory session cap for context carry-over (default ",[637,4220,4079],{},[724,4222,4223,4231],{},[739,4224,4225,2641,4228],{},[637,4226,4227],{},"include",[637,4229,4230],{},"exclude",[739,4232,4233,4234,1037],{},"Route-style filters on turn paths (",[637,4235,4236],{},"\u002Fsessions\u002F*\u002Fturns\u002F*",[713,4238,530],{"id":4239},"tail-sampling",[618,4241,4242,4243,4245],{},"Use ",[637,4244,4131],{}," to force-keep turns with failed tools or high token usage:",[800,4247,4249],{"className":889,"code":4248,"filename":885,"language":891,"meta":806,"style":806},"export default defineEvlogHook({\n  drain: createAxiomDrain(),\n  keep: (ctx) => {\n    const ai = ctx.context.ai as {\n      inputTokens?: number\n      outputTokens?: number\n      tools?: Array\u003C{ success: boolean }>\n    } | undefined\n    const totalTokens = (ai?.inputTokens ?? 0) + (ai?.outputTokens ?? 0)\n    if (totalTokens > 10_000) ctx.shouldKeep = true\n    if (ai?.tools?.some(t => !t.success)) ctx.shouldKeep = true\n  },\n})\n",[637,4250,4251,4263,4275,4292,4318,4329,4338,4362,4373,4415,4445,4491,4495],{"__ignoreMap":806},[810,4252,4253,4255,4257,4259,4261],{"class":812,"line":813},[810,4254,955],{"class":898},[810,4256,958],{"class":898},[810,4258,907],{"class":961},[810,4260,964],{"class":906},[810,4262,967],{"class":902},[810,4264,4265,4267,4269,4271,4273],{"class":812,"line":924},[810,4266,1009],{"class":973},[810,4268,886],{"class":902},[810,4270,931],{"class":961},[810,4272,1016],{"class":906},[810,4274,1019],{"class":902},[810,4276,4277,4280,4282,4284,4286,4288,4290],{"class":812,"line":945},[810,4278,4279],{"class":961},"  keep",[810,4281,886],{"class":902},[810,4283,1030],{"class":902},[810,4285,1034],{"class":1033},[810,4287,1037],{"class":902},[810,4289,1041],{"class":1040},[810,4291,1044],{"class":902},[810,4293,4294,4296,4299,4301,4304,4306,4309,4311,4313,4316],{"class":812,"line":952},[810,4295,1302],{"class":1040},[810,4297,4298],{"class":906}," ai",[810,4300,1064],{"class":902},[810,4302,4303],{"class":906}," ctx",[810,4305,1053],{"class":902},[810,4307,4308],{"class":906},"context",[810,4310,1053],{"class":902},[810,4312,1897],{"class":906},[810,4314,4315],{"class":898}," as",[810,4317,1044],{"class":902},[810,4319,4320,4323,4326],{"class":812,"line":970},[810,4321,4322],{"class":973},"      inputTokens",[810,4324,4325],{"class":902},"?:",[810,4327,4328],{"class":816}," number\n",[810,4330,4331,4334,4336],{"class":812,"line":1006},[810,4332,4333],{"class":973},"      outputTokens",[810,4335,4325],{"class":902},[810,4337,4328],{"class":816},[810,4339,4340,4343,4345,4348,4351,4354,4356,4359],{"class":812,"line":1022},[810,4341,4342],{"class":973},"      tools",[810,4344,4325],{"class":902},[810,4346,4347],{"class":816}," Array",[810,4349,4350],{"class":902},"\u003C{",[810,4352,4353],{"class":973}," success",[810,4355,886],{"class":902},[810,4357,4358],{"class":816}," boolean",[810,4360,4361],{"class":902}," }>\n",[810,4363,4364,4367,4370],{"class":812,"line":1047},[810,4365,4366],{"class":902},"    }",[810,4368,4369],{"class":902}," |",[810,4371,4372],{"class":816}," undefined\n",[810,4374,4375,4377,4380,4382,4384,4386,4388,4390,4393,4395,4398,4401,4403,4405,4407,4409,4411,4413],{"class":812,"line":1080},[810,4376,1302],{"class":1040},[810,4378,4379],{"class":906}," totalTokens",[810,4381,1064],{"class":902},[810,4383,1030],{"class":973},[810,4385,1897],{"class":906},[810,4387,3468],{"class":902},[810,4389,1986],{"class":906},[810,4391,4392],{"class":902}," ??",[810,4394,1688],{"class":1562},[810,4396,4397],{"class":973},") ",[810,4399,4400],{"class":902},"+",[810,4402,1030],{"class":973},[810,4404,1897],{"class":906},[810,4406,3468],{"class":902},[810,4408,2003],{"class":906},[810,4410,4392],{"class":902},[810,4412,1688],{"class":1562},[810,4414,1092],{"class":973},[810,4416,4417,4420,4422,4425,4428,4431,4433,4435,4437,4440,4442],{"class":812,"line":1086},[810,4418,4419],{"class":898},"    if",[810,4421,1030],{"class":973},[810,4423,4424],{"class":906},"totalTokens",[810,4426,4427],{"class":902}," >",[810,4429,4430],{"class":1562}," 10_000",[810,4432,4397],{"class":973},[810,4434,1034],{"class":906},[810,4436,1053],{"class":902},[810,4438,4439],{"class":906},"shouldKeep",[810,4441,1064],{"class":902},[810,4443,4444],{"class":3963}," true\n",[810,4446,4447,4449,4451,4453,4455,4457,4459,4462,4464,4467,4469,4472,4474,4476,4478,4481,4483,4485,4487,4489],{"class":812,"line":1337},[810,4448,4419],{"class":898},[810,4450,1030],{"class":973},[810,4452,1897],{"class":906},[810,4454,3468],{"class":902},[810,4456,2041],{"class":906},[810,4458,3468],{"class":902},[810,4460,4461],{"class":961},"some",[810,4463,964],{"class":973},[810,4465,4466],{"class":1033},"t",[810,4468,1041],{"class":1040},[810,4470,4471],{"class":902}," !",[810,4473,4466],{"class":906},[810,4475,1053],{"class":902},[810,4477,2090],{"class":906},[810,4479,4480],{"class":973},")) ",[810,4482,1034],{"class":906},[810,4484,1053],{"class":902},[810,4486,4439],{"class":906},[810,4488,1064],{"class":902},[810,4490,4444],{"class":3963},[810,4492,4493],{"class":812,"line":1405},[810,4494,1083],{"class":902},[810,4496,4497,4499],{"class":812,"line":1414},[810,4498,1089],{"class":902},[810,4500,1092],{"class":906},[713,4502,4504],{"id":4503},"audit-logs","Audit logs",[618,4506,4507,4508,4510,4511,4514,4515,4518,4519,4522,4523,1457,4525,1053],{},"Combine with ",[621,4509,387],{"href":393},": register ",[637,4512,4513],{},"auditEnricher()"," via ",[637,4516,4517],{},"init.plugins"," or a global plugin, and call ",[637,4520,4521],{},"log.audit()"," inside tools when a human approval gate fires. Tool rejections surface on ",[637,4524,2576],{},[637,4526,4527],{},"status: \"rejected\"",[713,4529,4531],{"id":4530},"run-locally","Run locally",[800,4533,4535],{"className":802,"code":4534,"language":805,"meta":806,"style":806},"git clone https:\u002F\u002Fgithub.com\u002Fevloghq\u002Fevlog\ncd evlog\npnpm install\npnpm example eve\n",[637,4536,4537,4548,4556,4563],{"__ignoreMap":806},[810,4538,4539,4542,4545],{"class":812,"line":813},[810,4540,4541],{"class":816},"git",[810,4543,4544],{"class":819}," clone",[810,4546,4547],{"class":819}," https:\u002F\u002Fgithub.com\u002Fevloghq\u002Fevlog\n",[810,4549,4550,4553],{"class":812,"line":924},[810,4551,4552],{"class":961},"cd",[810,4554,4555],{"class":819}," evlog\n",[810,4557,4558,4560],{"class":812,"line":945},[810,4559,804],{"class":816},[810,4561,4562],{"class":819}," install\n",[810,4564,4565,4567,4570],{"class":812,"line":952},[810,4566,804],{"class":816},[810,4568,4569],{"class":819}," example",[810,4571,826],{"class":819},[618,4573,4574,4575,4578,4579,4582,4583,4586,4587,4593],{},"The ",[637,4576,4577],{},"examples\u002Feve"," project is a ",[628,4580,4581],{},"support refund copilot"," (Clearbill SaaS): lookup customer → lookup order → issue refund, with eve approvals when amount > $100. Run ",[637,4584,4585],{},"pnpm example eve",", open ",[628,4588,4589],{},[621,4590,4591],{"href":4591,"rel":4592},"http:\u002F\u002Flocalhost:3000",[625],", and click a starter prompt.",[713,4595,4597],{"id":4596},"what-to-read-next","What to read next",[676,4599,4600,4608,4616,4622],{},[679,4601,4602,4607],{},[621,4603,4606],{"href":4604,"rel":4605},"https:\u002F\u002Feve.dev\u002Fdocs\u002Fguides\u002Fhooks",[625],"eve hooks guide",": stream event vocabulary",[679,4609,4610,4615],{},[621,4611,4614],{"href":4612,"rel":4613},"https:\u002F\u002Feve.dev\u002Fdocs\u002Fguides\u002Finstrumentation",[625],"eve instrumentation",": OTel spans (complementary)",[679,4617,4618,4621],{},[621,4619,4620],{"href":338},"AI SDK use case",": when you own the model loop directly",[679,4623,4624,4627],{},[621,4625,4626],{"href":153},"Adapters overview",": drain destinations",[4629,4630,4631],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .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 .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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 pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":806,"searchDepth":924,"depth":924,"links":4633},[4634,4635,4641,4644,4647,4648,4649,4650,4651,4652],{"id":715,"depth":924,"text":716},{"id":790,"depth":924,"text":25,"children":4636},[4637,4638,4639,4640],{"id":794,"depth":945,"text":795},{"id":878,"depth":945,"text":879},{"id":1106,"depth":945,"text":1107},{"id":1449,"depth":945,"text":1450},{"id":1490,"depth":924,"text":1491,"children":4642},[4643],{"id":2609,"depth":945,"text":2610},{"id":2846,"depth":924,"text":2847,"children":4645},[4646],{"id":3041,"depth":945,"text":3042},{"id":3764,"depth":924,"text":3765},{"id":4091,"depth":924,"text":346},{"id":4239,"depth":924,"text":530},{"id":4503,"depth":924,"text":4504},{"id":4530,"depth":924,"text":4531},{"id":4596,"depth":924,"text":4597},"One evlog wide event per eve agent turn: token usage, tool executions, and business context, through your own drains and tail sampling.","md",[4656],{"label":4657,"icon":4658,"to":1139,"color":1426,"variant":4659},"Source Code","i-simple-icons-github","subtle",{},{"title":445,"icon":448},{"title":445,"description":4653},"xIc37yECFoQZTjrjZKJ9N3HStP7lPkTn3ia9b6WEtuw",[4665,4667],{"title":440,"path":441,"stem":442,"description":4666,"icon":443,"children":-1},"Add derived context to every wide event, from user agent and geo to your own computed fields.",{"title":450,"path":451,"stem":452,"description":4668,"icon":434,"children":-1},"Build a Node.js HTTP handler with structured request logs, explicit outcomes, error context, and a JSON event you can query.",1789294024770]