Not everything that breaks is an error: a Logs and Next.js story
Blog post from Sentry
Logs play a crucial role in understanding and resolving issues in software development, as demonstrated by a recent bug in a Next.js application powered by AI. While stack traces indicate where an error occurred, they often lack the context needed to determine why it happened. The author discusses an issue where a bot protection feature blocked requests from Firefox and Safari but not from Chrome, due to the AI SDK sending its own user agent string instead of the browser's. By implementing strategic logging with Sentry, the developer was able to identify the discrepancy in user agent strings, which led to a straightforward fix by adjusting Vercel's firewall settings. The experience highlights the importance of logs in capturing the broader context of errors, enabling developers to quickly diagnose and resolve issues by providing a high-cardinality view of attributes like user agent and bot status. The story underscores the value of integrating logging tools like Sentry into the debugging process to enhance observability and streamline troubleshooting.