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