Skill 76 · Instrument Error Tracking
Subchapter 76.20
references/nuxt-3-7.mdMarkdown4 KBView on GitHub
AI agents: this is one page from PostHog’s docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt (opens in a new tab)
1
Required
Install the PostHog Nuxt module using your package manager:
npm install @posthog/nuxtyarn add @posthog/nuxtpnpm add @posthog/nuxtbun add @posthog/nuxtAdd the module to your nuxt.config.ts file:
nuxt.config.ts
export default defineNuxtConfig({
modules: ['@posthog/nuxt'],
// Enable source maps generation in both vue and nitro
sourcemap: {
client: 'hidden'
},
nitro: {
rollupConfig: {
output: {
Personal API key
Your personal API key will require organization:read and error_tracking:write scopes.
The module will automatically:
2
Optional
Our module if set up as shown above already captures both client and server side exceptions automatically.
To send errors manually on the client side, import it and use the captureException method like this:
Vue
<script>
const { $posthog } = useNuxtApp()
if ($posthog) {
const posthog = $posthog()
posthog.captureException
3
Required
Build your project for production by running the following command:
Terminal
nuxt buildThe PostHog module will automatically generate and upload source maps to PostHog during the build process.
Recommended
Confirm events are being sent to PostHog
Before proceeding, let’s make sure exception events are being captured and sent to PostHog. You should see events appear in the activity feed.

4
Required
Great, you’re capturing exceptions! If you serve minified bundles, the next step is to upload source maps to generate accurate stack traces.
Let’s continue to the next section.
Ask PostHog AI
HelpfulCould be better
On the server side instantiate PostHog using:
server/api/example.js
const runtimeConfig = useRuntimeConfig()
const posthog = new PostHog(
runtimeConfig.public.posthogPublicKey,
{
host: runtimeConfig.public.posthogHost,
}
);
try {
const results = await DB.query.users.findMany()
return results
} catch (error) {
posthog.captureException(error)
}