[{"data":1,"prerenderedAt":2047},["ShallowReactive",2],{"navigation_docs":3,"-adapters-cloud-sentry":454,"-adapters-cloud-sentry-surround":2042},[4,35,159,201,289,352,438],{"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},"Build on top","\u002Fbuild-on-top","5.build-on-top",[294,297,302,307,312,316,321,326,330,334,338,342,347],{"title":41,"path":295,"stem":296,"icon":54},"\u002Fbuild-on-top\u002Foverview","5.build-on-top\u002F0.overview",{"title":298,"path":299,"stem":300,"icon":301},"In-process stream","\u002Fbuild-on-top\u002Fin-process-stream","5.build-on-top\u002F1.in-process-stream","i-lucide-radio-tower",{"title":303,"path":304,"stem":305,"icon":306},"Fanout","\u002Fbuild-on-top\u002Ffanout-and-multi-drain","5.build-on-top\u002F10.fanout-and-multi-drain","i-lucide-share-2",{"title":308,"path":309,"stem":310,"icon":311},"Identity headers","\u002Fbuild-on-top\u002Fidentity-headers","5.build-on-top\u002F11.identity-headers","i-lucide-fingerprint",{"title":313,"path":314,"stem":315,"icon":288},"Custom framework","\u002Fbuild-on-top\u002Fcustom-framework","5.build-on-top\u002F12.custom-framework",{"title":317,"path":318,"stem":319,"icon":320},"Stream server","\u002Fbuild-on-top\u002Fstream-server","5.build-on-top\u002F2.stream-server","i-lucide-radio",{"title":322,"path":323,"stem":324,"icon":325},"FS reader","\u002Fbuild-on-top\u002Ffs-reader","5.build-on-top\u002F3.fs-reader","i-lucide-folder-search",{"title":156,"path":327,"stem":328,"icon":329},"\u002Fbuild-on-top\u002Fconsumer-recipes","5.build-on-top\u002F4.consumer-recipes","i-lucide-chef-hat",{"title":331,"path":332,"stem":333,"icon":288},"Plugins","\u002Fbuild-on-top\u002Fplugins","5.build-on-top\u002F5.plugins",{"title":335,"path":336,"stem":337,"icon":28},"Custom enrichers","\u002Fbuild-on-top\u002Fcustom-enrichers","5.build-on-top\u002F6.custom-enrichers",{"title":339,"path":340,"stem":341,"icon":178},"Tail sampling","\u002Fbuild-on-top\u002Ftail-sampling","5.build-on-top\u002F7.tail-sampling",{"title":343,"path":344,"stem":345,"icon":346},"Custom drains","\u002Fbuild-on-top\u002Fcustom-drains","5.build-on-top\u002F8.custom-drains","i-lucide-code-2",{"title":348,"path":349,"stem":350,"icon":351},"Drain pipeline","\u002Fbuild-on-top\u002Fdrain-pipeline","5.build-on-top\u002F9.drain-pipeline","i-lucide-workflow",{"title":353,"path":354,"stem":355,"children":356,"page":34},"Adapters","\u002Fadapters","6.adapters",[357,360,400,415],{"title":41,"path":358,"stem":359,"icon":44},"\u002Fadapters\u002Foverview","6.adapters\u002F01.overview",{"title":361,"path":362,"stem":363,"children":364,"page":34},"Cloud destinations","\u002Fadapters\u002Fcloud","6.adapters\u002F02.cloud",[365,370,375,380,385,390,395],{"title":366,"path":367,"stem":368,"icon":369},"Axiom","\u002Fadapters\u002Fcloud\u002Faxiom","6.adapters\u002F02.cloud\u002F01.axiom","i-custom-axiom",{"title":371,"path":372,"stem":373,"icon":374},"OTLP","\u002Fadapters\u002Fcloud\u002Fotlp","6.adapters\u002F02.cloud\u002F02.otlp","i-simple-icons-opentelemetry",{"title":376,"path":377,"stem":378,"icon":379},"PostHog","\u002Fadapters\u002Fcloud\u002Fposthog","6.adapters\u002F02.cloud\u002F03.posthog","i-simple-icons-posthog",{"title":381,"path":382,"stem":383,"icon":384},"Sentry","\u002Fadapters\u002Fcloud\u002Fsentry","6.adapters\u002F02.cloud\u002F04.sentry","i-simple-icons-sentry",{"title":386,"path":387,"stem":388,"icon":389},"Better Stack","\u002Fadapters\u002Fcloud\u002Fbetter-stack","6.adapters\u002F02.cloud\u002F05.better-stack","i-simple-icons-betterstack",{"title":391,"path":392,"stem":393,"icon":394},"Datadog","\u002Fadapters\u002Fcloud\u002Fdatadog","6.adapters\u002F02.cloud\u002F06.datadog","i-simple-icons-datadog",{"title":396,"path":397,"stem":398,"icon":399},"HyperDX","\u002Fadapters\u002Fcloud\u002Fhyperdx","6.adapters\u002F02.cloud\u002F07.hyperdx","i-custom-hyperdx",{"title":401,"path":402,"stem":403,"children":404,"page":34},"Self-hosted","\u002Fadapters\u002Fself-hosted","6.adapters\u002F03.self-hosted",[405,410],{"title":406,"path":407,"stem":408,"icon":409},"File System","\u002Fadapters\u002Fself-hosted\u002Ffs","6.adapters\u002F03.self-hosted\u002F01.fs","i-lucide-hard-drive",{"title":411,"path":412,"stem":413,"icon":414},"NuxtHub","\u002Fadapters\u002Fself-hosted\u002Fnuxthub","6.adapters\u002F03.self-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":416,"path":417,"stem":418,"children":419,"page":34},"Building blocks","\u002Fadapters\u002Fbuilding-blocks","6.adapters\u002F04.building-blocks",[420,424,429,433],{"title":421,"path":422,"stem":423,"icon":351},"Pipeline","\u002Fadapters\u002Fbuilding-blocks\u002Fpipeline","6.adapters\u002F04.building-blocks\u002F01.pipeline",{"title":425,"path":426,"stem":427,"icon":428},"HTTP","\u002Fadapters\u002Fbuilding-blocks\u002Fhttp","6.adapters\u002F04.building-blocks\u002F02.http","i-lucide-globe",{"title":430,"path":431,"stem":432,"icon":83},"Custom Adapters","\u002Fadapters\u002Fbuilding-blocks\u002Fcustom","6.adapters\u002F04.building-blocks\u002F03.custom",{"title":434,"path":435,"stem":436,"icon":437},"Toolkit","\u002Fadapters\u002Fbuilding-blocks\u002Ftoolkit","6.adapters\u002F04.building-blocks\u002F04.toolkit","i-lucide-blocks",{"title":439,"path":440,"stem":441,"children":442,"page":34},"Enrichers","\u002Fenrichers","7.enrichers",[443,446,450],{"title":41,"path":444,"stem":445,"icon":28},"\u002Fenrichers\u002Foverview","7.enrichers\u002F1.overview",{"title":447,"path":448,"stem":449,"icon":288},"Built-in","\u002Fenrichers\u002Fbuilt-in","7.enrichers\u002F2.built-in",{"title":451,"path":452,"stem":453,"icon":83},"Custom","\u002Fenrichers\u002Fcustom","7.enrichers\u002F3.custom",{"id":455,"title":456,"body":457,"description":2028,"extension":2029,"links":2030,"meta":2038,"navigation":2039,"path":382,"seo":2040,"stem":383,"__hash__":2041},"docs\u002F6.adapters\u002F02.cloud\u002F04.sentry.md","Sentry Adapter",{"type":458,"value":459,"toc":2005},"minimark",[460,479,521,525,528,572,575,580,602,606,625,629,1208,1214,1217,1220,1254,1258,1325,1329,1336,1459,1463,1466,1547,1551,1658,1662,1668,1755,1759,1762,1791,1795,1799,1803,1812,1815,1819,1822,1829,1833,1839,1843,1846,1972,1976,2001],[461,462,463,469,470,474,475,478],"p",{},[464,465,381],"a",{"href":466,"rel":467},"https:\u002F\u002Fsentry.io",[468],"nofollow"," is an error tracking and performance monitoring platform. The evlog Sentry adapter sends your wide events as ",[471,472,473],"strong",{},"Sentry Structured Logs",", visible in ",[471,476,477],{},"Explore > Logs"," in the Sentry dashboard with high-cardinality searchable attributes.",[480,481,484,487,509],"prompt",{":actions":482,"description":483,"icon":384},"[\"copy\",\"cursor\",\"windsurf\"]","Add the Sentry drain adapter",[461,485,486],{},"Add the Sentry drain adapter to send evlog wide events to Sentry Logs.",[488,489,490,494,497,500,503,506],"ol",{},[491,492,493],"li",{},"Identify which framework I'm using and follow its evlog integration pattern",[491,495,496],{},"Install evlog if not already installed",[491,498,499],{},"Import createSentryDrain from 'evlog\u002Fsentry'",[491,501,502],{},"Wire createSentryDrain() into my framework's drain configuration",[491,504,505],{},"Set SENTRY_DSN environment variable",[491,507,508],{},"Test by triggering a request and checking Sentry > Explore > Logs",[461,510,511,512,516,517],{},"Adapter docs: ",[464,513,514],{"href":514,"rel":515},"https:\u002F\u002Fwww.evlog.dev\u002Fadapters\u002Fcloud\u002Fsentry",[468],"\nFramework setup: ",[464,518,519],{"href":519,"rel":520},"https:\u002F\u002Fwww.evlog.dev\u002Fframeworks",[468],[522,523,15],"h2",{"id":524},"installation",[461,526,527],{},"The Sentry adapter comes bundled with evlog:",[529,530,536],"pre",{"className":531,"code":532,"filename":533,"language":534,"meta":535,"style":535},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { createSentryDrain } from 'evlog\u002Fsentry'\n","src\u002Findex.ts","typescript","",[537,538,539],"code",{"__ignoreMap":535},[540,541,544,548,552,556,559,562,565,569],"span",{"class":542,"line":543},"line",1,[540,545,547],{"class":546},"s7zQu","import",[540,549,551],{"class":550},"sMK4o"," {",[540,553,555],{"class":554},"sTEyZ"," createSentryDrain",[540,557,558],{"class":550}," }",[540,560,561],{"class":546}," from",[540,563,564],{"class":550}," '",[540,566,568],{"class":567},"sfazB","evlog\u002Fsentry",[540,570,571],{"class":550},"'\n",[522,573,20],{"id":574},"quick-start",[576,577,579],"h3",{"id":578},"_1-get-your-sentry-dsn","1. Get your Sentry DSN",[488,581,582,589,592],{},[491,583,584,585],{},"Create a ",[464,586,588],{"href":466,"rel":587},[468],"Sentry account",[491,590,591],{},"Create a new project (Node.js or JavaScript)",[491,593,594,595],{},"Find your DSN in ",[471,596,597,598,601],{},"Settings > Projects > ",[540,599,600],{},"Your Project"," > Client Keys (DSN)",[576,603,605],{"id":604},"_2-set-environment-variables","2. Set environment variables",[529,607,612],{"className":608,"code":609,"filename":610,"language":611,"meta":535,"style":535},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","SENTRY_DSN=https:\u002F\u002Fyour-public-key@o0.ingest.sentry.io\u002Fyour-project-id\n",".env","bash",[537,613,614],{"__ignoreMap":535},[540,615,616,619,622],{"class":542,"line":543},[540,617,618],{"class":554},"SENTRY_DSN",[540,620,621],{"class":550},"=",[540,623,624],{"class":567},"https:\u002F\u002Fyour-public-key@o0.ingest.sentry.io\u002Fyour-project-id\n",[576,626,628],{"id":627},"_3-wire-the-drain-to-your-framework","3. Wire the drain to your framework",[630,631,632,747,878,940,994,1053,1107,1160],"code-group",{},[529,633,636],{"className":531,"code":634,"filename":635,"language":534,"meta":535,"style":535},"\u002F\u002F server\u002Fplugins\u002Fevlog-drain.ts\nimport { createSentryDrain } from 'evlog\u002Fsentry'\n\nexport default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('evlog:drain', createSentryDrain())\n})\n","Nuxt \u002F Nitro",[537,637,638,644,663,670,702,738],{"__ignoreMap":535},[540,639,640],{"class":542,"line":543},[540,641,643],{"class":642},"sHwdD","\u002F\u002F server\u002Fplugins\u002Fevlog-drain.ts\n",[540,645,647,649,651,653,655,657,659,661],{"class":542,"line":646},2,[540,648,547],{"class":546},[540,650,551],{"class":550},[540,652,555],{"class":554},[540,654,558],{"class":550},[540,656,561],{"class":546},[540,658,564],{"class":550},[540,660,568],{"class":567},[540,662,571],{"class":550},[540,664,666],{"class":542,"line":665},3,[540,667,669],{"emptyLinePlaceholder":668},true,"\n",[540,671,673,676,679,683,686,688,692,695,699],{"class":542,"line":672},4,[540,674,675],{"class":546},"export",[540,677,678],{"class":546}," default",[540,680,682],{"class":681},"s2Zo4"," defineNitroPlugin",[540,684,685],{"class":554},"(",[540,687,685],{"class":550},[540,689,691],{"class":690},"sHdIc","nitroApp",[540,693,694],{"class":550},")",[540,696,698],{"class":697},"spNyl"," =>",[540,700,701],{"class":550}," {\n",[540,703,705,708,711,714,716,719,722,725,728,730,733,735],{"class":542,"line":704},5,[540,706,707],{"class":554},"  nitroApp",[540,709,710],{"class":550},".",[540,712,713],{"class":554},"hooks",[540,715,710],{"class":550},[540,717,718],{"class":681},"hook",[540,720,685],{"class":721},"swJcz",[540,723,724],{"class":550},"'",[540,726,727],{"class":567},"evlog:drain",[540,729,724],{"class":550},[540,731,732],{"class":550},",",[540,734,555],{"class":681},[540,736,737],{"class":721},"())\n",[540,739,741,744],{"class":542,"line":740},6,[540,742,743],{"class":550},"}",[540,745,746],{"class":554},")\n",[529,748,750],{"className":531,"code":749,"filename":216,"language":534,"meta":535,"style":535},"\u002F\u002F lib\u002Fevlog.ts\nimport { createEvlog } from 'evlog\u002Fnext'\nimport { createSentryDrain } from 'evlog\u002Fsentry'\n\nexport const { withEvlog, useLogger, log, createError } = createEvlog({\n  service: 'my-app',\n  drain: createSentryDrain(),\n})\n",[537,751,752,757,777,795,799,838,856,871],{"__ignoreMap":535},[540,753,754],{"class":542,"line":543},[540,755,756],{"class":642},"\u002F\u002F lib\u002Fevlog.ts\n",[540,758,759,761,763,766,768,770,772,775],{"class":542,"line":646},[540,760,547],{"class":546},[540,762,551],{"class":550},[540,764,765],{"class":554}," createEvlog",[540,767,558],{"class":550},[540,769,561],{"class":546},[540,771,564],{"class":550},[540,773,774],{"class":567},"evlog\u002Fnext",[540,776,571],{"class":550},[540,778,779,781,783,785,787,789,791,793],{"class":542,"line":665},[540,780,547],{"class":546},[540,782,551],{"class":550},[540,784,555],{"class":554},[540,786,558],{"class":550},[540,788,561],{"class":546},[540,790,564],{"class":550},[540,792,568],{"class":567},[540,794,571],{"class":550},[540,796,797],{"class":542,"line":672},[540,798,669],{"emptyLinePlaceholder":668},[540,800,801,803,806,808,811,813,816,818,821,823,826,828,831,833,835],{"class":542,"line":704},[540,802,675],{"class":546},[540,804,805],{"class":697}," const",[540,807,551],{"class":550},[540,809,810],{"class":554}," withEvlog",[540,812,732],{"class":550},[540,814,815],{"class":554}," useLogger",[540,817,732],{"class":550},[540,819,820],{"class":554}," log",[540,822,732],{"class":550},[540,824,825],{"class":554}," createError ",[540,827,743],{"class":550},[540,829,830],{"class":550}," =",[540,832,765],{"class":681},[540,834,685],{"class":554},[540,836,837],{"class":550},"{\n",[540,839,840,843,846,848,851,853],{"class":542,"line":740},[540,841,842],{"class":721},"  service",[540,844,845],{"class":550},":",[540,847,564],{"class":550},[540,849,850],{"class":567},"my-app",[540,852,724],{"class":550},[540,854,855],{"class":550},",\n",[540,857,859,862,864,866,869],{"class":542,"line":858},7,[540,860,861],{"class":721},"  drain",[540,863,845],{"class":550},[540,865,555],{"class":681},[540,867,868],{"class":554},"()",[540,870,855],{"class":550},[540,872,874,876],{"class":542,"line":873},8,[540,875,743],{"class":550},[540,877,746],{"class":554},[529,879,881],{"className":531,"code":880,"filename":246,"language":534,"meta":535,"style":535},"import { createSentryDrain } from 'evlog\u002Fsentry'\n\napp.use(evlog({ drain: createSentryDrain() }))\n",[537,882,883,901,905],{"__ignoreMap":535},[540,884,885,887,889,891,893,895,897,899],{"class":542,"line":543},[540,886,547],{"class":546},[540,888,551],{"class":550},[540,890,555],{"class":554},[540,892,558],{"class":550},[540,894,561],{"class":546},[540,896,564],{"class":550},[540,898,568],{"class":567},[540,900,571],{"class":550},[540,902,903],{"class":542,"line":646},[540,904,669],{"emptyLinePlaceholder":668},[540,906,907,910,912,915,917,920,922,925,928,930,932,935,937],{"class":542,"line":665},[540,908,909],{"class":554},"app",[540,911,710],{"class":550},[540,913,914],{"class":681},"use",[540,916,685],{"class":554},[540,918,919],{"class":681},"evlog",[540,921,685],{"class":554},[540,923,924],{"class":550},"{",[540,926,927],{"class":721}," drain",[540,929,845],{"class":550},[540,931,555],{"class":681},[540,933,934],{"class":554},"() ",[540,936,743],{"class":550},[540,938,939],{"class":554},"))\n",[529,941,942],{"className":531,"code":880,"filename":241,"language":534,"meta":535,"style":535},[537,943,944,962,966],{"__ignoreMap":535},[540,945,946,948,950,952,954,956,958,960],{"class":542,"line":543},[540,947,547],{"class":546},[540,949,551],{"class":550},[540,951,555],{"class":554},[540,953,558],{"class":550},[540,955,561],{"class":546},[540,957,564],{"class":550},[540,959,568],{"class":567},[540,961,571],{"class":550},[540,963,964],{"class":542,"line":646},[540,965,669],{"emptyLinePlaceholder":668},[540,967,968,970,972,974,976,978,980,982,984,986,988,990,992],{"class":542,"line":665},[540,969,909],{"class":554},[540,971,710],{"class":550},[540,973,914],{"class":681},[540,975,685],{"class":554},[540,977,919],{"class":681},[540,979,685],{"class":554},[540,981,924],{"class":550},[540,983,927],{"class":721},[540,985,845],{"class":550},[540,987,555],{"class":681},[540,989,934],{"class":554},[540,991,743],{"class":550},[540,993,939],{"class":554},[529,995,997],{"className":531,"code":996,"filename":251,"language":534,"meta":535,"style":535},"import { createSentryDrain } from 'evlog\u002Fsentry'\n\nawait app.register(evlog, { drain: createSentryDrain() })\n",[537,998,999,1017,1021],{"__ignoreMap":535},[540,1000,1001,1003,1005,1007,1009,1011,1013,1015],{"class":542,"line":543},[540,1002,547],{"class":546},[540,1004,551],{"class":550},[540,1006,555],{"class":554},[540,1008,558],{"class":550},[540,1010,561],{"class":546},[540,1012,564],{"class":550},[540,1014,568],{"class":567},[540,1016,571],{"class":550},[540,1018,1019],{"class":542,"line":646},[540,1020,669],{"emptyLinePlaceholder":668},[540,1022,1023,1026,1029,1031,1034,1037,1039,1041,1043,1045,1047,1049,1051],{"class":542,"line":665},[540,1024,1025],{"class":546},"await",[540,1027,1028],{"class":554}," app",[540,1030,710],{"class":550},[540,1032,1033],{"class":681},"register",[540,1035,1036],{"class":554},"(evlog",[540,1038,732],{"class":550},[540,1040,551],{"class":550},[540,1042,927],{"class":721},[540,1044,845],{"class":550},[540,1046,555],{"class":681},[540,1048,934],{"class":554},[540,1050,743],{"class":550},[540,1052,746],{"class":554},[529,1054,1055],{"className":531,"code":880,"filename":256,"language":534,"meta":535,"style":535},[537,1056,1057,1075,1079],{"__ignoreMap":535},[540,1058,1059,1061,1063,1065,1067,1069,1071,1073],{"class":542,"line":543},[540,1060,547],{"class":546},[540,1062,551],{"class":550},[540,1064,555],{"class":554},[540,1066,558],{"class":550},[540,1068,561],{"class":546},[540,1070,564],{"class":550},[540,1072,568],{"class":567},[540,1074,571],{"class":550},[540,1076,1077],{"class":542,"line":646},[540,1078,669],{"emptyLinePlaceholder":668},[540,1080,1081,1083,1085,1087,1089,1091,1093,1095,1097,1099,1101,1103,1105],{"class":542,"line":665},[540,1082,909],{"class":554},[540,1084,710],{"class":550},[540,1086,914],{"class":681},[540,1088,685],{"class":554},[540,1090,919],{"class":681},[540,1092,685],{"class":554},[540,1094,924],{"class":550},[540,1096,927],{"class":721},[540,1098,845],{"class":550},[540,1100,555],{"class":681},[540,1102,934],{"class":554},[540,1104,743],{"class":550},[540,1106,939],{"class":554},[529,1108,1110],{"className":531,"code":1109,"filename":236,"language":534,"meta":535,"style":535},"import { createSentryDrain } from 'evlog\u002Fsentry'\n\nEvlogModule.forRoot({ drain: createSentryDrain() })\n",[537,1111,1112,1130,1134],{"__ignoreMap":535},[540,1113,1114,1116,1118,1120,1122,1124,1126,1128],{"class":542,"line":543},[540,1115,547],{"class":546},[540,1117,551],{"class":550},[540,1119,555],{"class":554},[540,1121,558],{"class":550},[540,1123,561],{"class":546},[540,1125,564],{"class":550},[540,1127,568],{"class":567},[540,1129,571],{"class":550},[540,1131,1132],{"class":542,"line":646},[540,1133,669],{"emptyLinePlaceholder":668},[540,1135,1136,1139,1141,1144,1146,1148,1150,1152,1154,1156,1158],{"class":542,"line":665},[540,1137,1138],{"class":554},"EvlogModule",[540,1140,710],{"class":550},[540,1142,1143],{"class":681},"forRoot",[540,1145,685],{"class":554},[540,1147,924],{"class":550},[540,1149,927],{"class":721},[540,1151,845],{"class":550},[540,1153,555],{"class":681},[540,1155,934],{"class":554},[540,1157,743],{"class":550},[540,1159,746],{"class":554},[529,1161,1163],{"className":531,"code":1162,"filename":271,"language":534,"meta":535,"style":535},"import { createSentryDrain } from 'evlog\u002Fsentry'\n\ninitLogger({ drain: createSentryDrain() })\n",[537,1164,1165,1183,1187],{"__ignoreMap":535},[540,1166,1167,1169,1171,1173,1175,1177,1179,1181],{"class":542,"line":543},[540,1168,547],{"class":546},[540,1170,551],{"class":550},[540,1172,555],{"class":554},[540,1174,558],{"class":550},[540,1176,561],{"class":546},[540,1178,564],{"class":550},[540,1180,568],{"class":567},[540,1182,571],{"class":550},[540,1184,1185],{"class":542,"line":646},[540,1186,669],{"emptyLinePlaceholder":668},[540,1188,1189,1192,1194,1196,1198,1200,1202,1204,1206],{"class":542,"line":665},[540,1190,1191],{"class":681},"initLogger",[540,1193,685],{"class":554},[540,1195,924],{"class":550},[540,1197,927],{"class":721},[540,1199,845],{"class":550},[540,1201,555],{"class":681},[540,1203,934],{"class":554},[540,1205,743],{"class":550},[540,1207,746],{"class":554},[461,1209,1210,1211,1213],{},"That's it! Your logs will now appear in ",[471,1212,477],{}," in Sentry.",[522,1215,170],{"id":1216},"configuration",[461,1218,1219],{},"The adapter reads configuration from multiple sources (highest priority first):",[488,1221,1222,1231,1241],{},[491,1223,1224,1227,1228],{},[471,1225,1226],{},"Overrides"," passed to ",[537,1229,1230],{},"createSentryDrain()",[491,1232,1233,1236,1237,1240],{},[471,1234,1235],{},"Runtime config"," at ",[537,1238,1239],{},"runtimeConfig.sentry"," (Nuxt\u002FNitro only)",[491,1242,1243,1246,1247,1250,1251,694],{},[471,1244,1245],{},"Environment variables"," (",[537,1248,1249],{},"SENTRY_*"," or ",[537,1252,1253],{},"NUXT_SENTRY_*",[576,1255,1257],{"id":1256},"environment-variables","Environment Variables",[1259,1260,1261,1277],"table",{},[1262,1263,1264],"thead",{},[1265,1266,1267,1271,1274],"tr",{},[1268,1269,1270],"th",{},"Variable",[1268,1272,1273],{},"Nuxt alias",[1268,1275,1276],{},"Description",[1278,1279,1280,1295,1310],"tbody",{},[1265,1281,1282,1287,1292],{},[1283,1284,1285],"td",{},[537,1286,618],{},[1283,1288,1289],{},[537,1290,1291],{},"NUXT_SENTRY_DSN",[1283,1293,1294],{},"Sentry DSN (required)",[1265,1296,1297,1302,1307],{},[1283,1298,1299],{},[537,1300,1301],{},"SENTRY_ENVIRONMENT",[1283,1303,1304],{},[537,1305,1306],{},"NUXT_SENTRY_ENVIRONMENT",[1283,1308,1309],{},"Environment name override",[1265,1311,1312,1317,1322],{},[1283,1313,1314],{},[537,1315,1316],{},"SENTRY_RELEASE",[1283,1318,1319],{},[537,1320,1321],{},"NUXT_SENTRY_RELEASE",[1283,1323,1324],{},"Release version override",[576,1326,1328],{"id":1327},"runtime-config-nuxt-only","Runtime Config (Nuxt only)",[461,1330,1331,1332,1335],{},"Configure via ",[537,1333,1334],{},"nuxt.config.ts"," for type-safe configuration:",[529,1337,1339],{"className":531,"code":1338,"filename":1334,"language":534,"meta":535,"style":535},"export default defineNuxtConfig({\n  modules: ['evlog\u002Fnuxt'],\n  evlog: {\n    sentry: {\n      dsn: '', \u002F\u002F Set via NUXT_SENTRY_DSN\n      environment: 'production',\n      release: '1.0.0',\n    },\n  },\n})\n",[537,1340,1341,1354,1376,1385,1394,1409,1425,1441,1446,1452],{"__ignoreMap":535},[540,1342,1343,1345,1347,1350,1352],{"class":542,"line":543},[540,1344,675],{"class":546},[540,1346,678],{"class":546},[540,1348,1349],{"class":681}," defineNuxtConfig",[540,1351,685],{"class":554},[540,1353,837],{"class":550},[540,1355,1356,1359,1361,1364,1366,1369,1371,1374],{"class":542,"line":646},[540,1357,1358],{"class":721},"  modules",[540,1360,845],{"class":550},[540,1362,1363],{"class":554}," [",[540,1365,724],{"class":550},[540,1367,1368],{"class":567},"evlog\u002Fnuxt",[540,1370,724],{"class":550},[540,1372,1373],{"class":554},"]",[540,1375,855],{"class":550},[540,1377,1378,1381,1383],{"class":542,"line":665},[540,1379,1380],{"class":721},"  evlog",[540,1382,845],{"class":550},[540,1384,701],{"class":550},[540,1386,1387,1390,1392],{"class":542,"line":672},[540,1388,1389],{"class":721},"    sentry",[540,1391,845],{"class":550},[540,1393,701],{"class":550},[540,1395,1396,1399,1401,1404,1406],{"class":542,"line":704},[540,1397,1398],{"class":721},"      dsn",[540,1400,845],{"class":550},[540,1402,1403],{"class":550}," ''",[540,1405,732],{"class":550},[540,1407,1408],{"class":642}," \u002F\u002F Set via NUXT_SENTRY_DSN\n",[540,1410,1411,1414,1416,1418,1421,1423],{"class":542,"line":740},[540,1412,1413],{"class":721},"      environment",[540,1415,845],{"class":550},[540,1417,564],{"class":550},[540,1419,1420],{"class":567},"production",[540,1422,724],{"class":550},[540,1424,855],{"class":550},[540,1426,1427,1430,1432,1434,1437,1439],{"class":542,"line":858},[540,1428,1429],{"class":721},"      release",[540,1431,845],{"class":550},[540,1433,564],{"class":550},[540,1435,1436],{"class":567},"1.0.0",[540,1438,724],{"class":550},[540,1440,855],{"class":550},[540,1442,1443],{"class":542,"line":873},[540,1444,1445],{"class":550},"    },\n",[540,1447,1449],{"class":542,"line":1448},9,[540,1450,1451],{"class":550},"  },\n",[540,1453,1455,1457],{"class":542,"line":1454},10,[540,1456,743],{"class":550},[540,1458,746],{"class":554},[576,1460,1462],{"id":1461},"override-options","Override Options",[461,1464,1465],{},"Pass options directly to override any configuration:",[529,1467,1470],{"className":531,"code":1468,"filename":1469,"language":534,"meta":535,"style":535},"const drain = createSentryDrain({\n  dsn: 'https:\u002F\u002Fkey@o0.ingest.sentry.io\u002F123',\n  tags: { team: 'backend' },\n  timeout: 10000,\n})\n","server\u002Fplugins\u002Fevlog-drain.ts",[537,1471,1472,1488,1504,1528,1541],{"__ignoreMap":535},[540,1473,1474,1477,1480,1482,1484,1486],{"class":542,"line":543},[540,1475,1476],{"class":697},"const",[540,1478,1479],{"class":554}," drain ",[540,1481,621],{"class":550},[540,1483,555],{"class":681},[540,1485,685],{"class":554},[540,1487,837],{"class":550},[540,1489,1490,1493,1495,1497,1500,1502],{"class":542,"line":646},[540,1491,1492],{"class":721},"  dsn",[540,1494,845],{"class":550},[540,1496,564],{"class":550},[540,1498,1499],{"class":567},"https:\u002F\u002Fkey@o0.ingest.sentry.io\u002F123",[540,1501,724],{"class":550},[540,1503,855],{"class":550},[540,1505,1506,1509,1511,1513,1516,1518,1520,1523,1525],{"class":542,"line":665},[540,1507,1508],{"class":721},"  tags",[540,1510,845],{"class":550},[540,1512,551],{"class":550},[540,1514,1515],{"class":721}," team",[540,1517,845],{"class":550},[540,1519,564],{"class":550},[540,1521,1522],{"class":567},"backend",[540,1524,724],{"class":550},[540,1526,1527],{"class":550}," },\n",[540,1529,1530,1533,1535,1539],{"class":542,"line":672},[540,1531,1532],{"class":721},"  timeout",[540,1534,845],{"class":550},[540,1536,1538],{"class":1537},"sbssI"," 10000",[540,1540,855],{"class":550},[540,1542,1543,1545],{"class":542,"line":704},[540,1544,743],{"class":550},[540,1546,746],{"class":554},[576,1548,1550],{"id":1549},"full-configuration-reference","Full Configuration Reference",[1259,1552,1553,1568],{},[1262,1554,1555],{},[1265,1556,1557,1560,1563,1566],{},[1268,1558,1559],{},"Option",[1268,1561,1562],{},"Type",[1268,1564,1565],{},"Default",[1268,1567,1276],{},[1278,1569,1570,1587,1604,1621,1638],{},[1265,1571,1572,1577,1582,1585],{},[1283,1573,1574],{},[537,1575,1576],{},"dsn",[1283,1578,1579],{},[537,1580,1581],{},"string",[1283,1583,1584],{},"-",[1283,1586,1294],{},[1265,1588,1589,1594,1598,1601],{},[1283,1590,1591],{},[537,1592,1593],{},"environment",[1283,1595,1596],{},[537,1597,1581],{},[1283,1599,1600],{},"Event environment",[1283,1602,1603],{},"Environment name",[1265,1605,1606,1611,1615,1618],{},[1283,1607,1608],{},[537,1609,1610],{},"release",[1283,1612,1613],{},[537,1614,1581],{},[1283,1616,1617],{},"Event version",[1283,1619,1620],{},"Release version",[1265,1622,1623,1628,1633,1635],{},[1283,1624,1625],{},[537,1626,1627],{},"tags",[1283,1629,1630],{},[537,1631,1632],{},"Record\u003Cstring, string>",[1283,1634,1584],{},[1283,1636,1637],{},"Additional attributes to attach",[1265,1639,1640,1645,1650,1655],{},[1283,1641,1642],{},[537,1643,1644],{},"timeout",[1283,1646,1647],{},[537,1648,1649],{},"number",[1283,1651,1652],{},[537,1653,1654],{},"5000",[1283,1656,1657],{},"Request timeout in milliseconds",[522,1659,1661],{"id":1660},"log-transformation","Log Transformation",[461,1663,1664,1665,845],{},"evlog wide events are converted to Sentry Logs using ",[537,1666,1667],{},"toSentryLog()",[1669,1670,1671,1690,1708,1725,1731,1745],"ul",{},[491,1672,1673,1676,1677,1680,1681,1680,1684,1680,1687,694],{},[471,1674,1675],{},"Level mapping",": evlog levels map directly (",[537,1678,1679],{},"debug",", ",[537,1682,1683],{},"info",[537,1685,1686],{},"warn",[537,1688,1689],{},"error",[491,1691,1692,1695,1696,1680,1699,1680,1702,1680,1705,694],{},[471,1693,1694],{},"Severity numbers",": Follow the OpenTelemetry spec (",[537,1697,1698],{},"debug=5",[537,1700,1701],{},"info=9",[537,1703,1704],{},"warn=13",[537,1706,1707],{},"error=17",[491,1709,1710,1713,1714,1680,1717,1720,1721,1724],{},[471,1711,1712],{},"Body",": Derived from the event's ",[537,1715,1716],{},"message",[537,1718,1719],{},"action",", or ",[537,1722,1723],{},"path"," fields (first available)",[491,1726,1727,1730],{},[471,1728,1729],{},"Attributes",": All wide event fields are sent as typed attributes (string, integer, double, boolean). Complex objects are serialized to JSON strings.",[491,1732,1733,1736,1737,1740,1741,1744],{},[471,1734,1735],{},"Sentry attributes",": ",[537,1738,1739],{},"sentry.environment"," and ",[537,1742,1743],{},"sentry.release"," are set automatically",[491,1746,1747,1750,1751,1754],{},[471,1748,1749],{},"Trace ID",": Uses ",[537,1752,1753],{},"event.traceId"," if available, otherwise generates a random one",[522,1756,1758],{"id":1757},"querying-logs-in-sentry","Querying Logs in Sentry",[461,1760,1761],{},"evlog sends wide events as structured logs. In the Sentry dashboard:",[1669,1763,1764,1769,1781],{},[491,1765,1766,1768],{},[471,1767,477],{},": View all evlog wide events with full attribute search",[491,1770,1771,1736,1774,1680,1777,1780],{},[471,1772,1773],{},"Filter by attributes",[537,1775,1776],{},"service:my-app",[537,1778,1779],{},"level:error",", or any wide event field",[491,1782,1783,1786,1787,1790],{},[471,1784,1785],{},"Trace correlation",": Logs are linked to traces via ",[537,1788,1789],{},"trace_id"," for cross-referencing",[1792,1793,1794],"callout",{"color":1683,"icon":13},"Sentry Structured Logs support high-cardinality attributes, making them a great fit for evlog's wide events. Every field in your wide event becomes a searchable attribute in Sentry.",[522,1796,1798],{"id":1797},"troubleshooting","Troubleshooting",[576,1800,1802],{"id":1801},"missing-dsn-error","Missing DSN error",[529,1804,1810],{"className":1805,"code":1807,"filename":1808,"language":1809,"meta":535},[1806],"language-text","[evlog\u002Fsentry] Missing DSN. Set SENTRY_DSN env var or pass to createSentryDrain()\n","Console","text",[537,1811,1807],{"__ignoreMap":535},[461,1813,1814],{},"Make sure your environment variable is set and the server was restarted after adding it.",[576,1816,1818],{"id":1817},"invalid-dsn","Invalid DSN",[461,1820,1821],{},"If the DSN is malformed (missing public key or project ID), the adapter will throw an error. Verify your DSN format:",[529,1823,1827],{"className":1824,"code":1825,"filename":1826,"language":1809,"meta":535},[1806],"https:\u002F\u002F\u003Cpublic-key>@\u003Chost>\u002F\u003Cproject-id>\n","Sentry DSN format",[537,1828,1825],{"__ignoreMap":535},[576,1830,1832],{"id":1831},"_401-unauthorized","401 Unauthorized",[461,1834,1835,1836,710],{},"Your DSN may be revoked or invalid. Generate a new DSN in ",[471,1837,1838],{},"Settings > Projects > Client Keys (DSN)",[522,1840,1842],{"id":1841},"direct-api-usage","Direct API Usage",[461,1844,1845],{},"For advanced use cases, you can use the lower-level functions:",[529,1847,1850],{"className":531,"code":1848,"filename":1849,"language":534,"meta":535,"style":535},"import { sendToSentry, sendBatchToSentry } from 'evlog\u002Fsentry'\n\n\u002F\u002F Send a single event as a Sentry log\nawait sendToSentry(event, {\n  dsn: process.env.SENTRY_DSN!,\n})\n\n\u002F\u002F Send multiple events in one request\nawait sendBatchToSentry(events, {\n  dsn: process.env.SENTRY_DSN!,\n})\n","server\u002Futils\u002Fsentry.ts",[537,1851,1852,1876,1880,1885,1898,1919,1925,1929,1934,1947,1965],{"__ignoreMap":535},[540,1853,1854,1856,1858,1861,1863,1866,1868,1870,1872,1874],{"class":542,"line":543},[540,1855,547],{"class":546},[540,1857,551],{"class":550},[540,1859,1860],{"class":554}," sendToSentry",[540,1862,732],{"class":550},[540,1864,1865],{"class":554}," sendBatchToSentry",[540,1867,558],{"class":550},[540,1869,561],{"class":546},[540,1871,564],{"class":550},[540,1873,568],{"class":567},[540,1875,571],{"class":550},[540,1877,1878],{"class":542,"line":646},[540,1879,669],{"emptyLinePlaceholder":668},[540,1881,1882],{"class":542,"line":665},[540,1883,1884],{"class":642},"\u002F\u002F Send a single event as a Sentry log\n",[540,1886,1887,1889,1891,1894,1896],{"class":542,"line":672},[540,1888,1025],{"class":546},[540,1890,1860],{"class":681},[540,1892,1893],{"class":554},"(event",[540,1895,732],{"class":550},[540,1897,701],{"class":550},[540,1899,1900,1902,1904,1907,1909,1912,1914,1916],{"class":542,"line":704},[540,1901,1492],{"class":721},[540,1903,845],{"class":550},[540,1905,1906],{"class":554}," process",[540,1908,710],{"class":550},[540,1910,1911],{"class":554},"env",[540,1913,710],{"class":550},[540,1915,618],{"class":554},[540,1917,1918],{"class":550},"!,\n",[540,1920,1921,1923],{"class":542,"line":740},[540,1922,743],{"class":550},[540,1924,746],{"class":554},[540,1926,1927],{"class":542,"line":858},[540,1928,669],{"emptyLinePlaceholder":668},[540,1930,1931],{"class":542,"line":873},[540,1932,1933],{"class":642},"\u002F\u002F Send multiple events in one request\n",[540,1935,1936,1938,1940,1943,1945],{"class":542,"line":1448},[540,1937,1025],{"class":546},[540,1939,1865],{"class":681},[540,1941,1942],{"class":554},"(events",[540,1944,732],{"class":550},[540,1946,701],{"class":550},[540,1948,1949,1951,1953,1955,1957,1959,1961,1963],{"class":542,"line":1454},[540,1950,1492],{"class":721},[540,1952,845],{"class":550},[540,1954,1906],{"class":554},[540,1956,710],{"class":550},[540,1958,1911],{"class":554},[540,1960,710],{"class":550},[540,1962,618],{"class":554},[540,1964,1918],{"class":550},[540,1966,1968,1970],{"class":542,"line":1967},11,[540,1969,743],{"class":550},[540,1971,746],{"class":554},[522,1973,1975],{"id":1974},"next-steps","Next Steps",[1669,1977,1978,1984,1990,1996],{},[491,1979,1980,1983],{},[464,1981,1982],{"href":367},"Axiom Adapter"," - Send logs to Axiom for querying and dashboards",[491,1985,1986,1989],{},[464,1987,1988],{"href":372},"OTLP Adapter"," - Send logs via OpenTelemetry Protocol",[491,1991,1992,1995],{},[464,1993,1994],{"href":377},"PostHog Adapter"," - Send logs to PostHog",[491,1997,1998,2000],{},[464,1999,430],{"href":431}," - Build your own adapter",[2002,2003,2004],"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":535,"searchDepth":646,"depth":646,"links":2006},[2007,2008,2013,2019,2020,2021,2026,2027],{"id":524,"depth":646,"text":15},{"id":574,"depth":646,"text":20,"children":2009},[2010,2011,2012],{"id":578,"depth":665,"text":579},{"id":604,"depth":665,"text":605},{"id":627,"depth":665,"text":628},{"id":1216,"depth":646,"text":170,"children":2014},[2015,2016,2017,2018],{"id":1256,"depth":665,"text":1257},{"id":1327,"depth":665,"text":1328},{"id":1461,"depth":665,"text":1462},{"id":1549,"depth":665,"text":1550},{"id":1660,"depth":646,"text":1661},{"id":1757,"depth":646,"text":1758},{"id":1797,"depth":646,"text":1798,"children":2022},[2023,2024,2025],{"id":1801,"depth":665,"text":1802},{"id":1817,"depth":665,"text":1818},{"id":1831,"depth":665,"text":1832},{"id":1841,"depth":646,"text":1842},{"id":1974,"depth":646,"text":1975},"Send structured logs to Sentry Logs for high-cardinality querying and debugging. Zero-config setup with environment variables.","md",[2031,2037],{"label":2032,"icon":2033,"to":466,"target":2034,"color":2035,"variant":2036},"Sentry Dashboard","i-lucide-external-link","_blank","neutral","subtle",{"label":1988,"icon":374,"to":372,"color":2035,"variant":2036},{},{"title":381,"icon":384},{"title":456,"description":2028},"b8wJXLl61HaMM4ll4tH1NCVkRXui9gKGcvmOo8Sudnk",[2043,2045],{"title":376,"path":377,"stem":378,"description":2044,"icon":379,"children":-1},"Send wide events to PostHog Logs via OTLP for structured log querying, debugging, and observability in your PostHog dashboard.",{"title":386,"path":387,"stem":388,"description":2046,"icon":389,"children":-1},"Send wide events to Better Stack (formerly Logtail) for log management, alerting, and dashboards. Zero-config setup with environment variables.",1778340167213]