[{"data":1,"prerenderedAt":1310},["ShallowReactive",2],{"navigation_docs":3,"-adapters-axiom":191,"-adapters-axiom-surround":1305},[4,30,65,115,132,146],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","/getting-started","1.getting-started",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","/getting-started/introduction","1.getting-started/1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Installation","/getting-started/installation","1.getting-started/2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quick Start","/getting-started/quick-start","1.getting-started/3.quick-start","i-lucide-zap",{"title":25,"path":26,"stem":27,"icon":28},"Agent Skills","/getting-started/agent-skills","1.getting-started/4.agent-skills","i-lucide-sparkles",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Core Concepts","/core-concepts","2.core-concepts",[35,40,45,50,55,60],{"title":36,"path":37,"stem":38,"icon":39},"Wide Events","/core-concepts/wide-events","2.core-concepts/1.wide-events","i-lucide-layers",{"title":41,"path":42,"stem":43,"icon":44},"Structured Errors","/core-concepts/structured-errors","2.core-concepts/2.structured-errors","i-lucide-shield-alert",{"title":46,"path":47,"stem":48,"icon":49},"Best Practices","/core-concepts/best-practices","2.core-concepts/3.best-practices","i-lucide-shield-check",{"title":51,"path":52,"stem":53,"icon":54},"Typed Fields","/core-concepts/typed-fields","2.core-concepts/4.typed-fields","i-simple-icons-typescript",{"title":56,"path":57,"stem":58,"icon":59},"Sampling","/core-concepts/sampling","2.core-concepts/5.sampling","i-lucide-filter",{"title":61,"path":62,"stem":63,"icon":64},"Client Logging","/core-concepts/client-logging","2.core-concepts/6.client-logging","i-lucide-monitor",{"title":66,"path":67,"stem":68,"children":69,"page":29},"Adapters","/adapters","3.adapters",[70,75,80,85,90,95,100,105,110],{"title":71,"path":72,"stem":73,"icon":74},"Overview","/adapters/overview","3.adapters/1.overview","i-custom-plug",{"title":76,"path":77,"stem":78,"icon":79},"Axiom","/adapters/axiom","3.adapters/2.axiom","i-custom-axiom",{"title":81,"path":82,"stem":83,"icon":84},"OTLP","/adapters/otlp","3.adapters/3.otlp","i-simple-icons-opentelemetry",{"title":86,"path":87,"stem":88,"icon":89},"PostHog","/adapters/posthog","3.adapters/4.posthog","i-simple-icons-posthog",{"title":91,"path":92,"stem":93,"icon":94},"Sentry","/adapters/sentry","3.adapters/5.sentry","i-simple-icons-sentry",{"title":96,"path":97,"stem":98,"icon":99},"Better Stack","/adapters/better-stack","3.adapters/6.better-stack","i-simple-icons-betterstack",{"title":101,"path":102,"stem":103,"icon":104},"Custom Adapters","/adapters/custom","3.adapters/7.custom","i-lucide-code",{"title":106,"path":107,"stem":108,"icon":109},"Pipeline","/adapters/pipeline","3.adapters/8.pipeline","i-lucide-workflow",{"title":111,"path":112,"stem":113,"icon":114},"Browser","/adapters/browser","3.adapters/9.browser","i-lucide-globe",{"title":116,"path":117,"stem":118,"children":119,"page":29},"Enrichers","/enrichers","4.enrichers",[120,123,128],{"title":71,"path":121,"stem":122,"icon":28},"/enrichers/overview","4.enrichers/1.overview",{"title":124,"path":125,"stem":126,"icon":127},"Built-in","/enrichers/built-in","4.enrichers/2.built-in","i-lucide-puzzle",{"title":129,"path":130,"stem":131,"icon":104},"Custom","/enrichers/custom","4.enrichers/3.custom",{"title":133,"path":134,"stem":135,"children":136,"page":29},"NuxtHub","/nuxthub","5.nuxthub",[137,141],{"title":71,"path":138,"stem":139,"icon":140},"/nuxthub/overview","5.nuxthub/1.overview","i-lucide-database",{"title":142,"path":143,"stem":144,"icon":145},"Retention","/nuxthub/retention","5.nuxthub/2.retention","i-lucide-clock",{"title":147,"path":148,"stem":149,"children":150,"page":29},"Examples","/examples","6.examples",[151,156,161,166,171,176,181,186],{"title":152,"path":153,"stem":154,"icon":155},"Next.js","/examples/nextjs","6.examples/1.nextjs","i-simple-icons-nextdotjs",{"title":157,"path":158,"stem":159,"icon":160},"SvelteKit","/examples/sveltekit","6.examples/2.sveltekit","i-simple-icons-svelte",{"title":162,"path":163,"stem":164,"icon":165},"TanStack Start","/examples/tanstack-start","6.examples/3.tanstack-start","i-custom-tanstack",{"title":167,"path":168,"stem":169,"icon":170},"NestJS","/examples/nestjs","6.examples/4.nestjs","i-simple-icons-nestjs",{"title":172,"path":173,"stem":174,"icon":175},"Express","/examples/express","6.examples/5.express","i-simple-icons-express",{"title":177,"path":178,"stem":179,"icon":180},"Hono","/examples/hono","6.examples/6.hono","i-simple-icons-hono",{"title":182,"path":183,"stem":184,"icon":185},"Fastify","/examples/fastify","6.examples/7.fastify","i-simple-icons-fastify",{"title":187,"path":188,"stem":189,"icon":190},"Elysia","/examples/elysia","6.examples/8.elysia","i-custom-elysia",{"id":192,"title":193,"body":194,"description":1291,"extension":1292,"links":1293,"meta":1301,"navigation":1302,"path":77,"seo":1303,"stem":78,"__hash__":1304},"docs/3.adapters/2.axiom.md","Axiom Adapter",{"type":195,"value":196,"toc":1269},"minimark",[197,207,211,214,258,261,266,284,288,318,322,428,431,435,438,479,483,551,572,576,583,670,674,677,799,803,939,943,946,1031,1035,1039,1047,1050,1054,1061,1065,1068,1082,1086,1089,1236,1240,1265],[198,199,200,206],"p",{},[201,202,76],"a",{"href":203,"rel":204},"https://axiom.co",[205],"nofollow"," is a cloud-native logging platform with powerful querying capabilities. The evlog Axiom adapter sends your wide events directly to Axiom datasets.",[208,209,15],"h2",{"id":210},"installation",[198,212,213],{},"The Axiom adapter comes bundled with evlog:",[215,216,222],"pre",{"className":217,"code":218,"filename":219,"language":220,"meta":221,"style":221},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { createAxiomDrain } from 'evlog/axiom'\n","server/plugins/evlog-drain.ts","typescript","",[223,224,225],"code",{"__ignoreMap":221},[226,227,230,234,238,242,245,248,251,255],"span",{"class":228,"line":229},"line",1,[226,231,233],{"class":232},"s7zQu","import",[226,235,237],{"class":236},"sMK4o"," {",[226,239,241],{"class":240},"sTEyZ"," createAxiomDrain",[226,243,244],{"class":236}," }",[226,246,247],{"class":232}," from",[226,249,250],{"class":236}," '",[226,252,254],{"class":253},"sfazB","evlog/axiom",[226,256,257],{"class":236},"'\n",[208,259,20],{"id":260},"quick-start",[262,263,265],"h3",{"id":264},"_1-get-your-axiom-credentials","1. Get your Axiom credentials",[267,268,269,278,281],"ol",{},[270,271,272,273],"li",{},"Create an ",[201,274,277],{"href":275,"rel":276},"https://app.axiom.co",[205],"Axiom account",[270,279,280],{},"Create a dataset for your logs",[270,282,283],{},"Generate an API token with ingest permissions",[262,285,287],{"id":286},"_2-set-environment-variables","2. Set environment variables",[215,289,294],{"className":290,"code":291,"filename":292,"language":293,"meta":221,"style":221},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","NUXT_AXIOM_TOKEN=xaat-your-token-here\nNUXT_AXIOM_DATASET=your-dataset-name\n",".env","bash",[223,295,296,307],{"__ignoreMap":221},[226,297,298,301,304],{"class":228,"line":229},[226,299,300],{"class":240},"NUXT_AXIOM_TOKEN",[226,302,303],{"class":236},"=",[226,305,306],{"class":253},"xaat-your-token-here\n",[226,308,310,313,315],{"class":228,"line":309},2,[226,311,312],{"class":240},"NUXT_AXIOM_DATASET",[226,314,303],{"class":236},[226,316,317],{"class":253},"your-dataset-name\n",[262,319,321],{"id":320},"_3-create-the-drain-plugin","3. Create the drain plugin",[215,323,325],{"className":217,"code":324,"filename":219,"language":220,"meta":221,"style":221},"import { createAxiomDrain } from 'evlog/axiom'\n\nexport default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('evlog:drain', createAxiomDrain())\n})\n",[223,326,327,345,351,383,419],{"__ignoreMap":221},[226,328,329,331,333,335,337,339,341,343],{"class":228,"line":229},[226,330,233],{"class":232},[226,332,237],{"class":236},[226,334,241],{"class":240},[226,336,244],{"class":236},[226,338,247],{"class":232},[226,340,250],{"class":236},[226,342,254],{"class":253},[226,344,257],{"class":236},[226,346,347],{"class":228,"line":309},[226,348,350],{"emptyLinePlaceholder":349},true,"\n",[226,352,354,357,360,364,367,369,373,376,380],{"class":228,"line":353},3,[226,355,356],{"class":232},"export",[226,358,359],{"class":232}," default",[226,361,363],{"class":362},"s2Zo4"," defineNitroPlugin",[226,365,366],{"class":240},"(",[226,368,366],{"class":236},[226,370,372],{"class":371},"sHdIc","nitroApp",[226,374,375],{"class":236},")",[226,377,379],{"class":378},"spNyl"," =>",[226,381,382],{"class":236}," {\n",[226,384,386,389,392,395,397,400,403,406,409,411,414,416],{"class":228,"line":385},4,[226,387,388],{"class":240},"  nitroApp",[226,390,391],{"class":236},".",[226,393,394],{"class":240},"hooks",[226,396,391],{"class":236},[226,398,399],{"class":362},"hook",[226,401,366],{"class":402},"swJcz",[226,404,405],{"class":236},"'",[226,407,408],{"class":253},"evlog:drain",[226,410,405],{"class":236},[226,412,413],{"class":236},",",[226,415,241],{"class":362},[226,417,418],{"class":402},"())\n",[226,420,422,425],{"class":228,"line":421},5,[226,423,424],{"class":236},"}",[226,426,427],{"class":240},")\n",[198,429,430],{},"That's it! Your logs will now appear in Axiom.",[208,432,434],{"id":433},"configuration","Configuration",[198,436,437],{},"The adapter reads configuration from multiple sources (highest priority first):",[267,439,440,450,459,466],{},[270,441,442,446,447],{},[443,444,445],"strong",{},"Overrides"," passed to ",[223,448,449],{},"createAxiomDrain()",[270,451,452,455,456],{},[443,453,454],{},"Runtime config"," at ",[223,457,458],{},"runtimeConfig.evlog.axiom",[270,460,461,455,463],{},[443,462,454],{},[223,464,465],{},"runtimeConfig.axiom",[270,467,468,471,472,475,476,375],{},[443,469,470],{},"Environment variables"," (",[223,473,474],{},"NUXT_AXIOM_*"," or ",[223,477,478],{},"AXIOM_*",[262,480,482],{"id":481},"environment-variables","Environment Variables",[484,485,486,499],"table",{},[487,488,489],"thead",{},[490,491,492,496],"tr",{},[493,494,495],"th",{},"Variable",[493,497,498],{},"Description",[500,501,502,512,521,531,541],"tbody",{},[490,503,504,509],{},[505,506,507],"td",{},[223,508,300],{},[505,510,511],{},"API token with ingest permissions",[490,513,514,518],{},[505,515,516],{},[223,517,312],{},[505,519,520],{},"Dataset name to ingest logs into",[490,522,523,528],{},[505,524,525],{},[223,526,527],{},"NUXT_AXIOM_ORG_ID",[505,529,530],{},"Organization ID (required for Personal Access Tokens)",[490,532,533,538],{},[505,534,535],{},[223,536,537],{},"NUXT_AXIOM_EDGE_URL",[505,539,540],{},"Edge base URL for ingest/query (for edge deployments)",[490,542,543,548],{},[505,544,545],{},[223,546,547],{},"NUXT_AXIOM_URL",[505,549,550],{},"API base URL (legacy/default ingest endpoint)",[198,552,553,554,557,558,557,561,557,564,567,568,571],{},"You can also use ",[223,555,556],{},"AXIOM_TOKEN",", ",[223,559,560],{},"AXIOM_DATASET",[223,562,563],{},"AXIOM_ORG_ID",[223,565,566],{},"AXIOM_EDGE_URL",", and ",[223,569,570],{},"AXIOM_URL"," as fallbacks.",[262,573,575],{"id":574},"runtime-config","Runtime Config",[198,577,578,579,582],{},"Configure via ",[223,580,581],{},"nuxt.config.ts"," for type-safe configuration:",[215,584,586],{"className":217,"code":585,"filename":581,"language":220,"meta":221,"style":221},"export default defineNuxtConfig({\n  runtimeConfig: {\n    axiom: {\n      token: '', // Set via NUXT_AXIOM_TOKEN\n      dataset: '', // Set via NUXT_AXIOM_DATASET\n    },\n  },\n})\n",[223,587,588,602,612,621,637,651,657,663],{"__ignoreMap":221},[226,589,590,592,594,597,599],{"class":228,"line":229},[226,591,356],{"class":232},[226,593,359],{"class":232},[226,595,596],{"class":362}," defineNuxtConfig",[226,598,366],{"class":240},[226,600,601],{"class":236},"{\n",[226,603,604,607,610],{"class":228,"line":309},[226,605,606],{"class":402},"  runtimeConfig",[226,608,609],{"class":236},":",[226,611,382],{"class":236},[226,613,614,617,619],{"class":228,"line":353},[226,615,616],{"class":402},"    axiom",[226,618,609],{"class":236},[226,620,382],{"class":236},[226,622,623,626,628,631,633],{"class":228,"line":385},[226,624,625],{"class":402},"      token",[226,627,609],{"class":236},[226,629,630],{"class":236}," ''",[226,632,413],{"class":236},[226,634,636],{"class":635},"sHwdD"," // Set via NUXT_AXIOM_TOKEN\n",[226,638,639,642,644,646,648],{"class":228,"line":421},[226,640,641],{"class":402},"      dataset",[226,643,609],{"class":236},[226,645,630],{"class":236},[226,647,413],{"class":236},[226,649,650],{"class":635}," // Set via NUXT_AXIOM_DATASET\n",[226,652,654],{"class":228,"line":653},6,[226,655,656],{"class":236},"    },\n",[226,658,660],{"class":228,"line":659},7,[226,661,662],{"class":236},"  },\n",[226,664,666,668],{"class":228,"line":665},8,[226,667,424],{"class":236},[226,669,427],{"class":240},[262,671,673],{"id":672},"override-options","Override Options",[198,675,676],{},"Pass options directly to override any configuration:",[215,678,680],{"className":217,"code":679,"filename":219,"language":220,"meta":221,"style":221},"import { createAxiomDrain } from 'evlog/axiom'\n\nexport default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('evlog:drain', createAxiomDrain({\n    dataset: 'production-logs',\n    timeout: 10000, // 10 seconds\n  }))\n})\n",[223,681,682,700,704,724,752,769,785,793],{"__ignoreMap":221},[226,683,684,686,688,690,692,694,696,698],{"class":228,"line":229},[226,685,233],{"class":232},[226,687,237],{"class":236},[226,689,241],{"class":240},[226,691,244],{"class":236},[226,693,247],{"class":232},[226,695,250],{"class":236},[226,697,254],{"class":253},[226,699,257],{"class":236},[226,701,702],{"class":228,"line":309},[226,703,350],{"emptyLinePlaceholder":349},[226,705,706,708,710,712,714,716,718,720,722],{"class":228,"line":353},[226,707,356],{"class":232},[226,709,359],{"class":232},[226,711,363],{"class":362},[226,713,366],{"class":240},[226,715,366],{"class":236},[226,717,372],{"class":371},[226,719,375],{"class":236},[226,721,379],{"class":378},[226,723,382],{"class":236},[226,725,726,728,730,732,734,736,738,740,742,744,746,748,750],{"class":228,"line":385},[226,727,388],{"class":240},[226,729,391],{"class":236},[226,731,394],{"class":240},[226,733,391],{"class":236},[226,735,399],{"class":362},[226,737,366],{"class":402},[226,739,405],{"class":236},[226,741,408],{"class":253},[226,743,405],{"class":236},[226,745,413],{"class":236},[226,747,241],{"class":362},[226,749,366],{"class":402},[226,751,601],{"class":236},[226,753,754,757,759,761,764,766],{"class":228,"line":421},[226,755,756],{"class":402},"    dataset",[226,758,609],{"class":236},[226,760,250],{"class":236},[226,762,763],{"class":253},"production-logs",[226,765,405],{"class":236},[226,767,768],{"class":236},",\n",[226,770,771,774,776,780,782],{"class":228,"line":653},[226,772,773],{"class":402},"    timeout",[226,775,609],{"class":236},[226,777,779],{"class":778},"sbssI"," 10000",[226,781,413],{"class":236},[226,783,784],{"class":635}," // 10 seconds\n",[226,786,787,790],{"class":228,"line":659},[226,788,789],{"class":236},"  }",[226,791,792],{"class":402},"))\n",[226,794,795,797],{"class":228,"line":665},[226,796,424],{"class":236},[226,798,427],{"class":240},[262,800,802],{"id":801},"full-configuration-reference","Full Configuration Reference",[484,804,805,820],{},[487,806,807],{},[490,808,809,812,815,818],{},[493,810,811],{},"Option",[493,813,814],{},"Type",[493,816,817],{},"Default",[493,819,498],{},[500,821,822,840,856,872,895,919],{},[490,823,824,829,834,837],{},[505,825,826],{},[223,827,828],{},"token",[505,830,831],{},[223,832,833],{},"string",[505,835,836],{},"-",[505,838,839],{},"API token (required)",[490,841,842,847,851,853],{},[505,843,844],{},[223,845,846],{},"dataset",[505,848,849],{},[223,850,833],{},[505,852,836],{},[505,854,855],{},"Dataset name (required)",[490,857,858,863,867,869],{},[505,859,860],{},[223,861,862],{},"orgId",[505,864,865],{},[223,866,833],{},[505,868,836],{},[505,870,871],{},"Organization ID (for PAT tokens)",[490,873,874,879,883,885],{},[505,875,876],{},[223,877,878],{},"edgeUrl",[505,880,881],{},[223,882,833],{},[505,884,836],{},[505,886,887,888,891,892],{},"Edge URL for ingest. Uses ",[223,889,890],{},"/v1/ingest/{dataset}"," when no path is provided; custom paths are used as-is (trailing slash trimmed). Mutually exclusive with ",[223,893,894],{},"baseUrl",[490,896,897,901,905,910],{},[505,898,899],{},[223,900,894],{},[505,902,903],{},[223,904,833],{},[505,906,907],{},[223,908,909],{},"https://api.axiom.co",[505,911,912,913,916,917],{},"API base URL (",[223,914,915],{},"/v1/datasets/{dataset}/ingest","), mutually exclusive with ",[223,918,878],{},[490,920,921,926,931,936],{},[505,922,923],{},[223,924,925],{},"timeout",[505,927,928],{},[223,929,930],{},"number",[505,932,933],{},[223,934,935],{},"5000",[505,937,938],{},"Request timeout in milliseconds",[208,940,942],{"id":941},"querying-logs-in-axiom","Querying Logs in Axiom",[198,944,945],{},"evlog sends structured wide events that are perfect for Axiom's APL query language:",[215,947,951],{"className":948,"code":949,"language":950,"meta":221,"style":221},"language-apl shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","// Find slow requests\n['your-dataset']\n| where duration > 1000\n| project timestamp, path, duration, status\n\n// Error rate by endpoint\n['your-dataset']\n| where level == \"error\"\n| summarize count() by path\n| order by count_ desc\n\n// Request volume over time\n['your-dataset']\n| summarize count() by bin(timestamp, 1h)\n| render timechart\n","apl",[223,952,953,958,963,968,973,977,982,986,991,997,1003,1008,1014,1019,1025],{"__ignoreMap":221},[226,954,955],{"class":228,"line":229},[226,956,957],{},"// Find slow requests\n",[226,959,960],{"class":228,"line":309},[226,961,962],{},"['your-dataset']\n",[226,964,965],{"class":228,"line":353},[226,966,967],{},"| where duration > 1000\n",[226,969,970],{"class":228,"line":385},[226,971,972],{},"| project timestamp, path, duration, status\n",[226,974,975],{"class":228,"line":421},[226,976,350],{"emptyLinePlaceholder":349},[226,978,979],{"class":228,"line":653},[226,980,981],{},"// Error rate by endpoint\n",[226,983,984],{"class":228,"line":659},[226,985,962],{},[226,987,988],{"class":228,"line":665},[226,989,990],{},"| where level == \"error\"\n",[226,992,994],{"class":228,"line":993},9,[226,995,996],{},"| summarize count() by path\n",[226,998,1000],{"class":228,"line":999},10,[226,1001,1002],{},"| order by count_ desc\n",[226,1004,1006],{"class":228,"line":1005},11,[226,1007,350],{"emptyLinePlaceholder":349},[226,1009,1011],{"class":228,"line":1010},12,[226,1012,1013],{},"// Request volume over time\n",[226,1015,1017],{"class":228,"line":1016},13,[226,1018,962],{},[226,1020,1022],{"class":228,"line":1021},14,[226,1023,1024],{},"| summarize count() by bin(timestamp, 1h)\n",[226,1026,1028],{"class":228,"line":1027},15,[226,1029,1030],{},"| render timechart\n",[208,1032,1034],{"id":1033},"troubleshooting","Troubleshooting",[262,1036,1038],{"id":1037},"missing-dataset-or-token-error","Missing dataset or token error",[215,1040,1045],{"className":1041,"code":1043,"language":1044},[1042],"language-text","[evlog/axiom] Missing dataset or token. Set NUXT_AXIOM_DATASET and NUXT_AXIOM_TOKEN\n","text",[223,1046,1043],{"__ignoreMap":221},[198,1048,1049],{},"Make sure your environment variables are set and the server was restarted after adding them.",[262,1051,1053],{"id":1052},"_401-unauthorized","401 Unauthorized",[198,1055,1056,1057,1060],{},"Your token may be invalid or expired. Generate a new token in the Axiom dashboard with ",[443,1058,1059],{},"Ingest"," permissions.",[262,1062,1064],{"id":1063},"_403-forbidden-with-pat-tokens","403 Forbidden with PAT tokens",[198,1066,1067],{},"Personal Access Tokens require an organization ID:",[215,1069,1071],{"className":290,"code":1070,"filename":292,"language":293,"meta":221,"style":221},"NUXT_AXIOM_ORG_ID=your-org-id\n",[223,1072,1073],{"__ignoreMap":221},[226,1074,1075,1077,1079],{"class":228,"line":229},[226,1076,527],{"class":240},[226,1078,303],{"class":236},[226,1080,1081],{"class":253},"your-org-id\n",[208,1083,1085],{"id":1084},"direct-api-usage","Direct API Usage",[198,1087,1088],{},"For advanced use cases, you can use the lower-level functions:",[215,1090,1093],{"className":217,"code":1091,"filename":1092,"language":220,"meta":221,"style":221},"import { sendToAxiom, sendBatchToAxiom } from 'evlog/axiom'\n\n// Send a single event\nawait sendToAxiom(event, {\n  token: 'xaat-xxx',\n  dataset: 'logs',\n})\n\n// Send multiple events in one request\nawait sendBatchToAxiom(events, {\n  token: 'xaat-xxx',\n  dataset: 'logs',\n})\n","server/utils/axiom.ts",[223,1094,1095,1119,1123,1128,1142,1158,1174,1180,1184,1189,1202,1216,1230],{"__ignoreMap":221},[226,1096,1097,1099,1101,1104,1106,1109,1111,1113,1115,1117],{"class":228,"line":229},[226,1098,233],{"class":232},[226,1100,237],{"class":236},[226,1102,1103],{"class":240}," sendToAxiom",[226,1105,413],{"class":236},[226,1107,1108],{"class":240}," sendBatchToAxiom",[226,1110,244],{"class":236},[226,1112,247],{"class":232},[226,1114,250],{"class":236},[226,1116,254],{"class":253},[226,1118,257],{"class":236},[226,1120,1121],{"class":228,"line":309},[226,1122,350],{"emptyLinePlaceholder":349},[226,1124,1125],{"class":228,"line":353},[226,1126,1127],{"class":635},"// Send a single event\n",[226,1129,1130,1133,1135,1138,1140],{"class":228,"line":385},[226,1131,1132],{"class":232},"await",[226,1134,1103],{"class":362},[226,1136,1137],{"class":240},"(event",[226,1139,413],{"class":236},[226,1141,382],{"class":236},[226,1143,1144,1147,1149,1151,1154,1156],{"class":228,"line":421},[226,1145,1146],{"class":402},"  token",[226,1148,609],{"class":236},[226,1150,250],{"class":236},[226,1152,1153],{"class":253},"xaat-xxx",[226,1155,405],{"class":236},[226,1157,768],{"class":236},[226,1159,1160,1163,1165,1167,1170,1172],{"class":228,"line":653},[226,1161,1162],{"class":402},"  dataset",[226,1164,609],{"class":236},[226,1166,250],{"class":236},[226,1168,1169],{"class":253},"logs",[226,1171,405],{"class":236},[226,1173,768],{"class":236},[226,1175,1176,1178],{"class":228,"line":659},[226,1177,424],{"class":236},[226,1179,427],{"class":240},[226,1181,1182],{"class":228,"line":665},[226,1183,350],{"emptyLinePlaceholder":349},[226,1185,1186],{"class":228,"line":993},[226,1187,1188],{"class":635},"// Send multiple events in one request\n",[226,1190,1191,1193,1195,1198,1200],{"class":228,"line":999},[226,1192,1132],{"class":232},[226,1194,1108],{"class":362},[226,1196,1197],{"class":240},"(events",[226,1199,413],{"class":236},[226,1201,382],{"class":236},[226,1203,1204,1206,1208,1210,1212,1214],{"class":228,"line":1005},[226,1205,1146],{"class":402},[226,1207,609],{"class":236},[226,1209,250],{"class":236},[226,1211,1153],{"class":253},[226,1213,405],{"class":236},[226,1215,768],{"class":236},[226,1217,1218,1220,1222,1224,1226,1228],{"class":228,"line":1010},[226,1219,1162],{"class":402},[226,1221,609],{"class":236},[226,1223,250],{"class":236},[226,1225,1169],{"class":253},[226,1227,405],{"class":236},[226,1229,768],{"class":236},[226,1231,1232,1234],{"class":228,"line":1016},[226,1233,424],{"class":236},[226,1235,427],{"class":240},[208,1237,1239],{"id":1238},"next-steps","Next Steps",[1241,1242,1243,1249,1255,1260],"ul",{},[270,1244,1245,1248],{},[201,1246,1247],{"href":82},"OTLP Adapter"," - Send logs via OpenTelemetry Protocol",[270,1250,1251,1254],{},[201,1252,1253],{"href":87},"PostHog Adapter"," - Send logs to PostHog",[270,1256,1257,1259],{},[201,1258,101],{"href":102}," - Build your own adapter",[270,1261,1262,1264],{},[201,1263,46],{"href":47}," - Security and production tips",[1266,1267,1268],"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 .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 .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 .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":221,"searchDepth":309,"depth":309,"links":1270},[1271,1272,1277,1283,1284,1289,1290],{"id":210,"depth":309,"text":15},{"id":260,"depth":309,"text":20,"children":1273},[1274,1275,1276],{"id":264,"depth":353,"text":265},{"id":286,"depth":353,"text":287},{"id":320,"depth":353,"text":321},{"id":433,"depth":309,"text":434,"children":1278},[1279,1280,1281,1282],{"id":481,"depth":353,"text":482},{"id":574,"depth":353,"text":575},{"id":672,"depth":353,"text":673},{"id":801,"depth":353,"text":802},{"id":941,"depth":309,"text":942},{"id":1033,"depth":309,"text":1034,"children":1285},[1286,1287,1288],{"id":1037,"depth":353,"text":1038},{"id":1052,"depth":353,"text":1053},{"id":1063,"depth":353,"text":1064},{"id":1084,"depth":309,"text":1085},{"id":1238,"depth":309,"text":1239},"Send wide events to Axiom for powerful querying, dashboards, and alerting. Zero-config setup with environment variables and automatic batching.","md",[1294,1300],{"label":1295,"icon":1296,"to":275,"target":1297,"color":1298,"variant":1299},"Axiom Dashboard","i-lucide-external-link","_blank","neutral","subtle",{"label":1247,"icon":84,"to":82,"color":1298,"variant":1299},{},{"title":76,"icon":79},{"title":193,"description":1291},"0cquPIqt9hmm9R0I8h0cQlsoNOH3_xPavWVCyj9ANPM",[1306,1308],{"title":71,"path":72,"stem":73,"description":1307,"icon":74,"children":-1},"Send your logs to external services with evlog adapters. Built-in support for popular observability platforms and custom destinations.",{"title":81,"path":82,"stem":83,"description":1309,"icon":84,"children":-1},"Send logs via OpenTelemetry Protocol (OTLP) to Grafana, Datadog, Honeycomb, and any compatible backend. Supports gRPC and HTTP transports.",1772901705283]