* Update Next.js and React versions in all packages * Replace onRedirect function with next/link in BillingSessionStatus, since it's no longer cached by default * Remove unused revalidatePath import in billing return page, since it's no longer cached by default * Add Turbopack module aliases to improve development server speed * Converted new Dynamic APIs to be Promise-based * Adjust mobile layout * Use ENABLE_REACT_COMPILER to enable the React Compiler in Next.js 15 * Report Errors using the new onRequestError hook
30 lines
915 B
TypeScript
30 lines
915 B
TypeScript
/**
|
|
* This file is used to register monitoring instrumentation
|
|
* for your Next.js application.
|
|
*/
|
|
import { type Instrumentation } from 'next';
|
|
|
|
export async function register() {
|
|
const { registerMonitoringInstrumentation } = await import(
|
|
'@kit/monitoring/instrumentation'
|
|
);
|
|
|
|
// Register monitoring instrumentation
|
|
// based on the MONITORING_PROVIDER environment variable.
|
|
await registerMonitoringInstrumentation();
|
|
}
|
|
|
|
/**
|
|
* @name onRequestError
|
|
* @description This function is called when an error occurs during the request lifecycle.
|
|
* It is used to capture the error and send it to the monitoring service.
|
|
* @param err
|
|
*/
|
|
export const onRequestError: Instrumentation.onRequestError = async (err) => {
|
|
const { getServerMonitoringService } = await import('@kit/monitoring/server');
|
|
|
|
const service = await getServerMonitoringService();
|
|
|
|
await service.captureException(err as Error);
|
|
};
|